一、启动,按启动顺序执行命令。如果需要关闭集群,则按反顺序执行即可。

1.如果使用hdfs HA,需先启动zookeeper集群,具体请查看zookeeper的相关命令。

2.如果使用hdfs HA,需格式化zookeeper集群,

整个hdfs集群只需第一次启动时执行一次,

整个hdfs集群只需第一次启动时执行一次,

整个hdfs集群只需第一次启动时执行一次,

命令如下:

bin/hdfs zkfc -formatZK

说明:在ZK集群中建立一个目录,用于保存集群中NameNode的状态数据,不通的集群需要在集群中的随意一台namenode中执行此操作,操作完之后在zookeeper中会建立目录/hadoop-ha/cluster1,一般首次执行即可。

3.如果使用journal集群做HA,需启动journal集群,在journal集群每个节点执行如下命令:

sbin/hadoop-daemon.sh start journalnode

4.格式化HDFS

整个hdfs集群只需第一次启动时执行一次,

整个hdfs集群只需第一次启动时执行一次,

整个hdfs集群只需第一次启动时执行一次,

hdfs HA,在任一namenode节点上执行如下命令:

hdfs namenode -format -clusterId cluster1

说明:格式化hdfs集群cluster1,如果有多个集群,每个集群都格式化一遍,随便选择集群中的一个namenode即可。格式化之后在journal下就会有一个集群名字的文件夹存namenode的数据。

非hdfs HA,在namenode节点上执行如下命令:

hdfs namenode -format

5.启动hdfs集群

hdfs HA

在namenode1上执行,启动namenode:sbin/hadoop-daemon.sh start namenode

在namenode2上copy namenode1的数据,整个hdfs集群只需第一次启动时执行一次:bin/hdfs namenode -bootstrapStandby

在每台datanode节点启动datanode:sbin/hadoop-daemon.sh start datanode

在namenode2上执行,启动namenode:sbin/hadoop-daemon.sh start namenode

在每台namenode节点启动namenode的zkfc:sbin/hadoop-daemon.sh start zkfc

非hdfs HA

在namenode上启动namenode,执行:sbin/start-dfs.sh

6.启动yarn集群

yarn HA

在ResourceManger1上执行,启动ResourceManger:sbin/yarn-daemon.sh start resourcemanager

在ResourceManger2上执行,启动ResourceManger:sbin/yarn-daemon.sh start resourcemanager

在每台NodeManager上执行,启动NodeManager:sbin/yarn-daemon.sh start nodemanager

非yarn HA

在resourcemanager上启动yarn:sbin/start-yarn.sh

7.启动jobhistoryserver,jobhistoryserver可以随便部署在哪个节点

在jobhistoryserver节点上启动jobhistoryserver,执行:

sbin/mr-jobhistory-daemon.sh start historyserver