一、角色规划
Hadoop集群机器命名规范如下,假如有3台机器,角色混部。
- ser001
- ser002
- ser003
1.Namenode、Resourcemanager、zkfc部署到机器名末位是1和2的两台机器;
2.JournalNode和Zookeeper部署到机器名末位是1、2、3的三台机器;
3. Datanode、Nodemanager部署到所有节点。
4.给前三台机器分别申请两组域名:
namenode和journalnode的域名:master1.s.test.com、master2.s.test.com、master3.s.test.com
zookeeper的域名:zk1.s.test.com、zk2.s.test.com、zk3.s.test.com
二、安装部署
省略
三、启动顺序
第一步,在三台Journalnode机器上分别启动进程
|
第二步,任选一台namenode,执行格式化命令,并启动namenode进程
|
第三步,在另一台namenode机器上执行命令,进行节点信息同步,并启动
|
第四步,在两台namenode上分别启动ZKFC,用于自动故障切换
|
第五步,验证ZKFC切换namenode
1.检查safemode模式
确保状态为OFF才能切换
$ hdfs dfsadmin -safemode get
Safe mode is OFF in *
Safe mode is OFF in *
2.测试人工切换
将主由nn1切换到nn2,一定要在主nn1上执行以下人工切换命令。
ssh nn1
hdfs haadmin -failover nn1 nn2
3. 测试自动切换
停掉NN1的Namenode进程,查看nn2是否为active
hdfs haadmin -getServiceState nn2
4.如果有主NN(nn2)半死,可以人工强制切换到nn1
hdfs haadmin -transitionToActive nn1 --forceactive --forcemanual
第六步,启动datanode
|
第七步,启动resourcemanager
|
第八步,启动nodemanager
|