经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 大数据/云/AI » Hadoop » 查看文章
CentOS6安装各种大数据软件 第四章:Hadoop分布式集群配置
来源:cnblogs  作者:电光闪烁  时间:2019/3/29 9:09:09  对本文有异议

 

1. Hadoop安装包的下载和解压

基于apache原始厂商:https://archive.apache.org/dist/
基于Cloudera厂商的cdh本:http://archiveprimary.cloudera.com/cdh5/cdh/5/,
Cloudera有免费版和企业版,企业版只有试用期,不过cdh大部分功能都是免费的,使用解压命令将hadoop解压的目标文件夹。

 

2. Hadoop分布式集群配置_HDFS

安装HDFS需要修改4个配置文件:hadoop-env.sh,core-site.xml,hdfs-site.xml和slaves

2.1. 在hadoop-env.sh配置文件中配置JAVA_HOME

  1. # The java implementation to use.
  2. export JAVA_HOME=/opt/modules/jdk1.8.0_144

2.2. 在core-site.xml中配置默认的文件系统

  1. <property>
  2. <name>fs.defaultFS</name>
  3. <value>hdfs://spark-node04.ouyang.com:9000</value>
  4. </property>

2.3. 在hdfs-site.xml中配置文件的副本保存数量

  1. <property>
  2. <name>dfs.replication</name>
  3. <value>3</value>
  4. </property>

2.4. 在slaves文件中配置三个datanode的节点的地址

  1. node01.ouyang.com
  2. node02.ouyang.com
  3. node03.ouyang.com

2.5. 将修改好的hadoop发送到其他的服务器上

  1. scp r /export/servers/hadoop-2.7.4/ root@node01.ouyang.com:$PWD

2.6. 格式化HDFS文件系统

首次使用配置安装号HDFS系统之后,需要进行格式化,在Hadoop的namenode服务器的机器的顶级目录执行如下命令: ./bin/hdfs namenode –format

2.7. 启动HDFS

我们现在将一个节点上的HDFS文件系统配置完成和格式化完成了,接下来,我们启动HDFS文件系统
#启动namenode
./sbin/hadoop-daemon.sh start namenode
#启动datanode
./sbin/hadoop-daemon.sh start datanode
#启动之后可以在50070的web界面进行查看

 

3. Hadoop分布式集群配置_YARN

3.1. 在yarn-env.sh中配置JAVA_HOME

  1. # some Java parameters
  2. export JAVA_HOME=/opt/modules/jdk1.8.0_144

3.2. 在mapred-site.xml中配置资源调度框架是yarn

  1. 步骤一:修改mapred-site.xml.templatemapred-site.xml
  2. 步骤二:在mapred-site.xml中配置资源调度框架是yarn
  3. <property>
  4. <name>mapreduce.framework.name</name>
  5. <value>yarn</value>
  6. </property>
  7. 步骤三:在mapred-site.xml中配置配置日志的UI界面(可以不配)
  8. <property>
  9. <name>mapreduce.jobhistory.address</name>
  10. <value>node01.ouyang.com:10020</value>
  11. </property>
  12. <property>
  13. <name>mapreduce.jobhistory.webapp.address</name>
  14. <value>node01.ouyang.com:19888</value>
  15. </property>

3.3. 在yarn-site.xml中设置资源调度的名称

  1. #必配
  2. <!--设置资源调度的名称-->
  3. <property>
  4. <name>yarn.nodemanager.aux-services</name>
  5. <value>mapreduce_shuffle</value>
  6. </property>
  7. #选配
  8. <!--设置resourcemanager的主机名称-->
  9. <property>
  10. <name>yarn.resourcemanager.hostname</name>
  11. <value>spark-node04.ouyang.com</value>
  12. </property>
  13. <!--配置日志聚集-->
  14. <property>
  15. <name>yarn.log-aggregation-enable</name>
  16. <value>true</value>
  17. </property>
  18. <property>
  19. <name>yarn.log-aggregation.retain-seconds</name>
  20. <value>10000</value>
  21. </property>
  22.  
  23. <!--配置resourcemanager的内存大小,保证不至于内存太小导致nodeManager挂掉-->
  24. <property>
  25. <name>yarn.nodemanager.resource.memory-mb</name>
  26. <value>8192</value>
  27. </property>
  28. <!--表示的是可以使用的虚拟cpu个数-->
  29. <property>
  30. <name>yarn.nodemanager.resource.cpu-vcores</name>
  31. <value>4</value>
  32. </property>

