Zookeeper下载地址 http://apache.fayea.com/zookeeper/
Habase下载地址 http://archive.apache.org/dist/hbase/
一、Zookeeper安装配置
集群上部署Zookeeper最好使用奇数台机器,这样如果有5台机器,只要3台正常工作则服务将正常。在目前的实际生产环境中,一个Hadoop集群最多有三台节点做备用master,即并不是所有节点都安装ZooKeeper;如果以实验为目的,可以将所有节点都安装ZooKeeper并作为master使用
并且Hadoop集群、Zookeeper ensemble、HBase集群是三个互相独立的集群,并不需要部署在相同的物理节点上,他们之间是通过网络通信的。
安装Hbase需要先安装Zookeeper
1.解压
在master解压Zookeeper
$tar -zxvf zookeeper-3.4.5.tar.gz /home/hadoop/
2.配置
到解压目录conf/下,修改文件
$cd zookeeper-3.4.5/conf/
$cp zoo-sample.cfg zoo.cfg
$vi zoo.cfg
#修改内容
dataDir=/home/hadoop/zookeeper-3.4.5/data #需要手动创建此文件夹
dataLogDir=/home/hadoop/zookeeper-3.4.5/log #需要手动创建此文件夹
server.0=master:2888:3888
server.1=slave1:2888:3888
server.2=slave2:2888:3888
在/home/hadoop/zookeeper-3.4.5/data目录下新建myid文件,内容为0,与zoo.cfg中添加的配置信息一致
$echo ”0” >/home/hadoop/zookeeper-3.4.5/data/myid #子节点中需要修改为1,2
$zkServer.sh start-foreground #遇到错误查看日志
将Zookeeper文件夹发送到子节点
$scp -r /home/hadoop/zookeeper-3.4.5 slave1:/home/hadoop/
$scp -r /home/hadoop/zookeeper-3.4.5 slave2:/home/hadoop/
环境变量添加
$vi /etc/profile
#添加
export ZOOKEEPER_HOME=/home/hadoop/zookeeper-3.4.5
export PATH=$PATH:$ZOOKEEPER_HOME/bin
$source /etc/profile
3.启动与测试
先启动hadoop
然后在每台机器上都要启动zookeeper
$zkServer.sh start
查看状态
$jps #看是否有进程QuorumPeerMain
$zkServer.sh status #查看状态
master
Mode:follower
slave1
Mode:leader
slave2
Mode:follower
停止命令
$zkServer.sh stop #每台机器都要
二、HBase安装配置
1.解压
$tar -zxvf hbase-1.0.1.tar.gz /home/hadoop/
2.配置
$cd /home/hadoop/hbase-1.0.1/conf
$vi hbase-env.sh
#修改添加以下内容
export HBASE_CLASSPATH=/home/hadoop/hadoop-2.6.5/etc/hadoop
export HBASE_PID_DIR=/var/hadoop/pids #需要创建此文件夹,并授权给hadoop用户
export JAVA_HOME=/java/jdk1.8.0_45/
export HBASE_MANAGES_ZK=false #不使用hbase自带的zookeeper
修改regionservers,配置HBase集群中哪台节点做RegionServer服务器
$vi regionservers
#修改为
slave1
slave2
修改hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://192.168.251.128:9000/hbase</value>
</property>
<property>
<name>hbase.master</name>
<value>hdfs://192.168.251.128:60000</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/data/zookeeper</value> #手动创建此文件夹,授予hadoop用户权限
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name> #设置HBase集群中哪些节点安装了ZooKeeper,只能设置为主机名而不是IP地址
<value>master,slave1,slave2</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
</configuration>
修改环境变量
$vi /etc/profile
#添加
export HBASE_HOME=/home/hadoop/hbase-1.0.1
export PATH=$PATH:$HBASE_HOME/bin
$source /etc/profile
发送到slave节点
scp -r /home/hadoop/hbase-1.0.1/ slave1:/home/hadoop/
scp -r /home/hadoop/hbase-1.0.1/ slave2:/home/hadoop/
在子节点中创建相关文件夹,修改环境变量
3.启动与测试
在master启动即可
$start-hbase.sh
在master节点将会看到HMaster进程,
在slave节点将会看到HregionServer进程
$hbase hbck #查看hbase状态
通过浏览器访问 http://master:60010 查看
三、启动与关闭顺序
start-all.sh #在master主机上启动
zkServer.sh start #在每一台机子启动
start-hbase.sh #在master主机上启动
关闭顺序 每台执行
stop-hbase.sh #在master主机上执行
zkServer.sh stop #在每一台机子执行
stop-all.sh #在master主机上执行