大数据 Hadoop 完全分布式安装配置
1. 在 master 节点中的 /opt/software 目录下将文件 hadoop-3.3.6.tar.gz 安装包解压到 /opt/module 路径中
tar -xzvf /opt/software/hadoop-3.3.6.tar.gz -C /opt/module/
[root@master ~]# ls /opt/module/
hadoop-3.3.6 jdk1.8.0_191
[root@master ~]#2. 在 master 节点中将解压的 Hadoop 安装目录重命名为 hadoop ,并修改该目录下的所有文件的所属者为 hadoop,所属组为 hadoop
重命名mv /opt/module/hadoop-3.3.6 /opt/module/hadoop
查看是否成功
[root@master ~]# ls /opt/module
hadoop jdk1.8.0_191
[root@master ~]#修改文件夹所有者和所有组chown -R hadoop:hadoop /opt/module/hadoop/
-R 选项为递归修改 后接账号:用户组 文件或目录
使用ll目录验证
[root@master ~]# ll /opt/module/
total 0
drwxr-xr-x. 10 hadoop hadoop 215 Jun 18 2023 hadoop
drwxr-xr-x. 7 10 143 245 Oct 6 2018 jdk1.8.0_191
[root@master ~]#3.在 master 节点中使用 hadoop 用户依次配置 hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、masters和 workers 配置文件,Hadoop 集群部署规划如下表
| 服务器 | master | slave1 | slave2 |
|---|---|---|---|
| HDFS | NameNode | -- | -- |
| HDFS | SecondaryNameNode | -- | -- |
| HDFS | DataNode | DataNode | DataNode |
| YARN | ResourceManager | -- | -- |
| YARN | NodeManager | NodeManager | NodeManager |
| 历史日志服务器 | JobHistoryServer | -- | -- |
修改/opt/module/hadoop/etc/hadoop/hadoop-env.sh设置java环境
添加export JAVA_HOME=/opt/module/jdk1.8.0_191
java目录根据实际情况进行修改
修改core-site.xml
<!--core-site.xml-->
<configuration>
<!--指定HDFS中NameNode的地址,此处指定NameNode在master节点上-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<!--指定hadoop集群存储临时文件的目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop/tmp</value>
</property>
</configuration>修改hdfs-site.xml
<!--hdfs-site.xml-->
<configuration>
<!-- 指定HDFS中NameNode的web端访问地址-->
<property>
<name>dfs.namenode.http-address</name>
<value>master:9870</value>
</property>
<!-- 指定secondary节点主机配置,此处指定master节点-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:50090</value>
</property>
</configuration>配置yarn-site.xml文件
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定YARN的ResourceManager的地址,也就是指定resourcemanager所在的节点 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED _HOME</value>
</property>
<!-- 开启日志聚集功能 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 日志保留时间设置7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://master:19888/jobhistory/logs</value>
</property>
</configuration>配置mapred-site.xml
<configuration>
<!--mapred-site.xml-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 历史服务器端地址,也就是指定了历史服务器节点 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>配置workers
[hadoop@master hadoop]$ cat workers
master
slave1
slave24.在 master 节点中使用 scp 命令将配置完的 hadoop 安装目录直接拷贝至 slave1 和 slave2 节点
scp -r /opt/module/hadoop root@slave1:/opt/module/scp -r /opt/module/hadoop root@slave2:/opt/module/
5.在 slave1 和 slave2 节点中将 hadoop 安装目录的所有文件的所属者为hadoop,所属组为hadoop
chown -R hadoop:hadoop /opt/module/hadoop/
6.在三个节点的 /etc/profile 文件中配置 Hadoop 环境变量HADOOP_HOME 和 PATH 的值,并让配置文件立即生效
export HADOOP_HOME=/opt/module/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin立即生效:source /etc/profile
7.在 master 节点中初始化 Hadoop 环境 namenode
hdfs namenode -format
8.在 master 节点中依次启动 HDFS、YARN 集群和历史服务。
dfs:start-dfs.sh
yarn:start-yarn.sh
历史服务:mapred --daemon start historyserver
[root@master ~]# jps
22853 DataNode
22695 NameNode
23303 ResourceManager
23832 JobHistoryServer
23993 Jps
23434 NodeManager
23038 SecondaryNameNode
[root@master ~]#http://192.168.123.190:8088/cluster
参考
https://www.cnblogs.com/wbo112/p/16246876.html
https://blog.csdn.net/weixin_46560589/article/details/132604226
https://juejin.cn/post/7154526292044414990#heading-35
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。