HBase增強版(Lindorm)支持的分組功能可以用來解決多租戶隔離問題,通過劃分RegionServer到不同的分組,每個分組上存儲不同的表,從而達(dá)到資源隔離的目的。本文介紹管理分組功能。

背景信息

當(dāng)多個用戶或者多個業(yè)務(wù)同時使用同一個HBase增強版(Lindorm)集群時,往往存在資源爭搶的問題。一些重要的在線業(yè)務(wù)讀寫操作可能會被離線業(yè)務(wù)批量讀寫所影響。針對這一問題,HBase增強版(Lindorm)推出了分組功能。如下圖所示,創(chuàng)建Group1并把RegionServer1和RegionServer2劃分到Group1中,創(chuàng)建Group2并把RegionServer3和RegionServer4劃分到Group2。同時把Table1和Table2也移動到Group1。Table1和Table2的所有Region都只會分配到Group1中的RegionServer1和RegionServer2機器上。同理,Table3和Table4的所有Region都只會分配到Group2中的RegionServer3和RegionServer4機器上。所以發(fā)送到Table1和Table2的請求,只會由RegionServer1和RegionServer2服務(wù)響應(yīng),而發(fā)送到Table3和Table4的請求,只會由RegionServer3和RegionServer4服務(wù)響應(yīng),從而達(dá)到資源隔離的目的。分組管理架構(gòu)圖

前提條件

已登錄目標(biāo)集群的集群管理系統(tǒng),具體操作,請參見登錄集群管理系統(tǒng)。

查看分組信息

  1. 在集群管理系統(tǒng)的左側(cè)導(dǎo)航欄中,選擇集群管理 > 分組節(jié)點管理。
  2. 數(shù)據(jù)概覽區(qū)域中可以看到當(dāng)前集群所有的分組信息。
    說明 如果您沒有創(chuàng)建過分組,系統(tǒng)會默認(rèn)創(chuàng)建一個分組,該分組名稱為default,所有的RegionServer和表都會歸屬到這個分組中。
    分組概覽

創(chuàng)建分組

  1. 在集群管理系統(tǒng)的左側(cè)導(dǎo)航欄中,選擇集群管理 > 分組節(jié)點管理。
  2. 單擊頁面右側(cè)的+添加。添加分組節(jié)點
  3. 新建分組對話框中輸入分組名。添加分組名
  4. 單擊確定
    說明 創(chuàng)建分組后,分組中的Server數(shù)量和Table數(shù)量都為0,需要您將Server和Table移動到該分組中。

刪除分組

重要 只有分組中的所有Server和Table都被移出(也就是Server數(shù)和Table數(shù)為0),分組才能被刪除。
  1. 在集群管理系統(tǒng)的左側(cè)導(dǎo)航欄中,選擇集群管理 > 分組節(jié)點管理。
  2. 單擊目標(biāo)分組中操作列的刪除。刪除分組
  3. 在對話框中單擊確定。

移動RegionServer的分組

重要
  • 默認(rèn)狀態(tài)下,所有的RegionServer都屬于default分組,您需要將RegionServer移動到對應(yīng)的分組中才能使用。
  • 如果您將Table移動到一個沒有RegionServer的分組中,那么該表的Region會由于沒有服務(wù)器可以上線而無法訪問。
  • 建議每個分組至少有兩臺RegionServer機器,當(dāng)一臺RegionServer機器無法運行時,表的Region可以分配到同一分組的另一臺RegionServer機器上。如果只有一臺RegionServer機器,當(dāng)這臺RegionServer機器無法運行時,這個分組所有的表都無法被訪問。
  • 在移動RegionServer的分組時,這個RegionServer上正在訪問的Region會被立即重新分配到分組的其他RegionServer機器上。
  1. 在集群管理系統(tǒng)的左側(cè)導(dǎo)航欄中,選擇集群管理 > 分組節(jié)點管理
  2. 單擊操作列的移動分組。移動分組頁面
  3. 移動分組對話框中選擇目標(biāo)分組
  4. 單擊確定。

移動表的分組

警告 請勿將表移動到?jīng)]有服務(wù)器的分組,否則會造成表無法被訪問。
  1. 概覽頁面,單擊操作列的移動分組。移動表的分組
  2. 新建表單對話框中選擇目標(biāo)分組。
  3. 單擊確定