继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Hbase安装配置(含分布式ZooKeeper)

聊码
关注TA
已关注
手记 2
粉丝 0
获赞 0

环境说明

系统为CentOS 6.0

192.168.255.128  =》 server01
192.168.255.130  =》 server02
192.168.255.131  =》 server03

/etc/hosts文件中有这些IP和域名的映射关系

配置server01在hadoop用户下可以通过密钥无需密码访问server02和server03

1. 安装配置zookeeper

在三台服务器上执行以下同样的操作

a. 下载

wget http://apache.etoak.com//zookeeper/zookeeper-3.3.4/zookeeper-3.3.4.tar.gz -P /usr/local/src

b. 安装

cd /usr/local/src
tar zxvf zookeeper-3.3.4.tar.gz
mv zookeeper-3.3.4 /usr/local/zookeeper
chown -R hadoop:hadoop /usr/local/zookeeper

解压安装,目录的拥有者设置为zookeeper

c. 建立数据目录

mkdir /data/zookeeper
chown -R hadoop:hadoop /data/zookeeper

d. 修改配置文件

创建配置文件(注意:以下操作在hadoop用户中进行)

su - hadoop
ln -s /usr/local/zookeeper zookeeper
cd zookeeper/conf
cp zoo_sample.cfg zoo.cfg

编辑配置文件

vi zoo.cfg# 修改数据目录dataDir为以下值  dataDir=/data/zookeeper   # 添加以下段落  server.1=192.168.255.128:2887:3887  server.2=192.168.255.130:2888:3888  server.3=192.168.255.131:2889:3889

server.id=host:port:port标识不同的ZooKeeper服务器

需要在每个服务器的数据目录中(这边为/data/zookeeper)创建myid文件,文件的内容为以上对应的server.id中的id

vi /data/zookeeper/myid  # 值为各个服务器对应的server.id中的idid

e. 配置环境变量并启动ZooKeeper

vi .bashrc  export ZOOKEEPER_HOME=/usr/local/zookeeper  PATH=$PATH:$ZOOKEEPER_HOME/bin  exit  su - hadoop

需要在每一台机器上都启动

zkServer.sh start

f. 验证

zkCli.sh -server 192.168.255.128:2181

[zk: 192.168.255.128:2181(CONNECTED) 0] help

......

显示帮助内容

2. 安装HBase

同样也是三台服务器执行同样的操作

a. 下载

wget http://apache.etoak.com//hbase/hbase-0.90.5/hbase-0.90.5.tar.gz -P /usr/local/src

b. 安装

cd /usr/local/src
tar zxvf hbase-0.90.5.tar.gz
mv hbase-0.90.5 /usr/local/hbase
chown -R hadoop:hadoop /usr/loca/hbase

c. 配置文件

su - hadoop
ln -s /usr/local/hbase hbase
cd hbase/conf

编辑配置文件hbase-site.xml

vi hbase-site.xml<configuration>   <property>     <name>hbase.rootdir</name>     <value>hdfs://server01:9000/hbase</value>     <description>区域服务器使用存储HBase数据库数据的目录</description>   </property>   <property>     <name>hbase.cluster.distributed</name>     <value>true</value>     <description>指定HBase运行的模式:                 false: 单机模式或者为分布式模式                                    true: 全分布模式      </description>   </property>   <property>     <name>hbase.zookeeper.quorum</name>     <value>server01,server02,server03</value>     <description>ZooKeeper集群服务器的位置</description>   </property> </configuration>

编辑配置文件regionservers

vi regionservers  server02  server03

设置环境变量hbase-env.sh

vi hbase-evn.sh  export HBASE_MANAGES_ZK=false

使用独立的ZooKeeper时需要修改HBASE_MANAGES_ZK值为false,为不使用默认ZooKeeper实例。

d. hadoop和hbase版本匹配问题

使用的版本信息如下:

hadoop-0.20.205.0.tar.gz
hbase-0.90.5.tar.gz

需要将hadoop主目录下的hadoop-core-0.20.205.0.jar和主目录中lib目录下的commons-configuration-1.6.jar复制到HBase主目录的lib目录中,并删除原来的hbase主目录的lib目录下的hadoop-core-0.20-append-r1056497.jar。

否则,会出现两个错误,不能连接zookeeper和找不到common.configuration对应的类

e. 修改hadoop用户环境变量并启动HBase

vi .bashrc  export HBASE_HOME=/usr/local/hbase  PAHT=$PATH:$HBASE_HOME/bin

exit
su - hadoop

以上使(先退出hadoop用户到root,然后登陆到hadoop用户)环境变量生效

需要先启动ZooKeeper(已经启动)和hdfs文件系统

注意:以下两个命令只需要在server01下启动

start-dfs.sh
start-hbase.sh

f. 测试

hbase shell
hbase(main):001:0> status
2 servers, 0 dead, 1.0000 average load


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP