自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Apache HBase 入門

大數(shù)據(jù)
HQuorumPeer 進程是由 HBase 控制及啟動的 ZooKeeper 實例。如果你以這種方式使用 ZooKeeper,則每個集群節(jié)點限制只有一個實例,且只有測試時才合適。如果 ZooKeeper 不在 HBase 下運行,則進程名稱為 HQuorumPeer 。

[[184946]]

介紹

Quickstart 將使您運行一個單節(jié)點,獨立的 HBase 實例。

這一節(jié)描述了單節(jié)點獨立 HBase 的設(shè)置。 獨立的 實例具有所有的 HBase 守護進程 —— Master,RegionServers,和 ZooKeeper —— 運行于一個單獨的JVM 持久化到本地文件系統(tǒng)。它是我們的大多數(shù)基本部署配置文件。我們將向你展示如何使用 hbase shell CLI 在 HBase 中創(chuàng)建一個表,向表中插入行,對表執(zhí)行 put 和 scan 操作,啟用或禁用表,以及啟動和停止 HBase。

除了下載 HBase,這個過程應(yīng)該耗費不超過 10 分鐘。

在 0.94.x 之前,HBase 期望環(huán)回 IP 地址是 127.0.0.1 。Ubuntu 和 其它一些發(fā)行版默認(rèn)為 127.0.1.1 ,而這將導(dǎo)致一些問題。參考 HBase 為什么關(guān)心 /etc/hosts ? 一文來了解更多信息。

在 Ubuntu 上,對于 0.94.x 和之前的版本,下面的 /etc/hosts 可以工作。如果遇到了問題,可以使用這個作為模板。

  1. 127.0.0.1 localhost 
  2. 127.0.0.1 ubuntu.ubuntu-domain ubuntu 

這個問題已經(jīng)在 hbase-0.96.0 及之后的版本中修復(fù)了。

JDK 版本要求

HBase 要求安裝 JDK。參考 Java 來了解關(guān)于支持的 JDK 版本的信息。

HBase 入門

過程:下載,配置,以獨立模式啟動 HBase

1.在 Apache下載鏡像 的列表中選擇一個下載站點。點擊頂部的建議鏈接。這將帶你到一個 HBase Release 鏡像。點擊名為 stable 的目錄,然后下載以 .tar.gz 結(jié)尾的二進制文件到你的本地文件系統(tǒng)。目前先不要下載以 src.tar.gz 結(jié)尾的文件。

2.解壓縮下載的文件,然后進入新創(chuàng)鍵的文件夾。

  1. $ tar xzvf hbase-1.2.4-bin.tar.gz  
  2. $ cd hbase-1.2.4 

3.你需要在啟動 HBase 之前設(shè)置 JAVA_HOME 環(huán)境變量。你可以通過你的操作系統(tǒng)的常用機制設(shè)置環(huán)境變量,但是 HBase 提供了一個中心機制, conf/hbase-env.sh 。編輯這個文件,取消注釋以 JAVA_HOME 開頭的行,并將它設(shè)置為你的操作系統(tǒng)的適當(dāng)位置。 JAVA_HOME 環(huán)境變量應(yīng)該被設(shè)置為包含可執(zhí)行文件 bin/java 的文件夾。大多數(shù)現(xiàn)代 Linux 操作系統(tǒng)提供了某種機制,比如 RHEL 或 CentOS 上的 /usr/bin/alternatives ,來透明地在 Java 這樣的可執(zhí)行文件的不同版本間進行切換。在這種情況下,你可以將 JAVA_HOME 設(shè)置為包含到 bin/java 的符號鏈接的目錄,通常是 /usr 。

  1. JAVA_HOME=/usr 

編輯 conf/hbase-site.xml ,它是主 HBase 配置文件。此時,你只需要指定本地文件系統(tǒng)中 HBase 和 ZooKeeper 寫數(shù)據(jù)的文件夾。默認(rèn)情況下,將在 /tmp 下創(chuàng)建一個新的文件夾。許多服務(wù)器被配置為在重啟之后刪除 tmp 下的內(nèi)容,因而你應(yīng)該將數(shù)據(jù)存儲在其它地方。下面的配置將把 HBase 的數(shù)據(jù)存儲在 hbase 目錄下,在名為 testuser 的用戶的主目錄下。粘貼 <configuration> 標(biāo)簽下的 <property> 標(biāo)簽,在新的 HBase 安裝中它應(yīng)該是空的。

