服务器角色
服务器 | 192.168.58.180 | 192.168.58.181 | 192.168.58.182 | 192.168.58.183 |
Name | CentOSMaster | Slvae1 | Slave2 | StandByNameNode |
NameNode | Yes | Yes | ||
DataNode | Yes | Yes | Yes | |
journalNode | Yes | yes | Yes | |
ZooKeeper | Yes | Yes | Yes | |
ZKFC | Yes | Yes | ||
Spark | Yes | Yes | ||
hbase | Yes | Yes |
Slave2没有zookeeper,所以hbase装在183和181,不过由于hbase.rootdir必须在hdfs上,所以估计还是只能搭载在180和183上。
就是不知道zk和hbase必须对应,就是说2个hbase,三个zk不知道行不。
备注:我的公钥文件在/home/hxsyl/.ssh下不在/root/hxsyl下,通过
find / -name id_rsa
查找
1.
分别在每个机器上运行命令zkServer.sh start或者在$ZOOKEEPER_HOME/bin目录下运行./zkServer.sh start命令。然后可以通过命令jps来查看Zookeeper启动的进程QuorumPeerMain。
可通过zkServer.sh status命令来查看Zookeeper状态。正常是机器中只有一个leader,其他的都是follow
$ZOOKEEPER_HOME/bin/zkServer.sh start
slave2不要zk了
DN节点是命令行模式,但是ssh IP “启动”命令显示成功了,但是ip里没进程,但是这种stop就可以 马丹,咋回事 只能去命令杭霞窍
2.主节点执行
hdfs zkfc -formatZK
注意:最后的zk是大写,否则
6/11/30 20:31:45 FATAL tools.DFSZKFailoverController: Got a fatal error, exiting now
org.apache.hadoop.HadoopIllegalArgumentException: Bad argument: -formatzk
这个必须设置自动故障切换为true。
他会根据$HADOOP_HOME/etc/hadoop/core-site.xml文件中ha.zookeeper.quorum的值来进行初始化。
这个需要确定开启了自动ha切换,否则不行。
但是现在
DFSZKFailoverController并没有启动,start zkfc后才可以,然后才是一个active,一个standby,
3.
注意:所有操作均在Hadoop部署目录下进行。
启动Hadoop集群:
Step1 :
在各个JournalNode节点上,输入以下命令启动journalnode服务:
$HADOOP_HOME/sbin/hadoop-daemon.sh start journalnode
或者在mster执行
$HADOOP_HOME/sbin/hadoop-daemons.sh start journalnode
注意第二种启动方法master节点并不是journalNode,需要单独启动,挺值得时候单独停止
s2没有journalNode。
4.
在[nn1]上,对其进行格式化,并启动:
bin/hdfs namenode -format
sbin/hadoop-daemon.sh start namenode
5.
在[nn2]上,同步nn1的元数据信息:
bin/hdfs namenode -bootstrapStandby 6. 启动[nn2]: sbin/hadoop-daemon.sh start namenode 经过以上四步操作,nn1和nn2均处理standby状态 7. 将[nn1]切换为Active
有问题 如何配置自动切换的话 这个不要,强制手动 出现脑列问题....
bin/hdfs haadmin -transitionToActive nn1
强制切换是 --forcemanual nn1,有人说重启zkfc,我先格式化还是然后启动zkfc,说zkfc在运行。
然后重启hbase即可。
8.
此时两个都是standby,standby也可以启动datanode。 在[nn1]上,启动所有datanode sbin/hadoop-daemons.sh start datanode
9.启动yarn
sbin/start-yarn.sh
在master1上多出ResourceManager进程,在slave1 slave2 slave3上多出NodeManager进程
10.启动zkfc
sbin/hadoop-daemon.sh start zkfc
注意这个和上面的启动journalNode式样的,damons的并没有启动master的zkfc,需要单独启动。
11.
sbin/mr-jobhistory-daemon.sh start historyserver 原文配置在Stand上,我改成CentOSMaster上了。
11.启动hbase
bin/start-hbase.sh
关闭Hadoop集群: 在[nn1]上,输入以下命令 sbin/stop-dfs.sh 并没有停止上面的yarn和历史服务器 主节点的journalNode也没停止
各个节点的zookeeper也没停止
hbase停止很慢 查看master日志发现一直在等待Regionserver 那么先停止它 hbase-daemons.sh stop regionserver
进入spark的sbin目录下
start-all.sh
./start-history-server.sh
bin/spark-shell
12.关闭
a.zookeeper
$ZOOKEEPER_HOME/bin/zkServer.sh stop 一个一个关闭