一、准备工作
1、软件下载
本文采用以下版本进行安装,均从相应软件的官网进行下载。如版本不同可能导致相关配置有所差异,仅供参考。
VMware-workstation-full-16.1.1
CentOS-7-x86_64-DVD-2009
jdk-8u291-linux-x64
hadoop-3.2.2
2、集群规划
主机名 | hadoop1 | hadoop2 | hadoop3 |
---|---|---|---|
IP | 192.168.100.101 | 192.168.100.102 | 192.168.100.103 |
HDFS | NameNode DataNode | SecondaryDataNode DataNode | DataNode |
YARN | ResourceManager NodeManager | NodeManager | NodeManager |
二、虚拟机安装与配置
1、修改WMware网络设置
注意设置虚拟机为NAT模式,并且设置相应的IP地址。
在Windows网络设置中,对VMnet8虚拟网卡进行相应修改。
2、安装CentOS
采用默认的简易安装方式即可。根据自身电脑配置,适当调高每个虚拟机的CPU核数和内存大小,建议每个虚拟机分配的内存不小于2GB,4GB以上更佳。
3、修改网络配置
设置静态IP地址。
su root
vim /etc/sysconfig/network-scripts/ifcfg-ens33
设置主机名。
vim /etc/hostname
设置hosts文件。
vim /etc/hosts
重启虚拟机,使配置生效。
reboot
测试配置是否生效。
ifconfig
hostname
ping www.baidu.com
4、安装必需软件包
su root
yum install -y epel-release
5、关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
6、赋予用户root权限
vim /etc/sudoers
7、卸载系统自带的JDK
rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
三、相关软件安装与配置
1、安装软件
将JDK、Hadoop拷贝进虚拟机,解压缩。
tar -zxf hadoop-3.2.2.tar.gz
tar -zxf jdk-8u291-linux-x64.tar.gz
设置环境变量。
cd /etc/profile.d/
sudo vim my_env.sh
加入如下内容。
export JAVA_HOME=/home/pxq/Downloads/jdk1.8.0_291
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/home/pxq/Downloads/hadoop-3.2.2
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
使设置生效。
source /etc/profile
测试设置是否生效。
2、配置Hadoop
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<!--NameNode地址-->
<value>hdfs://hadoop1:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<!--数据存储路径-->
<value>/home/pxq/Downloads/hadoop-3.2.2/data</value>
</property>
<property>
<name>hadoop.http.staticuser.user</name>
<!--网页登录用户-->
<value>pxq</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.http-address</name>
<!--NameNode的Web访问地址-->
<value>hadoop1:9870</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<!--SecondaryNameNode的Web访问地址-->
<value>hadoop2:9868</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<!--ResourceManager地址-->
<value>hadoop1</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
workers
hadoop1
hadoop2
hadoop3
3、克隆虚拟机
VMware中选择管理->克隆->创建完整克隆,克隆两台虚拟机。克隆完成后分别修改两台虚拟机的IP与主机名。
4、设置ssh免密登录
生成密钥。
ssh-keygen -t rsa
配置hadoop1到自身,到hadoop2和hadoop3的免密登录。
ssh-copy-id hadoop1
ssh-copy-id hadoop2
ssh-copy-id hadoop3
四、集群启动
1、格式化
hadoop namenode -format
2、启动
启动HDFS。
start-dfs.sh
启动YARN。
start-yarn.sh
3、检查启动状态
jps