示例1. 獨立 HBase 的 hbase-site.xml 示例

  1. <configuration> 
  2.   <property> 
  3.     <name>hbase.rootdir</name
  4.     <value>file:///home/testuser/hbase</value> 
  5.   </property> 
  6.   <property> 
  7.     <name>hbase.zookeeper.property.dataDir</name
  8.     <value>/home/testuser/zookeeper</value> 
  9.   </property> 
  10. </configuration> 

你無需創(chuàng)建 HBase 數(shù)據(jù)文件夾。HBase 將為你做這些。如果你創(chuàng)建了目錄,HBase 將嘗試執(zhí)行遷移,這不是你想要的。

上面例子中的 hbase.rootdir 指向 本地文件系統(tǒng) 中的目錄。’file:/‘ 前綴是我們?nèi)绾伪硎颈镜匚募到y(tǒng)的方式。要將 HBase 放置于已有 HDFS 實例上,則設(shè)置 hbase.rootdir 指向你的實例上的目錄:比如, hdfs://namenode.example.org:8020/hbase 。更多關(guān)于這一變體的信息,參考下面關(guān)于 基于 HDFS 的獨立 HBase 的小節(jié)。

1.HBase 提供了一種方便的方式,即 bin/start-hbase.sh 腳本來啟動HBase。發(fā)出命令,如果一切正常,將有一條消息打印到標(biāo)準(zhǔn)輸出顯示 HBase 啟動成功。你可以使用 jps 命令來驗證你有一個稱為 HMaster 的運行進程。在獨立模式 HBase 在這個單獨的 JVM 內(nèi)運行所有的守護進程,比如,HMaster,一個單獨的 HRegionServer,和 ZooKeeper 守護進程。進入 http://localhost:16010 來查看 HBase Web UI。

  1. $ bin/start-hbase.sh  
  2. starting master, logging to /media/data/dev_tools/hbase-1.2.4/bin/../logs/hbase-hanpfei0306-master-ThundeRobot.out 
  3. OpenJDK 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0 
  4. OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0 
  5. Could not start ZK at requested port of 2181.  ZK was started at port: 2182.  Aborting as clients (e.g. shell) will not be able to find this ZK quorum. 

需要安裝 Java 且其處于可用狀態(tài)。如果你遇到了一個錯誤,指示 Java 沒有安裝,但它已經(jīng)在你的系統(tǒng)中了,則可能位于非標(biāo)準(zhǔn)位置,編輯 conf/hbase-env.sh 文件并修改 JAVA_HOME 設(shè)置,使其指向包含了你的系統(tǒng)的 bin/java 的目錄。

過程:首次使用 HBase

1.連接 HBase

使用 hbase shell 命令連接運行中的 HBase 實例,它位于你的 HBase 安裝的 bin/ 目錄下。在本示例中,省略了一些啟動 HBase Shell 時打印的用法和版本信息。HBase Shell 提示以一個 > 字符結(jié)尾。

  1. $ bin/hbase shell  
  2. hbase(main):001:0> 

2.顯示 HBase Shell 幫助文本

鍵入 help 并按回車,來顯示一些 HBase Shell 基本的用法信息,以及一些命令示例。注意所有的表名,行,列必須用單引號字符引起來。

3.創(chuàng)建表

使用 create 命令創(chuàng)建一個新表。你必須指定表名和 ColumnFamily 名。

  1. hbase(main):002:0> create 'test''cf' 
  2. 0 row(s) in 1.3540 seconds  
  3. => Hbase::Table - test 

列出關(guān)于表的信息

