设为首页 收藏本站
查看: 614|回复: 0

[经验分享] Hadoop环境搭建——集群篇

[复制链接]

尚未签到

发表于 2016-12-5 07:39:12 | 显示全部楼层 |阅读模式
   
  在完成单节点环境搭建的基础上进行集群环境搭建
  单节点搭建:http://vampire1126.iyunv.com/admin/blogs/891693
  流程:
         配置阶段:
                      配置一系列文件
                      在所有slave节点上拷贝master和JobTracker的公钥
                      在JobTracker节点上拷贝master的公钥
   
         运行阶段:
                      启动hadoop
                      跑wordcount
   
   
  集群搭建准备:
           至少两台已完成单节点搭建的机器
         (此例为两台,IP分别是192.168.1.10与192.168.1.11,其中10为master)
   
   
    配置阶段:
  1、配置一系列文件(所有节点上)
               1、配置etc下的hosts文件
                   sudo gedit /etc/hosts
                  (注:打开后将里面的内容全部删除,不删除的话启动时会出现所有slave启动正常,但是master上的DataNode为0,导致系统不能正常运转的情况,全部删除以后添加所有节点的IP和标识符,格式如下
                    192.168.1.10 master
                    192.168.1.11 slave
                    标识符可以随便写,主要是起到一个映射作用)
                2、进入hadoop目录下,配置conf下的masters文件
                    cd /usr/local/hadoop
                    sudo gedit conf/masters
                   (打开后将里面内容清空,然后添加“master”或者master的IP“192.168.1.10”,此处即是hosts中配置的映射,填master或者直接填IP都是一样的)
                3、配置conf下的slaves文件
                    sudo gedit conf/slaves
                   (打开后将里面内容清空,然后添加“slave”或者slave的IP“192.168.1.11”,原因同上)
                4、配置conf下的core-site.xml文件
                    sudo gedit conf/core-site.xml
                   (因为已完成单节点配置,因此只需要修改就行了。打开后将第一个<property>标签中的localhost改为“master”或者master的IP,如下

<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
                   第二个<property>标签,即包含<name>dfs.replication</name>一行的那个,其中的“<value>”表示文件上传到dfs上时的备份个数,此数值不能大于slave即datanode的个数)
  5、配置conf下的hdfs-site.xml文件(此配置在slave节点上可有可无)
                     sudo gedit conf/hdfs-site.xml
                    (打开后在空的<configuration> </configuration>中添加如下配置

<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hdfs/data</value>
</property>
  6、配置conf下的mapred-site.xml文件
                     sudo gedit conf/mapred-site.xml
                    (打开后将<value>标签里的localhost改为JobTracker的IP,因为本例中JobTracker也是master本身,所以将localhost改为“master”或master的IP)
             2、在所有slave节点上拷贝master和JobTracker的公钥
  1、拷贝公钥
                   scp hadoop@master:/home/hadoop/.ssh/id_rsa.pub /home/hadoop/.ssh/master_rsa.pub
                   scp hadoop@master:/home/hadoop/.ssh/id_rsa.pub /home/haddop/.ssh/jobtracker_rsa.pub
                   (注:因为本例中master和JobTracker是同一台机器,所以相当于在master上拷了两次公钥)
                 2、将拷贝的公钥添加到信任列表
                    cat /home/hadoop/.ssh/master_rsa.pub >> /home/hadoop/.ssh/authorized_keys
                    cat /home/hadoop/.ssh/jobtracker_rsa.pub >> /home/hadoop/.ssh/authorized_keys
             3、在JobTracker上拷贝master的公钥
  1、拷贝公钥
                     scp hadoop@master:/home/hadoop/.ssh/id_rsa.pub /home/hadoop/.ssh/master_rsa.pub
                    (注:本例中master和JobTracker是同一台机器,所以相当于自己拷自己的公钥.....囧......)
                 2、添加到信任列表
                     cat /home/hadoop/.ssh/master_rsa.pub >> /home/hadoop/.ssh/authorized_keys
    运行阶段:
             1、启动hadoop
     1、在所有节点上删除/home/hadoop/下的tmp文件夹(包括master节点)
                      sudo rm -r /home/hadoop/tmp
                     (注:tmp文件夹内部存放有NameNode的ID信息,如果ID不一样的话是无法正常连接的,此处的删除操作是为了保证ID的一致性)
                  2、在master上格式化NameNode
                      hadoop namenode -format
                  3、启动hadoop
                      bin/start-all.sh
                  4、查看各节点是否正常启动
                      jps
                     (此语句执行后,slave节点中必须有DataNode,master节点中必须有NameNode,否则启动失败)
                  5、查看整个系统状态
                      hadoop dfsadmin -report
                    (此语句执行后能显示当前连接的slave数,即DataNode数)
              2、跑wordcount
  1、准备测试文件
                      sudo echo "mu ha ha ni da ye da ye da da" > /tmp/test.txt
                  2、将测试文件上传到dfs文件系统
                      hadoop dfs -put /tmp/test.txt multiTest
                     (注:如multiTest目录不存在的话会自动创建)
                  3、执行wordcount
                      hadoop jar hadoop-mapred-examples0.21.0.jar wordcout multiTest result
                     (注:如result目录不存在的话会自动创建)
                  4、查看结果
                      hadoop dfs -cat result/part-r-00000
    至此集群环境搭建完毕~!
  
  补充说明:
              网上文档中说的关于“关闭防火墙”和“关闭安全模式”,我们在实践中并未涉及到,如遇到连接不到datanode的问题,请检查您的hosts文件中是否最上面多出两行,如果是的话请删除,然后重新按照“运行阶段”的步骤来。
         

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-309659-1-1.html 上篇帖子: Hadoop集群环境安装步骤 下篇帖子: hadoop 环境搭建2(转)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表