最近比较忙,所以这篇文章推迟了一段时间才完成。趁着假期,我们来详细讲解如何在CentOS 7系统上安装和配置Hadoop集群。
需要至少四台运行CentOS 7系统的服务器。可以通过VMware虚拟机模拟,如果宿主机性能良好,这种方式非常方便。如有需要,可以提供关于如何在VMware上安装CentOS 7以及克隆多台系统的教程。
创建Hadoop文件夹
cd /usr/
mkdir softInstall
cd softInstall
mkdir hadoop
下载Hadoop文件
使用wget
命令下载Hadoop压缩包:
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
如果系统中没有wget
,可以通过yum install wget
命令安装。
解压Hadoop文件
tar -zxvf hadoop-3.3.0.tar.gz
解压后的文件夹名为hadoop-3.3.0
。
修改hadoop-env.sh
cd hadoop-3.3.0/etc/hadoop/
vi hadoop-env.sh
添加以下内容:
bash
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64
export HADOOP_CONF_DIR=/usr/softInstall/hadoop/hadoop-3.3.0/etc/hadoop
配置core-site.xml
编辑core-site.xml
文件:
xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.3.7:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/softInstall/hadoop/tmp</value>
</property>
</configuration>
配置hdfs-site.xml
编辑hdfs-site.xml
文件:
xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.3.8:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/softInstall/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/softInstall/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.datanode.registration.ip-hostname-check</name>
<value>false</value>
</property>
</configuration>
配置yarn-site.xml
编辑yarn-site.xml
文件:
xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>192.168.3.7</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
</configuration>
配置mapred-site.xml
编辑mapred-site.xml
文件:
xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
配置workers
文件
编辑workers
文件:
bash
vi /usr/softInstall/hadoop/hadoop-3.3.0/etc/hadoop/workers
删除localhost
,添加所有从节点的IP地址。
通过以下命令将本机的Hadoop配置复制到其他几台服务器上:
bash
scp -r /usr/softInstall/hadoop root@192.168.236.131:/usr/softInstall
scp -r /usr/softInstall/hadoop root@192.168.236.129:/usr/softInstall
scp -r /usr/softInstall/hadoop root@192.168.236.130:/usr/softInstall
编辑/etc/profile
文件,添加以下内容:
bash
export HADOOP_HOME=/usr/softInstall/hadoop/hadoop-3.3.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:
bash
source /etc/profile
格式化HDFS:
bash
hdfs namenode -format
启动HDFS:
bash
start-dfs.sh
启动YARN:
bash
start-yarn.sh
生成SSH密钥:
bash
ssh-keygen -t rsa
分发公钥:
bash
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.3.7
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.3.8
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.3.9
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.3.10
复制公钥到其他节点:
bash
scp /root/.ssh/authorized_keys root@192.168.3.8:/root/.ssh
scp /root/.ssh/authorized_keys root@192.168.3.9:/root/.ssh
scp /root/.ssh/authorized_keys root@192.168.3.13:/root/.ssh
scp /root/.ssh/authorized_keys root@192.168.3.11:/root/.ssh
scp /root/.ssh/authorized_keys root@192.168.3.12:/root/.ssh
格式化Namenode:
bash
hadoop namenode -format
重启Hadoop:
bash
start-all.sh
访问Hadoop管理界面:
打开浏览器,访问 http://192.168.3.7:9870
或者 http://192.168.3.7:9870/dfshealth.html#tab-overview
。
配置/etc/hosts
文件,确保所有节点都有正确的主机名解析。
希望这篇指南能帮助您顺利完成Hadoop的安装和配置。如果有任何问题,请随时联系我。