使用 list 命令來做到這一點:

  1. => Hbase::Table - test 
  2. hbase(main):003:0> list 
  3. TABLE  
  4. test  
  5. 1 row(s) in 0.0150 seconds  
  6. => ["test"

1.向表中放入數(shù)據(jù)

要向表中放入數(shù)據(jù),使用 put 命令。

  1. hbase(main):004:0> put 'test''row1''cf:a''value1' 
  2. 0 row(s) in 0.0990 seconds  
  3. hbase(main):005:0> put 'test''row2''cf:b''value2' 
  4. 0 row(s) in 0.0080 seconds  
  5. hbase(main):006:0> put 'test''row3''cf:c''value3' 
  6. 0 row(s) in 0.0050 seconds 

這里,我們插入了三個值,每次一個。第一次插入在 row1 ,列 cf:a ,值為 value1 。HBase中的列由列族前綴,本示例中是 cf ,后跟一個逗號,及列限定符后綴,本示例中是 a 組成。

1.一次掃描表的所有數(shù)據(jù)

從 HBase 獲取數(shù)據(jù)的一種方式是掃描。使用 scan 命令掃描表的數(shù)據(jù)。你可以限定你的掃描,但現(xiàn)在,獲取所有數(shù)據(jù)。

  1. hbase(main):008:0> scan 'test' 
  2. ROW                                           COLUMN+CELL 
  3.  row1                                         column=cf:a, timestamp=1488785612445, value=value1 
  4.  row2                                         column=cf:b, timestamp=1488785622781, value=value2 
  5.  row3                                         column=cf:c, timestamp=1488785633890, value=value3 
  6. 3 row(s) in 0.0220 seconds 

1.獲得單行數(shù)據(jù)

要一次獲得單行數(shù)據(jù),使用 get 命令。

  1. hbase(main):009:0> get 'test''row1' 
  2. COLUMN                                        CELL 
  3.  cf:a                                         timestamp=1488785612445, value=value1 
  4. 1 row(s) in 0.0160 seconds 

1.禁用表

如果你想要刪除表或修改它的設(shè)置,以及一些其它情形,你需要先禁用表,使用 disable 命令。你可以使用 enable 命令重新啟用它。

  1. hbase(main):010:0> disable 'test' 
  2. 0 row(s) in 2.2380 seconds  
  3. hbase(main):011:0> enable 'test' 
  4. 0 row(s) in 1.2260 seconds 

如果你測試上面的 enable 命令則再次禁用表:

  1. hbase(main):012:0> disable 'test' 
  2. 0 row(s) in 2.2200 seconds 

1.丟棄表

要丟棄(刪除)表,則使用 drop 命令。

  1. hbase(main):013:0> drop 'test' 
  2. 0 row(s) in 1.2280 seconds 

1.退出 HBase Shell

要退出 HBase Shell 并從你的集群斷開,使用 quit 命令。HBase 依然在后臺運行。

過程:停止 HBase

1.與提供 bin/start-hbase.sh 腳本來方便地啟動 所有 HBase 守護進程的方式相同, bin/stop-hbase.sh 腳本用來停止它們。

  1. $ ./bin/stop-hbase.sh 
  2. stopping hbase................ 

1.發(fā)起了這個命令之后,它可能花費幾分鐘來執(zhí)行關(guān)閉。使用 jps 來確保 HMaster 和 HRegionServer 進程的關(guān)閉。

上文已經(jīng)向你展示了如何啟動和停止一個獨立的 HBase 實例。下一節(jié)我們給出 hbase 部署的其它模式的快速概述。

偽分布式本地安裝

在學(xué)習(xí)了快速啟動獨立模式的工作后,你可以重新配置 HBase 以偽分布式模式運行。偽分布式模式意味著 HBase 依然完全運行于單獨的主機上,但每個 HBase 守護進程(HMaster,HRegionServer,和 ZooKeeper )運行于分開的進程中:在獨立模式下所有的守護進程運行于一個 jvm 進程/實例中。默認(rèn)情況下,除非像 快速開始 一節(jié)所述那樣配置了 hbase.rootdir 屬性,你的數(shù)據(jù)依然存儲于 /tmp 下面。在本文的稍后部分,我們將把你的數(shù)據(jù)存儲于 HDFS 上,假設(shè)你有 HDFS 可用。你可以跳過 HDFS 配置來繼續(xù)將數(shù)據(jù)存儲在本地文件系統(tǒng)。

Hadoop配置

這個過程假設(shè)你已經(jīng)在你的本地系統(tǒng)和/或遠(yuǎn)程系統(tǒng)中,配置好了 Hadoop 和 HDFS,它們正在運行且可訪問。它還假設(shè)你在使用 Hadoop 2.Hadoop 文檔中關(guān)于 設(shè)置單節(jié)點集群 的指南是一個很好的起點。

1.如果正在運行的話就停止 HBase

如果你已經(jīng)學(xué)完了 快速開始 且 HBase 依然處于運行狀態(tài),則停止它。本過程將創(chuàng)建一個全新的 HBase 存儲數(shù)據(jù)目錄,因此你之前創(chuàng)建的任何數(shù)據(jù)庫都會丟失。

2.配置 HBase

編輯 hbase-site.xml 配置。首先,添加下面的屬性,它指導(dǎo) HBase 運行于分布式模式,每個守護進程一個 JVM 實例。

  1. <property> 
  2.   <name>hbase.cluster.distributed</name
  3.   <value>true</value> 
  4. </property> 

接下來,將 hbase.rootdir 從本地文件系統(tǒng)修改為你的 HDFS 實例,使用 hdfs://// URI 語法。在本例中,HDFS 運行于 localhost 的端口 8020。

  1. <property> 
  2.   <name>hbase.rootdir</name
  3.   <value>hdfs://localhost:8020/hbase</value> 
  4. </property> 

你無需在 HDFS 下創(chuàng)建目錄。HBase 將為你做這些。如果你創(chuàng)建了目錄,HBase 將嘗試執(zhí)行遷移,這不是你想要的。

1.啟動 HBase

使用 bin/start-hbase.sh 命令啟動 HBase。如果你的系統(tǒng)配置正確,則 jps 命令應(yīng)該顯示 HMaster 和 HRegionServer 進程正在運行。

2.檢查 HDFS 中的 HBase 目錄

如果一切進展順利,HBase 已經(jīng)在 HDFS 中創(chuàng)建了它的目錄。在上面的配置中,它被存儲在了 HDFS 上的 /hbase/ 。你可以使用 Hadoop 的 bin/ 目錄下的 hadoop fs 命令列出這個目錄。

  1. $ ./bin/hadoop fs -ls /hbase 
  2. Found 7 items 
  3. drwxr-xr-x   - hbase users          0 2014-06-25 18:58 /hbase/.tmp 
  4. drwxr-xr-x   - hbase users          0 2014-06-25 21:49 /hbase/WALs 
  5. drwxr-xr-x   - hbase users          0 2014-06-25 18:48 /hbase/corrupt 
  6. drwxr-xr-x   - hbase users          0 2014-06-25 18:58 /hbase/data 
  7. -rw-r--r--   3 hbase users         42 2014-06-25 18:41 /hbase/hbase.id 
  8. -rw-r--r--   3 hbase users          7 2014-06-25 18:41 /hbase/hbase.version 
  9. drwxr-xr-x   - hbase users          0 2014-06-25 21:49 /hbase/oldWALs 

3.創(chuàng)建表并用數(shù)據(jù)填充

你可以使用 HBase Shell 創(chuàng)建表,填充數(shù)據(jù),掃描并從中獲取值,使用與 shell 練習(xí)中相同的過程。

4.啟動和停止備份 HBase Master(HMaster)服務(wù)器

在生產(chǎn)環(huán)境中,在相同的硬件上運行多個 HMaster 實例沒有意義,以運行偽分布式集群那樣的方式對于生產(chǎn)環(huán)境同樣沒有意義。這個步驟只是為了測試和學(xué)習(xí)目的而提供。

HMaster 服務(wù)器控制 HBase 集群。你可以啟動最多 9 個備份 HMaster 服務(wù)器,這將有總共 10 個 HMaster,算上主要的那個。要啟動一個備份 HMaster,使用 local-master-backup.sh 。對于每個你想要啟動的備份master,添加一個參數(shù)來表示那個 master 的端口偏移。每個 HMaster 使用三個端口(默認(rèn)是16010,16020,16030)。端口偏移會加到這些端口上,因此,使用 2 作為偏移量的話,備份 HMaster 將使用 16012,16022, 和16032。下面的命令啟動 3 個備份服務(wù)器,使用端口 16012/16022/16032,16013/16023/16033,和 16015/16025/16035。

  1. $ ./bin/local-master-backup.sh 2 3 5 

要殺死備份 master,而不殺死整個集群,你需要找到它的進程 ID(PID)。PID 存儲在一個名字類似于 /tmp/hbase-USER-X-master.pid 的文件中。文件僅有的內(nèi)容是 PID。你可以使用 kill -9 命令來殺死那個 PID。下面的命令將殺死端口偏移為 1 的 master,但集群依然在運行:

  1. $ cat /tmp/hbase-testuser-1-master.pid |xargs kill -9 

1.啟動和停止額外的 RegionServers

HRegionServer 按照 HMaster 的指示管理在它的 StoreFiles 中的數(shù)據(jù)。通常,集群中的每個節(jié)點運行一個 HRegionServer 。在相同的系統(tǒng)上運行多個 HRegionServers 可能對于在偽分布式模式中的測試比較有用。 local-regionservers.sh 命令允許你運行多個 RegionServers 。它與 local-master-backup.sh

命令的工作方式類似,在那種情況下你提供的每個參數(shù)表示一個實例的端口偏移。每個 RegionServer 需要兩個端口,默認(rèn)端口是 16020 和 16030。然而,額外的 RegionServers 的基端口不是默認(rèn)端口,因為默認(rèn)端口已經(jīng)被 HMaster 占用了,自 HBaser 版本 1.0.0 開始,它也是一個 RegionServer。使用端口 16200 和 16300 來代替。你可以在一個服務(wù)器上運行 99 個額外的非 HMaster 或 備份 HMaster 的 RegionServers。下面的命令啟動四個額外 RegionServers,運行在從16202/16302開始的順序端口(基本端口16200/16300加2)。

  1. $ .bin/local-regionservers.sh start 2 3 4 5 

要手動地停止一個 RegionServer,使用 local-regionservers.sh 命令并傳入 stop 參數(shù)和要停止的服務(wù)器的偏移。

  1. $ .bin/local-regionservers.sh stop 3 

1.停止 HBase

捏可以使用與 快速開始 中介紹的相同的方法停止 HBase,使用 bin/stop-hbase.sh 命令。

高級 - 完全分布式

事實上,你需要一個完全分布式的配置來完整測試 HBase 并在真實世界的場景中使用它。在一個分布式的配置中,集群包含多個節(jié)點,它們中的每個都運行一個或多個 HBase 守護進程。這些包括主和備份 Master 實例,多個 ZooKeeper 節(jié)點,和多個 RegionServer 節(jié)點。

這個高級的 快速開始 為你的集群添加兩個額外的節(jié)點。架構(gòu)將像下面這樣:

表 1. 分布式集群 Demo 架構(gòu)

Node Name Master ZooKeeper RegionServer
node-a.example.com yes yes no
node-b.example.com backup yes yes
node-c.example.com no yes yes

這個 快速開始 假設(shè)每個節(jié)點是一個虛擬機,且它們都在相同的網(wǎng)絡(luò)上。它基于前面的 快速開始 構(gòu)建, 偽分布式本地安裝 ,假設(shè)在那個過程里你配置的系統(tǒng)現(xiàn)在是 node -a 。在繼續(xù)之前停止 node-a 上的 HBase。

確保所有的節(jié)點具有完整的通信權(quán)限,且沒有防火墻規(guī)則可能阻止它們之間相互對話。如果你看到了類似 no route to host 的錯誤提示,則檢查你的防火墻。

過程:配置無密碼 SSH 訪問

node-a 需要能夠登入 node-b 和 node-c (以及其自身) 來啟動守護進程。完成這一點最簡單的方式是在所有主機上使用相同的用戶名,并配置從 node-a 無密碼 SSH 登錄到其它主機。

在 node-a 上生成一個密鑰對

當(dāng)以運行 HBase 的用戶登錄時,生成一個 SSH 密鑰對,使用如下的命令:

  1. $ ssh-keygen -t rsa 

如果命令成功,則密鑰對的位置將打印到標(biāo)準(zhǔn)輸出。默認(rèn)的公鑰名字是 id_rsa.pub 。

在其它節(jié)點上創(chuàng)建放置共享密鑰的目錄。

在 node-b 和 node-c 上,以 HBase 用戶登錄,并在用戶的主目錄創(chuàng)建一個 .ssh/ 目錄,如果它還沒有存在的話。如果它已經(jīng)存在了,請注意它可能已經(jīng)包含了其它密鑰。

1.將公鑰拷貝到其它節(jié)點。

安全地將公鑰從 node-a 拷貝到每個其它節(jié)點,通過使用 scp 或其它安全的方式。在其它的每個節(jié)點上,創(chuàng)建一個新的名為 .ssh/authorized_keys 的文件,如果它還沒有存在的話,并將id_rsa.pub 文件的內(nèi)容添加到它的末尾。注意你也需要對 node-a 自身做這些。

  1. $ cat id_rsa.pub >>~/.ssh/authorized_keys 

2.測試無密碼登錄。

如果你正確地執(zhí)行了過程,如果你從 node-a SSH 到其它的節(jié)點,使用相同的用戶名,那么你應(yīng)該不會再看到輸入密碼的提示符了。

由于 node-b 將運行一個備份 Master,重復(fù)上面的過程,將你看到的 node-a 的地方替換為 node-b 。確保不要重寫了已有的 .ssh/authorized_keys 文件,使用 >> 操作符將新的密鑰附接在已有文件,而不是 > 操作符。

過程:準(zhǔn)備 node-a

node-a 將運行你的主 master 和 ZooKeeper 進程,但沒有 RegionServers。停止在 node-a 上啟動 RegionServer。

1.編輯 conf/regionservers 并移除包含 localhost 的行。添加包含 node-b 和 node-c 的主機名和 IP 地址的行。

即使你不想在 node-a 上運行 RegionServer,你應(yīng)該通過其它服務(wù)器將用以與它通信的主機名引用它。在這個例子中,那將是 node-a.example.com 。這使您能夠?qū)⑴渲梅职l(fā)到集群的每個節(jié)點,任何主機名沖突。保存文件。

