【hbase】hbase-2.2.1配置獨立的zookeeper的安裝與測試

下載hbase-2.2.1-bin.tar.gz並執行安裝命令:html

[hadoop@hadoop01 ~]$ tar -zxvf hbase-2.2.1-bin.tar.gz


查看安裝目錄:java

[hadoop@hadoop01 ~]$ cd hbase-2.2.1
[hadoop@hadoop01 hbase-2.2.1]$ ls -l
total 872
drwxr-xr-x. 4 hadoop hadoop   4096 Sep 10 14:26 bin
-rw-r--r--. 1 hadoop hadoop 128367 Sep  9 09:16 CHANGES.md
drwxr-xr-x. 2 hadoop hadoop    178 Sep 10 14:26 conf
drwxr-xr-x. 7 hadoop hadoop     80 Sep 10 14:28 hbase-webapps
-rw-rw-r--. 1 hadoop hadoop    262 May  2  2018 LEGAL
drwxrwxr-x. 6 hadoop hadoop   8192 Sep 21 23:30 lib
-rw-rw-r--. 1 hadoop hadoop 129312 Sep 10 14:31 LICENSE.txt
-rw-rw-r--. 1 hadoop hadoop 519346 Sep 10 14:31 NOTICE.txt
-rw-r--r--. 1 hadoop hadoop   1477 Sep  9 09:16 README.txt
-rw-r--r--. 1 hadoop hadoop  82873 Sep  9 09:16 RELEASENOTES.md



進入安裝目錄下conf,編輯hbase-env.sh、hbase-site、regionservers文件node

[hadoop@hadoop01 hbase-2.2.1]$ cd conf
[hadoop@hadoop01 conf]$ ls
hadoop-metrics2-hbase.properties  hbase-site.xml
hbase-env.cmd                     log4j.properties
hbase-env.sh                      regionservers
hbase-policy.xml

hbase-env.sh文件linux

[hadoop@hadoop01 conf]$ gedit hbase-env.sh
修改的內容:

export JAVA_HOME=/usr/java/jdk1.8.0_11/ export HBASE_MANAGES_ZK=false #flase表示使用獨立的zookeeper

hbase-site文件:web

[hadoop@hadoop01 conf]$ gedit hbase-site.xml
編輯內容:
<configuration>
        <property>
                <name>hbase.master</name>#hbasemaster的主機和端口
                <value>hadoop01:16010</value>
        </property>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://hadoop01:9000/hbase</value>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>#是否分佈式運行,false即爲單機
                <value>true</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>hadoop01,hadoop02,hadoop03</value>
        </property>  
        <property>
                <name>hbase.master.maxclockskew</name>
                <value>180000</value>
        </property>
<!--hbase.unsafe.stream.capability.enforce:使用本地文件系統設置爲false,使用hdfs設置爲true。
但根據HBase 官方手冊的說明:HBase 從2.0.0 開始默認使用的是asyncfs。-->
<property> <name>hbase.unsafe.stream.capability.enforce</name> <value>false</value>

</property>
</configuration>#共享目錄,持久化hbase數據#zookeeper地址#時間同步容許的時間差<description> Controls whether HBase will check for stream capabilities (hflush/hsync). Disable this if you intend to run on LocalFileSystem, denoted by a rootdir with the 'file://' scheme, but be mindful of the NOTE below. WARNING: Setting this to false blinds you to potential data loss and inconsistent system state in the event of process and/or node failures. If HBase is complaining of an inability to use hsync or hflush it's most likely not a false positive. </description>

注:咱們測試環境裏用的是HBase 2.2.1, 因此這裏雖然是集羣環境,也直接將該參數設置false,而後重啓Hbase Master,恢復正常。 或者使用版本小於2.0.0的HBase,也能夠避免出現這種錯誤shell

regionservers文件apache

[root@hadoop01 conf]# gedit regionservers
編輯內容爲:
hadoop02
hadoop03



配置環境變量:bash

