CDH Hadoop HA+Zookeeper部署问题
2016-11-12 08:51
537 查看
网上已经有一些关于hadoop ha部署的资料了这里就不重复了~
参考链接:
Hadoop2.5.2+HA+zookeeper3.4.6详细配置过程
https://my.oschina.net/wangyanpei/blog/485165
zookeeper部署教程:
http://wenku.baidu.com/view/f070cb8de53a580216fcfe7c.html
安装网上的教程将zookeeper,hadoop安装后
根据需要配置hadoop的配置文件(参考文档上的配置即可)
1.启动zookeeper
bin/zkServer.sh start
查看
bin/zkServer.sh status
此时应该有一个是leader其他为follower
2. 创建namenode,datanode,journalnode目录
chown -R hdfs:hdfs /home/binder/hadoop/journal
chown -R hdfs:hdfs /data/hadoop/data/datadfs
chown -R hdfs:hdfs /data/hadoop/data/namedfs
3.格式化hdfs的zookeeper服务
hdfs zkfc –formatZK
4.启动journalnode
service hadoop-hdfs-journalnode start
5.初始化SharedEdits
hdfs namenode –initializeSharedEdits
6.格式化并启动namenode
hadoop namenode –format
service hadoop-hdfs-namenode start
7.在备用节点上同步namenode数据并启动namenode
sudo -u hdfs hdfs namenode –bootstrapStandby
如果不切到hdfs用户会报错
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/hadoop/security/authorize/RefreshAuthorizationPolicyProtocol
service hadoop-hdfs-namenode start
8.启动datanode
service hadoop-hdfs-datanode start
9.启动ResourceManager和NodeManager
service hadoop-yarn-resourcemanager start
service hadoop-yarn-nodemanager start
10.在两个namenode上启动zkfc服务监控namenode状态
service hadoop-hdfs-zkfc start
11.此时部署就完成了,可以在web上查看namenode是否正常(一个active,一个standby)
尝试kill -9杀掉active的namenode,查看原先的standby
namenode是否自动切换成active
如果没有自动切换 回到namenode节点查看日志信息
如果用yum install 方式安装的话 log的位置在
/var/log/Hadoop-hdfs/hadoop-hdfs-zkfc-binder2.log
坑1:
采用sshfence方式自动切换时,如果在配置免密码登录时用的root用户,这里会产生
WARN org.apache.hadoop.ha.SshFenceByTcpPort: Unable to create SSH session
com.jcraft.jsch.JSchException: java.io.FileNotFoundException: /root/.ssh (Permission denied)
的异常
因为使用sshfence自动切换时,使用的是hdfs用户,而/root/.ssh的权限是owner是root
切换时无法读取到id_rsa
如果简单的修改/root/.ssh目录的权限的话解决的话,会导致免密码登录失败
解决办法:使用hdfs用户创建密钥
Sudo –u hdfs ssh-keygen
会在
/var/lib/hadoop-hdfs/.ssh/目录下生成密钥,在两台namenode机器上配置好免密码登录后
重启集群就可以了(我是把整个集群的服务都kill掉,重新格式化重启的,目测应该只需要重启service hadoop-hdfs-zkfc 就可以了)
参考链接:
Hadoop2.5.2+HA+zookeeper3.4.6详细配置过程
https://my.oschina.net/wangyanpei/blog/485165
zookeeper部署教程:
http://wenku.baidu.com/view/f070cb8de53a580216fcfe7c.html
安装网上的教程将zookeeper,hadoop安装后
根据需要配置hadoop的配置文件(参考文档上的配置即可)
1.启动zookeeper
bin/zkServer.sh start
查看
bin/zkServer.sh status
此时应该有一个是leader其他为follower
2. 创建namenode,datanode,journalnode目录
chown -R hdfs:hdfs /home/binder/hadoop/journal
chown -R hdfs:hdfs /data/hadoop/data/datadfs
chown -R hdfs:hdfs /data/hadoop/data/namedfs
3.格式化hdfs的zookeeper服务
hdfs zkfc –formatZK
4.启动journalnode
service hadoop-hdfs-journalnode start
5.初始化SharedEdits
hdfs namenode –initializeSharedEdits
6.格式化并启动namenode
hadoop namenode –format
service hadoop-hdfs-namenode start
7.在备用节点上同步namenode数据并启动namenode
sudo -u hdfs hdfs namenode –bootstrapStandby
如果不切到hdfs用户会报错
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/hadoop/security/authorize/RefreshAuthorizationPolicyProtocol
service hadoop-hdfs-namenode start
8.启动datanode
service hadoop-hdfs-datanode start
9.启动ResourceManager和NodeManager
service hadoop-yarn-resourcemanager start
service hadoop-yarn-nodemanager start
10.在两个namenode上启动zkfc服务监控namenode状态
service hadoop-hdfs-zkfc start
11.此时部署就完成了,可以在web上查看namenode是否正常(一个active,一个standby)
尝试kill -9杀掉active的namenode,查看原先的standby
namenode是否自动切换成active
如果没有自动切换 回到namenode节点查看日志信息
如果用yum install 方式安装的话 log的位置在
/var/log/Hadoop-hdfs/hadoop-hdfs-zkfc-binder2.log
坑1:
采用sshfence方式自动切换时,如果在配置免密码登录时用的root用户,这里会产生
WARN org.apache.hadoop.ha.SshFenceByTcpPort: Unable to create SSH session
com.jcraft.jsch.JSchException: java.io.FileNotFoundException: /root/.ssh (Permission denied)
的异常
因为使用sshfence自动切换时,使用的是hdfs用户,而/root/.ssh的权限是owner是root
切换时无法读取到id_rsa
如果简单的修改/root/.ssh目录的权限的话解决的话,会导致免密码登录失败
解决办法:使用hdfs用户创建密钥
Sudo –u hdfs ssh-keygen
会在
/var/lib/hadoop-hdfs/.ssh/目录下生成密钥,在两台namenode机器上配置好免密码登录后
重启集群就可以了(我是把整个集群的服务都kill掉,重新格式化重启的,目测应该只需要重启service hadoop-hdfs-zkfc 就可以了)
相关文章推荐
- 部署hadoop2.7.2 集群 基于zookeeper配置HDFS HA+Federation
- 【Hadoop2.7.0、Zookeeper3.4.6、JDK1.7】搭建完全分布式的hadoop,HA部署安装,自动备援
- hadoop-2.6.0+zookeeper-3.4.6+hbase-1.0.0+hive-1.1.0完全分布式集群HA部署
- hadoop2.7.3+HA+YARN+zookeeper高可用集群部署
- hadoop2.5.2 + zookeeper 3.4.5 + hbase1.0.1 部署问题hbase各种报错 兼容问题
- Hadoop2.0.0-CDH4.3.0的部署包的文件结构
- Hadoop学习之以伪分布模式部署Hadoop及常见问题
- 【3】搭建HA高可用hadoop-2.3(部署配置hadoop--cdh5.1.0)
- CDH配置(Zookeeper,HADOOP,Hive)
- Hadoop2.x分布式安装以及HA部署
- zookeeper集群的搭建以及hadoop ha的相关配置
- 基于centos7.2最小化环境, cdh manager 及 cdh 集群的部署过程常见问题整理
- HBase+ZooKeeper+Hadoop2.6.0的ResourceManager HA集群高可用配置
- hadoop2.X的ha完全分布式安装和部署
- CentOS6.5环境部署Hadoop2.8.1集群(HA)
- Hadoop的部署及测试问题
- 集群配置虚拟主机及部署Hadoop集群碰到的问题
- 第二章:hadoop2+HA+Zookeeper QJM集群搭建实验
- Hadoop HA集群配置问题记录
- Hadoop2.5.2+HA+zookeeper3.4.6详细配置过程