1.配置 HBase 使用 node-b 作為備份 master。

創(chuàng)建一個新的文件 conf/ called backup-masters ,添加新的包含 node-b 的主機名的行。在這個示例中,主機名是 node-b.example.com 。

1.配置 ZooKeeper

事實上,你應(yīng)該小心地考慮你的 ZooKeeper 配置。你可以在 zookeeper 中找到更多關(guān)于配置 ZooKeeper 的東西。這個配置將指導(dǎo) HBase 在集群的每個節(jié)點上啟動并管理一個 ZooKeeper 實例。

在 node-a 上,編輯 conf/hbase-site.xml 并添加如下的屬性。

  1. <property> 
  2.   <name>hbase.zookeeper.quorum</name
  3.   <value>node-a.example.com,node-b.example.com,node-c.example.com</value> 
  4. </property> 
  5. <property> 
  6.   <name>hbase.zookeeper.property.dataDir</name
  7.   <value>/usr/local/zookeeper</value> 
  8. </property> 

1.你的配置中其它用 localhost 引用 node-a 的地方,修改引用指向其它節(jié)點將用以引用 node-a 的主機名。在這些例子中,主機名是 node-a.example.com 。

過程:準(zhǔn)備 node-b 和 node-c

node-b 將運行一個備份 master 服務(wù)器和一個 ZooKeeper 實例。

