天天看点

Hadoop集群部署重要步骤记录

一、角色规划

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机器上分别启动进程

$

/opt/hadoop/sbin/hadoop-daemon

.sh start journalnode

第二步,任选一台namenode,执行格式化命令,并启动namenode进程

$

/opt/hadoop/bin/hdfs

namenode -

format

$

/opt/hadoop/sbin/hadoop-daemon

.sh start namenode

第三步,在另一台namenode机器上执行命令,进行节点信息同步,并启动

$

/opt/hadoop/bin/hdfs

namenode -bootstrapStandby

$

/opt/hadoop/sbin/hadoop-daemon

.sh start namenode

$jps

2018 JournalNode

2159 NameNode

#此时两个节点都启动了namenode,但是都是standby状态,不要停止,继续第四步。

第四步,在两台namenode上分别启动ZKFC,用于自动故障切换

#在NN1上初始化ZKFC

$ hdfs zkfc -formatZK

#分别启动两台NN的ZKFC

/opt/hadoop/sbin/hadoop-daemon

.sh start zkfc

$ jps

20976 DFSZKFailoverController

#ZKFC启动后,再查看状态,就会有一个namenode的状态为Active

$

/opt/hadoop/bin/hdfs

dfsadmin -report

#如果两个都为standby状态,手动将其中一个节点设置为Active,启动ZKFC后这个已经不受控制。

#$/opt/hadoop/bin/hdfs haadmin -transitionToActive nn1

第五步,验证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

$

/opt/hadoop/sbin/hadoop-daemon

.sh start datanode

第七步,启动resourcemanager

$

/opt/hadoop/sbin/yarn-daemon

.sh start resourcemanager

第八步,启动nodemanager

$

/opt/hadoop/sbin/hadoop-daemon

.sh start datanode

$

/opt/hadoop/sbin/yarn-daemon

.sh start nodemanager

继续阅读