3.4. 将修改好的配置文件分发到其他节点

  1. scp -r hadoop/ node03.ouyang.com:$PWD

3.5. 启动yarn

  1. #启动resourcemanager
  2. ./sbin/yarn-daemon.sh start resourcemanager
  3. #启动nodemanager
  4. ./sbin/yarn-daemon.sh start nodemanager
  5. #启动之后可以在8088的web界面进行查看

4. Hadoop环境变量配置

  1. vim /etc/profile
  2. export HADOOP_HOME=/export/server/hadoop-2.7.4
  3. export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  4. source /etc/profile

5. Hadoop的额外配置和集成测试

5.1. 在hdfs-site.xml设置为不检查权限

  1. <property>
  2. <name>dfs.permissions.enabled</name>
  3. <value>true</value>
  4. </property>

5.2. 在core-site.xml配置静态用户和存储目录

  1. <!--配置静态用户-->
  2. <property>
  3. <name>hadoop.http.staticuser.user</name>
  4. <value>root</value>
  5. </property>
  6. <!--修改存储目录-->
  7. <property>
  8. <name>hadoop.tmp.dir</name>
  9. <value>/opt/modules/hadoop-2.7.4/data/tmp</value>
  10. </property>

5.3. 将修改好的配置文件分发到其他目录

scp -r hadoop-2.7.4/ spark-node05.ouyang.com:$PWD
scp -r hadoop-2.7.4/ spark-node06.ouyang.com:$PWD

5.4. 关闭Hadoop的所有应用并重新格式化

在hadoop的sbin目录下执行如下目录:
./stop-all.sh
由于我们修改了namenode的目录,因此,我们需要重新格式化namenode:
bin/hdfs namenode –format
一键启动hadoop的hdfs和yarn服务:
./start-all.sh

5.5. 测试HDFS

#创建目录
bin/hdfs dfs -mkdir -p /user/root/data/
#上传文件
bin/hdfs dfs -put /opt/datas/words.txt /user/root/data/

5.6. YARN集群运行MapReduce程序

cd /export/server/hadoop-2.7.4/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.7.4.jar pi 20 50

6. 配置Hadoop一键启动和停止脚本

  1. #一键启动脚本
  2. echo "Hadoop开始启动"
  3. ssh 192.168.12.121 "source /etc/profile;nohup sh ${HADOOP_HOME}/sbin/start-all.sh >/dev/null 2>&1 &"
  4. echo "Hadoop启动完成"
  5. echo "Hadoop日志记录开始启动"
  6. ssh 192.168.12.121 "source /etc/profile;nohup sh ${HADOOP_HOME}/sbin/mr-jobhistory-daemon.sh start historyserver >/dev/null 2>&1 &"
  7. echo "Hadoop日志记录启动完成"
  8. #一键停止脚本
  9. echo "Hadoop开始停止"
  10. ssh 192.168.12.121 "source /etc/profile;nohup sh ${HADOOP_HOME}/sbin/stop-all.sh >/dev/null 2>&1 &"
  11. echo "Hadoop停止完成"
  12. echo "Hadoop日志记录开始停止"
  13. ssh 192.168.12.121 "source /etc/profile;nohup sh ${HADOOP_HOME}/sbin/mr-jobhistory-daemon.sh stop historyserver >/dev/null 2>&1 &"
  14. echo "Hadoop日志记录停止完成"

 

原文链接:http://www.cnblogs.com/yangshibiao/p/10615667.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号