1.下載并解壓縮 HBase。

下載并解壓縮 HBase 到 node-b ,就像你在 獨立和偽分布式快速開始中做的那樣。

1.將配置文件從 node-a 復(fù)制到 node-b 和 node-c 。

你的集群的每個節(jié)點需要具有相同的配置信息。復(fù)制 conf/ 目錄的內(nèi)容到 node-b 和 node-c 上的 conf/ 目錄。

過程:啟動并測試你的集群

1.確保 HBase 沒有在任何節(jié)點上運行。

如果你忘了在前面的測試中停止 HBase,你將遇到錯誤。使用 jps 命令檢查 HBase 是否在你的任何節(jié)點上運行。查找進程 HMaster,HRegionServer,和 HQuorumPeer。如果它們存在則殺掉它們。

1.啟動集群。

在 node-a 上,發(fā)出 start-hbase.sh 命令。你的輸出將類似下面這樣。

  1. $ bin/start-hbase.sh 
  2. node-c.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-zookeeper-node-c.example.com.out 
  3. node-a.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-zookeeper-node-a.example.com.out 
  4. node-b.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-zookeeper-node-b.example.com.out 
  5. starting master, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-master-node-a.example.com.out 
  6. node-c.example.com: starting regionserver, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-regionserver-node-c.example.com.out 
  7. node-b.example.com: starting regionserver, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-regionserver-node-b.example.com.out 
  8. node-b.example.com: starting master, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/../logs/hbase-hbuser-master-nodeb.example.com.out 

