參考:
http://blog.csdn.net/chabale/article/details/8808620
http://www.cnblogs.com/netbloomy/p/6677883.html
HBase集群建立在hadoop集群基礎之上,所以在搭建HBase集群之前需要把Hadoop集群搭建起來,並且要考慮二者的兼容性.現在就以5台機器為例,搭建一個簡單的集群.
軟件版本:hadoop-2.8.0,hbase-1.3.0,zookeeper-3.4.10
5台機器IP:192.168.70.101(c7001)、192.168.70.102(c7002)、192.168.70.103(c7003)、192.168.70.104(c7004)、192.168.70.105(c7005)
一.搭建Hadoop集群
二.安裝zookeeper
三.部署hbase
1.解壓縮hbase的軟件包,使用命令:
tar -zxvf hbase-1.3.0-bin.tar.gz
2.進入hbase的配置目錄,在hbase-env.sh文件里面加入java環境變量.即:
export JAVA_HOME=/opt/jdk1.8.0_121
#Hbase日志目錄
export HBASE_LOG_DIR=/root/hadoop/hbase-0.94.6.1/logs
#如果使用HBase自帶的Zookeeper值設成true 如果使用自己安裝的Zookeeper需要將該值設為false
關閉HBase自帶的Zookeeper,使用Zookeeper集群:
export HBASE_MANAGES_ZK=false
3. 編輯hbase-site.xml ,添加配置文件:
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://c7001:8020/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.master</name> <value>hdfs://master:60000</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>c7003,c7004,c7005</value> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/opt/hbase-1.3.0/tmp/zk/data</value> </property> </configuration>
hbase.rootdir指定Hbase數據存儲目錄
hbase.cluster.distributed 指定是否是完全分布式模式,單機模式和偽分布式模式需要將該值設為false
hbase.master指定Master的位置
hbase.zookeeper.quorum 指定zooke的集群,多台機器以逗號分隔
4. 編輯配置目錄下面的文件regionservers. 命令:
vi regionservers
加入如下內容:
c7004
c7005
再修改Hadoop hdfs-site.xml下的一個屬性值。(記得其他的datanode也要進行修改)
<property> <name>dfs.datanode.max.xcievers</name> <value>4096</value> </property>
該參數限制了datanode所允許同時執行的發送和接受任務的數量,缺省為256,hadoop-defaults.xml中通常不設置這個參數。這個限制看來實際有些偏小,高 負載
5. 把Hbase復制到其他機器,命令如下:
[vagrant@c7003 opt]$ scp -r hbase-1.3.0 vagrant@c7004:/opt/
[vagrant@c7003 opt]$ scp -r hbase-1.3.0 vagrant@c7005:/opt/
6. 在c7003機器開啟hbase服務。命令如下:
啟動順序:先啟動Hadoop-》hbase,如果使用自己安裝的zookeeper啟動順序是:Hadoop-》zookeeper-》hbase
停止順序:hbase->zookeeper->hadoop
[vagrant@c7003 hbase-1.3.0]$ bin/start-hbase.sh
在c7003、c7004、c7005中的任意一台機器使用bin/hbase shell 進入hbase自帶的shell環境,然后使用命令version等,進行查看hbase信息及建立表等操作。
至此:
c7001、c7002、c7003、c7004、c7005集群各個進程情況如下所示: