CentOS6.5mini版hadoop集群搭建流程
CentOS 7 系列:
关闭防火墙:systemctl stop firewalld
禁止防火墙开机启动:systemctl disable firewalld
安装虚拟机的时候需要配置好主机名和网络
主机名:master,slave1,slave2
网络配置:
1. 自动连接
2. ipv4 手动
------------------ 三个都要执行的操作
-2.验证网络配置是否正确:ifconfig
-1.验证主机名是否正确:hostname
master,slave1,slave2
0. 安装 ssh 服务 (mini版要安装ssh, 桌面版无须安装 ssh )
yum -y install openssh-server 安装 ssh 服务器
yum -y install openssh-clients 安装 ssh 客户端
1. 分别关闭防火墙
service iptables stop
2. 分别禁止防火墙开机启动
chkconfig iptables off
3. 分别配置 /etc/hosts 文件,增加一下内容
192.168.37.101 master
192.168.37.102 slave1
192.168.37.103 slave2
4. 分别执行 ssh-keygen 生成公钥和私钥
5. 分别执行 ssh-copy-id master /root/.ssh/id_rsa.pub 把公钥发送给 master
----------------- master 执行的操作
6. master 执行 cat /root/.ssh/authorized_keys 检查是否收集到了所有的公钥
7. master 执行命令把 authorized_keys 发送给 slave1 和 slave2
scp /root/.ssh/authorized_keys root@slave1:/root/.ssh/
scp /root/.ssh/authorized_keys root@slave2:/root/.ssh/
------------------ 三个都要执行的操作
8. 分别执行,共 9 次
ssh master exit
ssh slave1 exit
ssh slave2 exit
消除第一次登录的 yes
------------------ 以下操作都在 master 上进行
9. 上传 jdk 到 master 的 /opt/SoftWare 文件夹
10.解压 jdk tar -xvf jdk
11.配置 jdk 环境变量 vi /etc/profile
在文件最后追加一下内容:
export JAVA_HOME=/opt/SoftWare/jdk1.8.0_141
export JRE_HOME=/opt/SoftWare/jdk1.8.0_141/jre
export CLASSPATH=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
12.刷新环境变量 source /etc/profile
13.验证是否配置成功 java -version
14.下载 hadoop http://hadoop.apache.org/releases.html
15.上传 hadoop 到 /opt/SoftWare 并解压
16.进入解压后的 hadoop 文件夹创建
tmp,logs,hdfs,hdfs/name,hdfs/data 五个文件夹
16.使用 nodepad++ 进行配置文件的修改,都在 hadoop-2.7.3/etc/hadoop
1. hadoop-env.sh
修改第 25 行的 ${JAVA_HOME} 为自己的 jdk 安装目录
2. yarn-env.sh
修改第 23 行,解注释,修改路径为自己的 jdk 安装目录
3. salves
修改 localhost 为 slave1 和 slave2
4. mv mapred-site.xml.template mapred-site.xml 重命名 mapred-site.xml.template
5. 配置文件参考附件
17.把 SoftWare 文件夹拷贝到 slave1 和 slave2 的 opt 下
scp -r /opt/SoftWare/ root@slave1:/opt/
scp -r /opt/SoftWare/ root@slave2:/opt/
18.把 /etc/profile 文件拷贝到 slave1 和 slave2 的 /etc 下
scp /etc/profile/ root@slave1:/etc/
scp /etc/profile/ root@slave2:/etc/
------------------ 三个都要执行的操作
19.分别去 slave1 和 slave2 刷新环境变量,验证 java 是否配置成功
20.锁定时间同步
安装时间同步软件 ntpdate:yum -y install ntp ntpdate
和网络时间进行同步:ntpdate cn.pool.ntp.org
把时间写入硬件进行锁定:hwclock --systohc
----------------- master 执行的操作
21.进入 hadoop-2.7.3/bin 目录
22.使用 ./hdfs namenode -format 进行格式化
出现 /hdfs/name has been successfully formatted 表示成功
不允许多次格式化,会导致集群无法启动
如果出错:
1. 修改配置文件
2. 删除 三个 上的 hdfs/name 和 hdfs/data 文件夹
3. 把修改的内容发送到 slave1 和 salve2 下
时刻保持 3 个虚拟机的配置文件是一致的
4. 重新格式化
23.进入 hadoop-2.7.3/sbin 目录,使用 ./start-dfs.sh 启动 hdfs 服务
---------------- 三个虚拟机执行的命令
分别执行 jps 命令
master:
NameNode
SecondaryNameNode
slave1 和 slave2:
DataNode
访问:http://192.168.37.101:50070
Live Nodes 2
----------------- master 执行的命令
24.进入 hadoop-2.7.3/sbin 目录,使用 ./start-yarn.sh 启动 yarn 服务
---------------- 三个虚拟机执行的命令
25.分别执行 jps 命令
master:
ResourceManager
slave1 和 slave2:
NodeManager
访问:http://192.168.37.101:8088
---------------- master 执行命令
26.进入 hadoop-2.7.3/sbin 目录,使用 ./stop-dfs.sh 关闭 hdfs 服务
进入 hadoop-2.7.3/sbin 目录,使用 ./stop-yarn.sh 关闭 yarn 服务
切记:关虚拟机前先关闭 hadoop 集群,不然可能会导致集群的崩溃