[hadoop@hadoop01 ~]$ gedit ~/.bash_profile
文本須要添加的內容:
#hbase
export HBASE_HOME=/home/hadoop/hbase-2.2.1
export PATH=$HBASE_HOME/bin:$PATH
export HADOOP_CLASSPATH=$HBASE_HOME/lib/*
[hadoop@hadoop01 ~]$ source ~/.bash_profile



拷貝到其餘節點上:
[hadoop@hadoop01 ~]$ scp -r hbase-2.2.1 hadoop02:~/
[hadoop@hadoop01 ~]$ scp -r hbase-2.2.1 hadoop03:~/

啓動中止hbase命令:app

[hadoop@hadoop01 ~]$ cd ~/hbase-2.2.1
[hadoop@hadoop01 hbase-2.2.1]$ bin/start-hbase.sh --啓動hbase
[hadoop@hadoop01 hbase-2.2.1]$ jps --顯示進程
16720 ResourceManager
16866 NodeManager
19427 QuorumPeerMain --zookeeper進程
22387 Jps
16455 SecondaryNameNode
16075 NameNode
22062 HMaster --hbase進程
[hadoop@hadoop01 hbase-2.2.1]$ bin/stop-hbase.sh

注:啓動報以下異常webapp

java.lang.IllegalStateException: The procedure WAL relies on the ability to hsync for proper operation during component failures, but the underlying filesystem does not support doing so. Please check the config value of 'hbase.procedure.store.wal.use.hsync' to set the desired level of robustness and ensure the config value of 'hbase.wal.dir' points to a FileSystem mount that can provide it.

hbase-site.xml增長配置 

<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>


hbase網頁版網:http://192.168.1.100:16010/master-status
注:HBASE1.0以後的版本web端訪問的接口變動爲16010,192.168.1.100爲個人linux端口地址

啓動並測試hbase:

[hadoop@hadoop01 hbase-2.2.1]$ jps --查看進程HMaster是否啓動
11264 HMaster
11573 Jps
8566 DataNode
8426 NameNode
9642 QuorumPeerMain
8795 SecondaryNameNode
9053 ResourceManager
9197 NodeManager
[hadoop@hadoop01 hbase-2.2.1]$ hbase shell --進入shell模式
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/hadoop/hadoop-3.2.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/hadoop/hbase-2.2.1/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.2.1, rf93aaf770cce81caacbf22174dfee2860dbb4810, 2019年 09月 10日 星期二 14:28:27 CST
Took 0.0027 seconds                                                                                                                                                        
hbase(main):001:0> create 'test1','f11' --建立test1表
Created table test1
Took 2.8262 seconds                                                                                                                                                        
=> Hbase::Table - test1
hbase(main):002:0> list --顯示錶
TABLE                                                                                                                                                                      
test1                                                                                                                                                                      
1 row(s)
Took 0.0274 seconds                                                                                                                                                        
=> ["test1"]
hbase(main):003:0> put 'test1','id001','f11:uid','001' --插入數據
Took 0.2699 seconds                                                                                                                                                        
hbase(main):004:0> scan 'test1' --查看數據
ROW                                         COLUMN+CELL                                                                                                                    
 id001                                      column=f11:uid, timestamp=1569686397247, value=001                                                                             
1 row(s)
Took 0.0697 seconds                                                                                                                                                        
hbase(main):005:0> describe 'test1' --查看錶結構
Table test1 is ENABLED                                                                                                                                                     
test1                                                                                                                                                                      
COLUMN FAMILIES DESCRIPTION                                                                                                                                                
{NAME => 'f11', VERSIONS => '1', EVICT_BLOCKS_ON_CLOSE => 'false', NEW_VERSION_BEHAVIOR => 'false', KEEP_DELETED_CELLS => 'FALSE', CACHE_DATA_ON_WRITE => 'false', DATA_BLO
CK_ENCODING => 'NONE', TTL => 'FOREVER', MIN_VERSIONS => '0', REPLICATION_SCOPE => '0', BLOOMFILTER => 'ROW', CACHE_INDEX_ON_WRITE => 'false', IN_MEMORY => 'false', CACHE_
BLOOMS_ON_WRITE => 'false', PREFETCH_BLOCKS_ON_OPEN => 'false', COMPRESSION => 'NONE', BLOCKCACHE => 'true', BLOCKSIZE => '65536'}                                         

1 row(s)

QUOTAS                                                                                                                                                                     
0 row(s)
Took 0.1465 seconds                                                                                                                                                        
hbase(main):006:0> drop 'test1' --刪除表

ERROR: Table test1 is enabled. Disable it first.

For usage try 'help "drop"'

Took 0.0235 seconds                                                                                                                                                        
注:這裏刪除表失敗了,根據提示,如今表狀態爲有效,沒法刪除。必須先將test1表狀態失效才能成功刪除。

hbase(main):008:0> disable 'test1'
Took 1.3230 seconds                                                                                                                                                        
hbase(main):009:0> drop 'test1'
Took 0.9026 seconds                                                                                                                                                        
hbase(main):010:0> list
TABLE                                                                                                                                                                      
0 row(s)
Took 0.0111 seconds                                                                                                                                                        
=> []
hbase(main):011:0> exit --退出shell模式
[hadoop@hadoop01 hbase-2.2.1]$ 
相關文章
相關標籤/搜索