准备 3 台服务器,安装好 jdk1.8
192.168.24.120 master1
192.168.24.121 master2
192.168.24.122 slave1
1. 环境准备(所有机器)
关闭防火墙
systemctl stop firewalld.service
关闭防火墙开机启动
systemctl stop firewalld.service
禁用 selinux
查看状态:sestatus
临时关闭: setenforce 0
永久关闭:vi /etc/sysconfig/selinux
SELINUX=disabled
修改 hostname
vi /etc/hostname
master1(你想要的 hostname)
配置 hosts
vi /etc/hosts
192.168.24.120 master1
192.168.24.121 master2
192.168.24.122 slave1
创建 Hadoop 用户和用户组,基于 hadoop 用户创建集群
groupadd hadoop
useradd -g hadoop Hadoop
vi /etc/sudoers
hadoop
ALL=(ALL)
ALL
切换到 hadoop 用户进行以下操作
免密设置
ssh-keygen -t rsa
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
在 slave1,maser2 上执行下面命令
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@192.168.24.120
最后把 master1 上的 authorized_keys 文件拷贝到 slave1,master2 上
安装 zookeeper 集群(3 台服务器)
下载地址
http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz
上传,解压
进入 ZK 安装目录的 conf 目录下配置 zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
dataLogDir=/data/logs/zk
clientPort=2181
server.1=master1:2888:3888
server.2=master2:2888:3888
server.3=slave1:2888:3888
把 data 目录的属主修改下,省的后面各种权限问题
chown –R hadoop:hadoop /data(root 用户下执行)
新建上面两个目录
在 dataDir 目录下创建 myid 文件 id 号对于配置
分别启动 zkServer.sh start
查看状态 zkServer.sh status
一台 leader 两台 follower
如果有报错就看 zookeeper.out 文件
ZK 集群搭建很简单,基本不会有问题
Hadoop 集群搭建
http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz
上传,解压
修改配置文件
core-site.xml
fs.defaultFS
hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_11
workers
master2
slave1
把修改后的 Hadoop 目录 scp 到 slave1 和 master2 上(最好删除 doc 目录)
配置 HADOOP_HOME 和 PATH
启动集群,测试 ha
启动 ZK
格式化 ZK: hdfs zkfc –formatZK
启动 journalnode: hadoop-daemon.sh start journalnode
格式化集群:hadoop namenode –format
sbin/start-dfs.sh
sbin/start-yarn.sh
期间报错就看日志,日志在安装目录的 log 目录下,每个组件对应一个日志文件
集群启动成功后启动 standby namenode 在 master2 上执行
hdfs namenode –bootstrapStandby
sbin/hadoop-daemon.sh start namenode
在 master2 上启动 resourcemanager
sbin/yarn-daemon.sh start resourcemanager
HDFS WEB
http://192.168.24.120:50070
http://192.168.24.121:50070
YARN WEB
http://master1:8088
http://master2:8088
高可用测试:
HDFS
在 master1 上 kill namenode 进程
刷新 HDFS WEB
在 master1 上 kill resourcemanager 进程
刷新 YARN WEB
如果不能自动切换,看日志。看看是不是有 fuser 命令 yum install psmisc
大部分问题都是处在权限上
如有问题联系
497337706 免费解答各种疑难杂症 ^o^!!