Hadoop集群安装和配置

痛定思痛。 2022-12-16 06:00 382阅读 0赞

集群规划:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjA3MDQ3Mw_size_16_color_FFFFFF_t_70

集群安装步骤:

一、 在一台机器上上传并解压Hadoop安装包(此处选择主机node01)

1.此处上传用的软件为:SecureCRT 8.3

上传命令:rz -E

2.选择上传的安装包,并将安装包放在一个目录下面便于寻找,此处放在/opt/software目录下。

移动命令: mv hadoop-2.10.1.tar.gz /opt/software

3.解压安装包到某个目录,此处放在/opt/module目录下

解压命令:tar -zxvf hadoop-2.10.1.tar.gz -C /opt/module/

二、修改配置文件

1.修改core-site.xml文件

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

修改core-site.xml配置文件,可以用vim 进行编译修改,此处我用sublime Text远程连接虚拟机来修改配置文件。

修改内容如下:

  1. <configuration>
  2. <!-- 指定集群文件系统类型: 分布式文件系统 -->
  3. <property>
  4. <name> fs.default.name </name>
  5. <value> hdfs://192.168.87.101:8020 </value>
  6. </property>
  7. <property>
  8. <name>fs.default.name</name>
  9. <value>hdfs://192.168.87.101:9000</value>
  10. </property>
  11. <!-- 指定临时文件存储目录 -->
  12. <property>
  13. <name> hadoop.tmp.dir </name>
  14. <value> /opt/module/hadoop-2.10.1/hadoopDatas/tempDatas </value>
  15. </property>
  16. <!-- 缓冲区大小,实际工作中根据服务器能动态调整 -->
  17. <property>
  18. <name> io.file.buffer.size </name>
  19. <value> 4096 </value>
  20. </property>
  21. <!-- 开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟 -->
  22. <property>
  23. <name> fs.trash.interval</name>
  24. <value> 10080 </value>
  25. </property>
  26. </configuration>

2.修改hdfs-site.xml文件

打开文件目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

编译文件: vim hafs-site.xml

修改内容如下:

  1. <configuration>
  2. <!-- 指定访问secondary Namenode的地址-->
  3. <property>
  4. <name> dfs.namenode.secondary.http-address</name>
  5. <value> node01:50090</value>
  6. </property>
  7. <!-- 指定namenode的访问地址和端口 -->
  8. <property>
  9. <name> dfs.namenode.http-address</name>
  10. <value>node01:50070</value>
  11. </property>
  12. <!-- 指定namenode存储元数据的位置 -->
  13. <property>
  14. <name>dfs.namenode.name.dir</name>
  15. <value>file:///opt/module/hadoop-2.10.1/hadoopDatas/namenodeDatas,file:///opt/module/hadoop-2.10.1/hadoopDatas/namenodeDatas2</value>
  16. </property>
  17. <!-- 定义dataNode数据存储的节点位置,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 -->
  18. <property>
  19. <name>dfs.datanode.data.dir</name>
  20. <value>file:///opt/module/hadoop-2.10.1/hadoopDatas/datanodeDatas,file:///opt/module/hadoop-2.10.1/hadoopDatas/datanodeDatas2</value>
  21. </property>
  22. <!-- 指定namenode日志文件的存放目录 -->
  23. <property>
  24. <name>dfs.namenode.edits.dir</name>
  25. <value>file:///opt/module/hadoop-2.10.1/hadoopDatas/namenode/edits</value>
  26. </property>
  27. <!-- 指定检查点的存储位置 -->
  28. <property>
  29. <name>dfs.namenode.checkpoint.dir</name>
  30. <value>file:///opt/module/hadoop-2.10.1/hadoopDatas/secondNamenode/name</value>
  31. </property>
  32. <!-- -->
  33. <property>
  34. <name>dfs.namenode.checkpoint.edits.dir</name>
  35. <value>file:///opt/module/hadoop-2.10.1/hadoopDatas/secondNamenode/edits</value>
  36. </property>
  37. <!-- 指定文件切片的副本个数 -->
  38. <property>
  39. <name>dfs.replication</name>
  40. <value>3</value>
  41. </property>
  42. <!-- 设置HDFS文件权限 -->
  43. <property>
  44. <name>dfs.permissions</name>
  45. <value>false</value>
  46. </property>
  47. <!-- 设置一个文件切片的大小 : 128M -->
  48. <property>
  49. <name>dfs.blocksize</name>
  50. <value>134217728</value>
  51. </property>
  52. </configuration>

3.修改hadoop-env.sh文件

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

修改内容如下:

  1. export JAVA_HOME=/opt/module/jdk1.8.0_251

添加jdk安装地址