ZooKeeper 先啟動,然后是 master,接著是 RegionServers,最后是備份 masters。

1.驗證進程正在運行。

在集群的每個節(jié)點上,運行 jps 命令并驗證正確的進程正在每個服務(wù)器上運行。你也可能看到其它的 Java 進程正在你的服務(wù)器上運行,如果它們用于其它目的。

實例 2. node-a jps 輸出

  1. $ jps  
  2. 20355 Jps  
  3. 20071 HQuorumPeer  
  4. 20137 HMaster 

實例 3. node-b jps 輸出

  1. $ jps 
  2. 15930 HRegionServer 
  3. 16194 Jps 
  4. 15838 HQuorumPeer 
  5. 16010 HMaster 

實例 4. node-a jps 輸出

  1. $ jps 
  2. 13901 Jps 
  3. 13639 HQuorumPeer 
  4. 13737 HRegionServer 

ZooKeeper 進程名

HQuorumPeer 進程是由 HBase 控制及啟動的 ZooKeeper 實例。如果你以這種方式使用 ZooKeeper,則每個集群節(jié)點限制只有一個實例,且只有測試時才合適。如果 ZooKeeper 不在 HBase 下運行,則進程名稱為 HQuorumPeer 。更多關(guān)于 ZooKeeper 配置的內(nèi)容,包括在 HBase 下使用一個外部的 ZooKeeper 實例,請參考 zookeeper 。

