热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hbase,Zookeeper完全分布式安装

前段时间安装配置了hadoop集群,这两天想装个hbase然后用些数据学习学习。网上教程有点多也有点乱,摸索了很久,所以还是记录一下自己的配置经验。过程中看了些博客感觉还是不错的,分享一下:安装

前段时间安装配置了hadoop集群,这两天想装个hbase然后用些数据学习学习。网上教程有点多也有点乱,摸索了很久,所以还是记录一下自己的配置经验。过程中看了些博客感觉还是不错的,分享一下:
安装配置教程:
http://www.linuxidc.com/Linux/2012-12/76947.htm
http://blog.csdn.net/lskyne/article/details/8900608
淘宝应用介绍(科普一下):
http://www.iteye.com/magazines/83


一. zookeeper安装配置详细步骤

  1. 已经配置好的hadoop集群:master节点包括一个namenode和一个datanode(slave文件中设置datanode);mit02节点就是一个datanode。
  2. 首先在master节点:下载解压zookeeper安装包到/usr/local/hadoop/
  3. 进入conf/文件夹下,拷贝zoo_sample.cfg为zoo.cfg
  4. 修改zoo.cfg文件如下:
# 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.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/usr/local/hadoop/zk
#注意新建一个zk文件夹,并在里面新建一个myid文件内容为12(和下面server主机相对应)
dataLogDir=/usr/local/hadoop/zk
# the port at which the clients will connect
clientPort=2181
server.1=master:2888:3888
server.2=mit02:2888:3888
 5.scp 将zookeep文件夹复制到其它节点(记得修改myid内容)

二. hbase安装配置详细步骤

  1. 还是先在master节点下载hbase安装包,注意与hadoop的版本匹配
  2. 进入conf/文件夹下,打开hbase-site.xml文件并修改如下
<configuration>
<property>
<name>hbase.rootdirname>
<value>hdfs://master:9000/hbasevalue>
property>
<property>
<name>hbase.cluster.distributedname>
<value>truevalue>
property>
<property>
<name>hbase.mastername>
<value>master:60000value>
property>
<property>
<name>dfs.support.appendname>
<value>truevalue>
property>
<property>
<name>hbase.zookeeper.quorumname>
<value>master,mit02value>
property>
<property>
<name>hbase.zookeeper.property.dataDirname>
<value>/usr/local/hadoop/zkvalue>
property>
<property>
<name>hbase.zookeeper.property.clientPortname>
<value>2181value>
property>
<property>
<name>hbase.master.info.portname>
<value>60010value>
property>
configuration>

3.修改hbase-env.sh,增加以下内容:

 export JAVA_HOME=/opt/software/java/jdk1.8.0_65
export HADOOP_HOME=/usr/local/hadoop
export HBASE_HOME=/usr/local/hadoop/hbase

其实这个pids我一开始不知道什么用处,后来启动hbase的时候我发现只要启动正常就会生成pids文件,当hbase出问题关闭的时候这个文件就自动删除了,所以通过这个可以直观的判断运行情况。所以可以把这个路径设置到自己比较方便看到的地方。

# The directory where pid files are stored. /tmp by default.
export HBASE_PID_DIR=/usr/local/hadoop/pids

另外一个比较关键的:这个默认值是true,就是用hbase自带的zookeeper,我一开始想偷懒就直接这么设置,不装zookeeper,但是发现启动不正常,或者关闭hbase的时候就报错,不知道什么原因,网上有说是只能在单机和伪分布式下可以。我想还是自己配个zookeeper集群吧,反正多学习学习。所以这里设置成false。

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

4.在regionservers中添加内容如下(添加节点):

master
mit02

5.将配置好的hbase文件夹scp到其它节点对应目录下

三、启动/关闭 hbase

1.设置环境变量,/etc/profile增加如下内容:

export ZOOKEEPER_HOME=/usr/local/hadoop/zookeeper
export HBASE_HOME=/usr/local/hadoop/hbase
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin:$SQOOP_HOME/bin:$PATH

2.在master节点启动hadoop: start-all.sh

3.各个节点都启动zookeep: zkServer.sh start

4.启动hbase: start-hbase.sh

5.jps查看当前进程情况:

6512 ResourceManager
5984 NameNode
6144 DataNode
15570 HRegionServer
6647 NodeManager
15256 QuorumPeerMain
6349 SecondaryNameNode
16605 Jps
15406 Hmaster

6.网页端查看:http://master:60010/master-status
7.关闭hbase: stop-hbase.sh
关闭zookeeper:zkServer.sh stop
关闭hadoop: stop-all.sh


推荐阅读
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • PHP 5.5.31 和 PHP 5.6.17 安全更新发布
    PHP 5.5.31 和 PHP 5.6.17 已正式发布,主要包含多个安全修复。强烈建议所有用户尽快升级至最新版本以确保系统安全。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 本文介绍了如何使用Python爬取妙笔阁小说网仙侠系列中所有小说的信息,并将其保存为TXT和CSV格式。主要内容包括如何构造请求头以避免被网站封禁,以及如何利用XPath解析HTML并提取所需信息。 ... [详细]
  • Nacos 0.3 数据持久化详解与实践
    本文详细介绍了如何将 Nacos 0.3 的数据持久化到 MySQL 数据库,并提供了具体的步骤和注意事项。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • 本文将介绍如何在混合开发(Hybrid)应用中实现Native与HTML5的交互,包括基本概念、学习目标以及具体的实现步骤。 ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • Spring – Bean Life Cycle
    Spring – Bean Life Cycle ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 本文介绍了如何在 macOS 上安装 HL-340 USB 转串口驱动,并提供了详细的步骤和注意事项。包括下载驱动、关闭系统完整性保护、安装驱动以及验证安装的方法。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
author-avatar
狂龙
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有