4.修改mapred-site.xml

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

编译文件 vim mapred-site.xml

(注:文件夹中存在mapred-site.xml.template文件,将mapred-site.xml.template修改为mapred-site.xml)

修改内容如下:

  1. <configuration>
  2. <!-- 开启mapreduce小任务模式 -->
  3. <property>
  4. <name>mapreduce.job.ubertask.enable</name>
  5. <value>true</value>
  6. </property>
  7. <!-- 设置历史任务的主机和端口 -->
  8. <property>
  9. <name>mapreduce.jobhistory.address</name>
  10. <value>node01:10020</value>
  11. </property>
  12. <!-- 设置网页访问历史任务的主机和端口 -->
  13. <property>
  14. <name>mapreduce.jobhistory.webapp.address</name>
  15. <value>node01:19888</value>
  16. </property>
  17. </configuration>

5.修改yarn-site.xml文件

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

编译文件 vim yarn-site.xml

修改内容如下:

  1. <configuration>
  2. <!-- Site specific YARN configuration properties -->
  3. <!-- 配置yarn主节点的位置 -->
  4. <property>
  5. <name>yarn.resourcemanager.hostname</name>
  6. <value>node01</value>
  7. </property>
  8. <!-- -->
  9. <property>
  10. <name>yarn.nodemanager.aux-services</name>
  11. <value>mapreduce_shuffle</value>
  12. </property>
  13. <!-- 开启日志聚合功能 -->
  14. <property>
  15. <name>yarn.log-aggregation-enable</name>
  16. <value>true</value>
  17. </property>
  18. <!-- 设置聚合日志在hdfs上的保存时间 -->
  19. <property>
  20. <name>yarn.log-aggregation.retain-seconds</name>
  21. <value>604800</value>
  22. </property>
  23. <!-- 设置yarn集群的内存分配方案 -->
  24. <property>
  25. <name>yarn.nodemanager.resource.memory-mb</name>
  26. <value>20480</value>
  27. </property>
  28. <property>
  29. <name>yran.scheduler.minimum-allocation-mb</name>
  30. <value>2048</value>
  31. </property>
  32. <property>
  33. <name>yarn.nodemanager.vmem-pmem-ratio</name>
  34. <value>2.1</value>
  35. </property>
  36. </configuration>

6.修改mapred-env.sh文件

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

编译文件 vim mapred-env.sh

修改内容如下:

  1. export JAVA_HOME=/opt/module/jdk1.8.0_251

7.修改slaves文件

打开文件所在目录: cd /opt/module/hadoop-2.10.1/etc/hadoop

编译文件 vim slaves

修改内容如下:(注:三台主机名)

  1. node01
  2. node02
  3. node03

三、将安装配置完成的hadoop文件发送到另外二个主机

进入到保存hadoop文件的目录下,此处为/opt/module目录

发送给主机node02的hadoop文件命令:scp -r hadoop-2.10.1/ node02:/opt/module

发送给主机node03的hadoop文件命令:scp -r hadoop-2.10.1/ node03:/opt/module

四、配置hadoop的环境变量

三台机器都要进行配置hadoop的环境变量

配置环境变量命令: vim /etc/profile

增加内容如下:

  1. #Hadoop_HOME
  2. export HADOOP_HOME=/opt/module/hadoop-2.10.1
  3. export PATH=$PATH:$HADOOP_HOME/bin
  4. export CLASSPATH=$HADOOP_HOME/lib
  5. export PATH=$PATH:HADOOP_HOME/sbin

配置完成后文件生效命令:source /etc/profile

五、启动集群

启动hadoop集群,需要启动HDFS和YARN两个模块。(注:启动hadoop集群之前,先开启zookeeper)

注:首次启动HDFS时,必须对其进行格式化操作。本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的。

hdfs namenode -format 或者hadoop namenode -format

准备启动:

第一台机器执行以下命令:

  1. cd /opt/module/hadoop-2.10.1
  2. bin/hdfs namenode -format
  3. sbin/start-dfs.sh
  4. sbin/start-yarn.sh
  5. sbin/mr-jobhistory-daemon.sh start historyserver

注:bin/hdfs namenode -format 只在第一次启动时输入,之后不需要。

三个端口查看界面

http://node01:50070/explorer.html\#/ //查看hdfs

http://node01:8088/cluster //查看yarn集群

http://node01:19888/jobhistory //查看历史完成的任务

发表评论

表情:
评论列表 (有 0 条评论,382人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Hadoop配置

    1.在进行Hadoop集群配置中,需要在/etc/hosts文件中添加集群中所有机器的IP与主机名,这样Master与所有的Slave机器之间不仅可以通过IP进行通信,还可以通