1.瀏覽 Web UI。

Web UI 端口改變

Web UI 端口改變

在版本新于 0.98.x 的 HBase 中,HBase Web UI 使用的 HTTP 端口從 Master 采用60010,每個 RegionServer 采用 60030 變?yōu)榱?Master 采用 16010 且 RegionServer 采用 16030。

如果所有的東西都設(shè)置正確,你應(yīng)該能夠連接到 Master 的 UI http://node-a.example.com:16010/ 或從 master 的 http://node-b.example.com:16010/,使用瀏覽器。如果你能夠通過 localhost 連接,但無法通過其它主機名,則檢查你的防火墻規(guī)則。你可以在它們的 IP 地址的端口上 16030 看到每個 RegionServers 的 web UI,或點擊 Master 的 web UI 中它們的鏈接。

當(dāng)節(jié)點或服務(wù)消失時測試發(fā)生了什么。

 

具有三個節(jié)點的集群,就像你配置的那樣,不是非常有彈性的。當(dāng)主 Master 或 RegionServer 消失時,你依然可以通過殺掉進程或看 logs,測試發(fā)生了什么。

責(zé)任編輯:武曉燕 來源: 網(wǎng)絡(luò)大數(shù)據(jù)
相關(guān)推薦

2020-04-01 10:28:12

Apache HBas數(shù)據(jù)結(jié)構(gòu)算法

2015-05-27 11:31:32

Apache HBas信息泄漏漏洞

2019-11-13 15:44:17

Kafka架構(gòu)數(shù)據(jù)

2018-03-30 09:42:05

2018-06-12 11:01:55

HBase誤刪數(shù)據(jù)

2013-08-30 09:41:46

JavaApache CameApache

2023-10-05 18:25:40

存儲分開存儲SSD

2022-09-28 09:12:16

HBase分布式數(shù)據(jù)庫數(shù)據(jù)庫

2014-02-14 15:12:41

ApacheMesos架構(gòu)

2014-02-14 15:43:16

ApacheSpark

2023-02-26 11:50:04

Hbase程序Oracle

2013-04-26 10:59:54

目錄遍歷漏洞

2016-11-09 14:16:39

HBase集群管理

2016-12-14 15:59:31

HBase分布式數(shù)據(jù)

2009-07-23 14:39:57

Apache支持ASP

2017-04-11 09:17:07

Apache Beam剖析Flink

2022-06-01 13:52:11

開源大數(shù)據(jù)

2015-06-08 15:13:27

2017-06-27 21:20:22

zl

2017-06-26 15:00:17

點贊
收藏

51CTO技術(shù)棧公眾號