一、 启动JournalNode
每台机器都要执行:
mkdir -p /smp/hadoop-cdh4/bch/
chmod -R 777 /smp
启动分两种:
前台启动是hdfs journalnode
后台启动是service hadoop-hdfs-journalnode start
每台机器都如此执行。
访问web页面 ocdata19:8480,ocdata17:8480,ocdata18:8480
检查服务是否正常 --启动后可能会抛异常,没关系,格式化namenode后就好了
二、 启动Hadoop
a) 登陆cdh-master机器
执行 hdfs namenode -format (如果找不到hdfs命令,请进去hdfs目录执行)
执行 hdfs zkfc –formatZK前台启动或service hadoop-hdfs-zkfc start --在zookeeper集群中建立znode节点
执行 hdfs namenode或service hadoop-hdfs-namenode start --启动namenode
b) 登陆cdh-node1机器
执行 hdfs namenode -bootstrapStandby --主要是同步namenode元数据,最好在选举服务启动之前同步
执行 hdfs namenode 或 service hadoop-hdfs-namenode start
c) 登陆cdh-node2机器
执行 ./hdfs datanode 或 service hadoop-hdfs-datanode start --启动datanode
d) 每台NAMENODE节点都要执行以下命令启动自动选举服务
执行 ./hdfs zkfc 或 service hadoop-hdfs-zkfc start --启动自动选举服务
查看页面 http://cdh-master:50070/ http://cdh-node1:50070/ 应该一个处于standby状态 一个处于active状态 。并有一个datanode节点。
三、 测试HadoopHA
1、 列出namenode进程
[root@cdh-master init.d]# jps
29373 QuorumPeerMain
16289 JournalNode
17429 Jps
17166 NameNode
17335 DFSZKFailoverController
2、 杀掉namenode进程
[root@cdh-master init.d]# kill 17166
3、 命令hadoop命令
[root@cdh-master init.d]# hadoop fs -fs hdfs://bch/ -ls /
Found 1 items
drwxr-xr-x - root hadoop 0 2013-09-04 09:56 /usr
四、 常见问题
发现namenode启动失败
重新格式化namenode结点,并给namenode目录赋予权限(chmod –R 777 /data).