环境说明shell
系统为CentOS 6.0数据库
192.168.255.128 =》 server01apache
192.168.255.130 =》 server02bash
192.168.255.131 =》 server03服务器
/etc/hosts文件中有这些IP和域名的映射关系app
配置server01在hadoop用户下能够经过密钥无需密码访问server02和server03分布式
1. 安装配置zookeeperoop
在三台服务器上执行如下一样的操做测试
a. 下载cdn
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.xmlhbase.rootdirhdfs://server01:9000/hbase区域服务器使用存储HBase数据库数据的目录hbase.cluster.distributedtrue指定HBase运行的模式: false: 单机模式或者为分布式模式 true: 全分布模式hbase.zookeeper.quorumserver01,server02,server03ZooKeeper集群服务器的位置
编辑配置文件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