欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux下Hadoop集群搭建

程序员文章站 2024-01-22 09:03:28
...
1、IP分配
    先分配好IP和主机名,三台主机均能上外网,且均能互相ping通即可。
     IP                              主机名
    192.168.189.129       master
    192.168.189.130       slave1
    192.168.189.131       slave2

2、关闭和禁用防火墙(root)
     service iptables status
     service iptables stop
     chkconfig iptables off
     chkconfig --list iptables
     设置/etc/selinux/config文件,将SELINUX设置为disabled。

3、安装java运行环境(root)
     rpm -ivh jdk-8u144-linux-x64.rpm
4、修改主机名和IP地址(root)
     /etc/sysconfig/network  -> HOSTNAME=master
     /etc/hosts 添加IP到主机名解析。

5、配置三个节点之间免密码登录
     5.1登陆master主机,进入.ssh/路径,执行以下命令:
     ssh-keygen -t rsa
     三次回车后,该目录下将会产生id_rsa,id_rsa.pub文件。其他两台主机(slave1, slave2)也使用该方式产生密钥文件。
     5.2将公钥放到authorized_keys里面。
     cat id_rsa.pub >> authorized_keys
     5.3将每台主机生成的公钥都放置到authorized_keys里面,并且三台主机要保持一样。
     5.4每台主机都赋予权限。
     chmod 600 authorized_keys
     5.5至此,免密码登录已经设定完成,注意第一次ssh登录时需要输入密码,再次访问时即可免密码登录。
     5.6其中SSH免密登录配置成功后可能会不生效,请参考以下博客:
     https://blog.csdn.net/lisongjia123/article/details/78513244

6、Hadoop相关配置
     6.1从以下网站
     https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/hadoop-3.1.1上下载hadoop3.1.1压缩包到本地。
     6.2配置环境变量
     vi .bash_profile
     添加以下内容:
     export HADOOP_HOME=/home/xiao/hadoop-3.1.1
     export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
     运行如下命令刷新环境变量
     source .bash_profile
     进行测试是否成功
     hadoop version
Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
     出现以上内容说明测试成功。
     6.3在hadoop目录下创建目录
     cd /home/xiao/hadoop-3.1.1
     mkdir tmp
     mkdir var
     mkdir dfs
     mkdir dfs/name
     mkdir dfs/data
     6.4修改hadoop-env.sh脚本
     vi /home/xiao/hadoop-3.1.1/etc/hadoop/hadoop-env.sh
     添加以下内容
     export JAVA_HOME=/usr/java/jdk1.8.0_144
     export HADOOP_HOME=/home/xiao/hadoop-3.1.1
     export HDFS_NAMENODE_USER=xiao
     export HDFS_DATANODE_USER=xiao
     export HDFS_SECONDARYNAMENODE_USER=xiao
     export YARN_RESOURCEMANAGER_USER=xiao
     export YARN_NODEMANAGER_USER=xiao
     6.5修改core-site.xml配置文件
     vi /home/xiao/hadoop-3.1.1/etc/hadoop/core-site.xml
     在<configuration></configuration>中添加以下内容
     <configuration>
       <property>
         <name>fs.defaultFS</name>
         <value>hdfs://master:9000</value>
       </property>
       <property>
         <name>hadoop.tmp.dir</name>
         <value>/home/xiao/hadoop-3.1.1/tmp</value>
       </property>
     </configuration>
     6.6修改hdfs-site.xml配置文件
     vi /home/xiao/hadoop-3.1.1/etc/hadoop/hdfs-site.xml
     在<configuration></configuration>中添加以下内容
     <configuration>
       <property>
         <name>dfs.name.dir</name>
         <value>/home/xiao/hadoop-3.1.1/dfs/name</value>
       </property>
       <property>
         <name>dfs.data.dir</name>
         <value>/home/xiao/hadoop-3.1.1/dfs/data</value>
       </property>
       <property>
         <name>dfs.namenode.http-address</name>
         <value>master:50070</value>
       </property>
       <property>
         <name>dfs.namenode.secondary.http-address</name>
         <value>master:50090</value>
       </property>
       <property>
         <name>dfs.replication</name>
         <value>2</value>
       </property>
       <property>
         <name>dfs.permissions</name>
         <value>false</value>
       </property>
     </configuration>
     6.7修改mapred-site.xml配置文件
     vi /home/xiao/hadoop-3.1.1/etc/hadoop/mapred-site.xml
     在<configuration></configuration>中添加以下内容
     <configuration>
       <property>
         <name>mapred.job.tracker</name>
         <value>master:49001</value>
       </property>
       <property>
         <name>mapred.local.dir</name>
         <value>/home/xiao/hadoop-3.1.1/var</value>
       </property>
       <property>
         <name>mapreduce.framework.name</name>
         <value>yarn</value>
       </property>
     </configuration>
     6.8在命令行下输入如下命令,并将返回的地址复制,在配置下面的yarn-site.xml时会用到。
     hadoop classpath
     修改yarn-site.xml配置文件
     vi /home/xiao/hadoop-3.1.1/etc/hadoop/yarn-site.xml
     在<configuration></configuration>中添加以下内容
     <configuration>
       <property>
         <name>yarn.resourcemanager.hostname</name>
         <value>master</value>
       </property>
       <property>
         <name>yarn.nodemanager.aux-services</name>
         <value>mapreduce_shuffle</value>
       </property>
       <property>
         <name>yarn.application.classpath</name>
         <value>输入刚才返回的Hadoop classpath路径</value>
       </property>
     </configuration>
     6.9使用scp命令将master下的目录复制到各个从节点的相应位置上,并且记得要刷新环境变量。
     6.10格式化节点
     在master中运行下述命令,格式化节点。
     hdfs namenode -format
     运行之后不报错,并在倒数第五六行有successfully即为格式化节点成功。

7、Hadoop启停
     运行以下命令,启动hadoop集群的服务
     start-all.sh
Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
     没有报错,在三台主机上分别输入jps
Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
     有以上进程说明部署启动成功,在浏览器上就可以访问hdfs的web界面了。在浏览器上输入http://192.168.189.129:8088 (前者为主节点ip地址,后者为hdfs的web进程对应的端口号)。

  • Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
  • 大小: 19.8 KB
  • Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
  • 大小: 12.1 KB
  • Linux下Hadoop集群搭建
            
    
    博客分类: 大数据 linuxhadoop 
  • 大小: 8.4 KB
相关标签: linux hadoop