一、环境:Vmware16+三台cent0s6.5
二、步骤
ROOT 用户操作(三台虚拟机都要操作,下面是以 HMaster 的操作截图)
一、配置 IP 和网关
1.在 windows 下查询 IP 和网关
2.在虚拟机上切换到目录 network-scripts 下,找到文件 ifcfg-eth0
cd /etc/sysconfig/network-scripts/
3.用 vim 命令编辑文件 ifcfg-eth0
vim ifcfg-eth0
4.配置完成后,ping IP 和网关
vim ifcfg-eth0
二、关闭防火墙
chkconfig iptables off
三、修改主机名
1. 切换到如图所示目录,将文件中的 HOSTNAME 分别改为 HMaster、
HSlave1、HSlave2
vim /etc/sysconfig/network
四、绑定 IP 和主机名 (三台虚拟机都要绑定三个IP,这里只截屏了HMaster)
vim /etc/hosts
ping HMaster
二、配置免密登录(三台都需要操作,但是只截了主节点的图片)
1. 生成密钥
ssh-keygen -t rsa
2. 复制密钥到一个新的文件
cd .ssh/
ll
cat id_rsa.pub
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
cat authorized_keys
3. 从主节点复制密钥文件到两个从节点
scp ~/.ssh/authorized_keys y@HSlave1:~/.ssh/
scp ~/.ssh/authorized_keys y@HSlave2:~/.ssh/
4. 验证免密登录是否成功,用主节点登录从节点
ssh HSlave1
ssh HSlave2
三、上传文件
1. 在家目录下创建一个 software 文件夹
mkdir software
2.上传 jdk 和 hadoop 压缩包
3. 从主节点复制 jdk 和 hadoop 压缩包给从节点(下图是 HSlave1 复制的
截图)
scp /home/y/software/hadoop-3.3.0.tar.gz y@HSlave1:/home/y/software/
scp /home/y/software/jdk-8u171-linux-x64.tar.gz y@HSlave1:/home/y/
software/
HSlave2同上述操作一样,只是将命令改为以下命令:
scp /home/y/software/hadoop-3.3.0.tar.gz y@HSlave2:/home/y/software/
scp /home/y/software/jdk-8u171-linux-x64.tar.gz y@HSlave2:/home/y
/software/
4. 去从节点检查是否复制文件成功
四、配置 jdk 和 hadoop 的环境变量(三台都要配置)
1. 解压 jdk 和 hadoop(三台都要)
tar -zxvf jdk-8u171-linux-x64.tar.gz
tar -zxvf hadoop-3.3.0.tar.gz
2. 在 software 下创建 hadooptmp 目录
mkdir hadooptmp
ll
3. 配置 jdk 和 hadoop 的环境变量
vim .bash_profile
source .bash_profile
配置前:
配置内容:
#JDK
export JAVA_HOME=/home/y/software/jdk1.8.0_171
export PATH=$JAVA_HOME/bin:$PATH
#HADOOP
export HADOOP_HOME=/home/y/software/hadoop-3.3.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
配置后:
注:配置后一定要 source 一下,不然无效
4. 验证 jdk 是否配置成功
java -version
5. 切换到 hadoop 目录下
cd /home/y/software/hadoop-3.3.0/etc/hadoop/
6. 配置 hadoop-env.sh 文件
vim hadoop-env.sh
配置内容:(home/y/software/是jdk所在的路径,根据自己的路径来写)
export JAVA_HOME=/home/y/software/jdk1.8.0_171
7. 配置 yarn-env.sh 文件
vim yarn-env.sh
配置内容:
export JAVA_HOME=/home/y/software/jdk1.8.0_171
五、配置 Hadoop 文件(仅在主节点 HMaster 下进行操作)
1. 配置 core-site.xml
vim core-site.xml
配置内容:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://HMaster:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/y/software/hadooptmp</value>
</property>
</configuration>
2.配置 hdfs-site.xml
vim hdfs-site.xml
配置内容:
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>l
</property>
</configuration>
3. 配置 yarn-site.xml
vim yarn-site.xml
配置内容:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>HMaster:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>HMaster:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>HMaster:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>HMaster:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>HMaster:8088</value>
</property>
</configuration>
4. 配置 mapred-site.xml
vim mapred-site.xml
配置内容:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5. 配置 workers
vim workers
配置内容:
HSlave1
HSlave2
6. 将配置好的 Hadoop 文件复制到从节点(在 software 目录下复制,不然可能
会找不到文件)
scp -r hadoop-3.3.0 y@HSlave1:~/software/
scp -r hadoop-3.3.0 y@HSlave2:~/software/
六、格式化 hadoop 集群(仅在主节点 HMaster 下进行操作)
hdfs namenode -format
七、启动集群(仅在主节点 HMaster 下进行操作)
start-all.sh
jps(需要在从节点查看进程,主节点有四个进程,从节点只要三个)
八、Ping 端口
ping 192.168.43.100:8088
ping 192.168.43.100:9870
这样hadoop集群就搭建完成了。