设为首页 收藏本站
查看: 607|回复: 0

[经验分享] Hadoop(cdh3)+HBase+ZooKeeper伪分布式部署

[复制链接]

尚未签到

发表于 2016-12-10 10:00:21 | 显示全部楼层 |阅读模式
在网上搜了很多很多关于hadoop的安装部署说明,但针对CDH3版本的部署却很少说明,结合很多前辈的安装部署说明,终于还是把它给部署起来了,过程很曲折,现在终于完成了,将此过程记录下来,做个总结!
一.安装方式的选择:
网上3种方式都有相关的说明,包括:
1)直接下载安装包手动安装
2)通过CM安装
3)yum安装

本人比较懒,第一种就不考虑了,首先考虑使用第二种方式,前期很顺利但安装到一大半提示类似找不到数据库的错误(具体错误提示当时忘保存了),google了好一阵子,用了各种方法,问题依旧,没办法只好用第三方案了!
二.安装步骤
1.安装源
wget http://archive.cloudera.com/redhat/6/x86_64/cdh/cdh3-repository-1.0-1.noarch.rpm

rpm -ivh cdh3-repository-1.0-1.noarch.rpm

cd /etc/yum.repos.d/

wget http://archive.cloudera.com/redhat/6/x86_64/cdh/cloudera-cdh3.repo

rpm --import http://archive.cloudera.com/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera
在/etc/yum.repos.d/ 路径下生成了一个cloudera-cdh3.repo文件,再修改/etc/yum.conf文件将该repo文件添加到此文件中
2.使用yum search hadoop命令搜索源
3.yum install hadoop-0.20 或 sudo install hadoophadoop-0.20(非root用户)
4.yum install hadoop-namenode
5.yum install hadoop-datanode
6.yum install hadoop-secondarynamenode
7.yum install hadoop-jobtracker
8.yum install hadoop-tasktracker
9.yum install hadoop-0.20-conf-pseudo
10.yum install hadoop-hbase
11.yum install hadoop-zookeeper
到此,所有需要安装的服务都已安装完毕
三、配置
由于已一键式安装了hadoop的伪分布式,所以关于hadoop的配置无需修改!
1.配置ssh
#root 操作
mkdir /usr/lib/hadoop/.ssh
#修改所有者。
chown hdfs:hdfs /usr/lib/hadoop/.ssh -R
#切换用户
su hdfs
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
#测试
ssh localhost
#如果可以登录说明配置好了。
2.执行 sh /usr/lib/hadoop/bin/start-all.sh
  执行 sh /usr/lib/hadoop/bin/stop-all.sh
上述步骤无异常则格式化namenode:
hadoop namenode -format
3.到hbase路径下修改hbase-site.xml文件,修改hbase.rootdir属性值,与core-site.xml中fs.default.name属性值一致并在后面追加一个目录,例如core-site.xml中的fs.default.name属性值为hdfs://localhost:8020则hbase.rootdir属性值为hdfs://localhost:8020/hbase
并添加如下属性值:
<property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
<property>
   <name>hbase.cluster.distributed</name>
   <value>true</value>
</property>
<property>
   <name>hbase.zookeeper.quorum</name>
   <value>localhost</value>
</property>
4.修改zookeeper配置文件如下:
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/data0/zoo/zk1/(本人只修改了这个路径)
# the port at which the clients will connect
clientPort=2181
5.启动zookeeper(./zkServer.sh start),执行./zkServer.sh status 显示当前为单点模式,貌似成功了其实不然,后面会提到
6.启动hbase(./start-hbase.sh),执行jps,查看已有HMaster和HRegionServer进程,貌似成功了,于是执行 hbase shell ,执行list命令,问题来了,报错:
ERROR zookeeper.ZKConfig: no valid quorum servers found in zoo.cfg

ERROR: org.apache.hadoop.hbase.ZooKeeperConnectionException: An error is preventing HBase from connecting to ZooKeeper

很纳闷,浏览器访问HMaster页面,显示了zookeeper信息,貌似没问题呀!

无奈,先关闭hbase,提示无法停止zookeeper,难道hbase自己也启动了一个zookeeper,想起hbase-env.sh里有个配置,虽然是被注释的,但是可能HBASE启动的时候默认就给赋值了,于是在hbase-env.sh文件中取消HBASE_MANAGES_ZK配置的注释,并将值改成false,同时取消JAVA_HOME和HBASE_OPTS两个属性的值,再次执行上述操作,报错依旧,但关闭HBASE时没有再报无法关闭zookeeper的提示,网上搜了很多方法,试了都不管用,就快要崩溃时,想想这个问题很明显是没有连接上zookeeper,那么不是HBASE启动有问题就是zookeeper没有启动成功,检查HBase日志,无异常,zookeeper日志也无异常,执行命令:echo ruok | nc localhost 2181,没有提示imok,那说明没有成功启动,验判断一定是个狗血的问题,于是想想最狗血的无非是配置错了,或者环境变量的问题,于是先检查配置,无问题,再检查环境变量,最笨的方法,把环境变量都重新配一次,于是修改/etc/profile文件,export HBASE_HOME、ZOOKEEPER_HOME、HADOOP_HOME等,再在HBase安装路径下,修改hbase-env.sh,export 上述变量外加HBASE_CONF_DIR和HADOOP_CONF_DIR,然后重新启动zookeeper和hbase,并执行下述命令:
echo ruok | nc localhost 2181

提示IMOK,这次zookeeper才真是成功启动了,上进入hbase shell 里执行命令 没有出现那个错误,总算搞定了!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-312237-1-1.html 上篇帖子: [转]Hadoop 解除 "Name node is in safe mode 下篇帖子: Hadoop问题笔记之五问五答-日志配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表