1. 程式人生 > >CentOS 7下Hbase1.3.1分散式環境搭建

CentOS 7下Hbase1.3.1分散式環境搭建

平臺環境:Java1.8.0_144、Hadoop2.7.4、Zookeeper3.4.9

簡介:HBase – Hadoop Database,是一個高可靠性、高效能、面向列、可伸縮的分散式儲存系統,HBase利用Hadoop HDFS作為其檔案儲存系統,利用Hadoop MapReduce來處理HBase中的海量資料,利用Zookeeper作為協調工具。該技術較行式儲存資料庫而言優勢在於:所有資料按列存取,因此只需在特定列做I/O即可完成查詢與分析,效率節省90%;此外,列式資料庫在每列上還有專門的列壓縮演算法進一步提高資料庫效能,這是行式資料庫不具備的。

一、軟體準備:

(Hbase)  https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/1.3.1/hbase-1.3.1-bin.tar.gz

(Zookeeper)  https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz

下載完成後對上述兩個軟體進行解壓:

[[email protected] local]#  tar zxvf hbase-1.3.1-bin.tar.gz

[[email protected] local]#  tar zxvf zookeeper-3.4.9.tar.gz

這裡我使用的是外部的Zookeeper叢集管理Hbase。

二、配製檔案修改:

進入hbase配製檔案存放目錄對各配製檔案進行修改,[

[email protected] local]# cd hbase-1.3.1/conf/

(1) 修改hbase-env.sh , [[email protected] conf]# vim hbase-env.sh 新增如下配製:

export JAVA_HOME=/usr/java/jdk1.8.0_144/  (配製JAVA_HOME)

export HBASE_MANAGES_ZK=false (預設為true使用內部Zookeeper,由於我使用的外部ZK因此此處改為false)

# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+

參看配製項說明如下兩行配製僅JDK7需要,JDK8+可以刪除,在這裡我將下面兩行註釋掉
# export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
# export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"

(2) 修改hbase-site.xml , [[email protected] conf]# vim hbase-site.xml 在configuration中新增如下配製:

<property>
  <name>hbase.zookeeper.quorum</name>
  <value>192.168.1.19,192.168.1.20,192.168.1.21</value>
</property>

<property>
  <name>hbase.rootdir</name>
  <value>hdfs://Clouder3:9000/hbase</value>
</property>


<property>
  <name>hbase.cluster.distributed</name>
  <value>true</value>
</property>


<property>
  <name>hbase.zookeeper.property.clientPort</name>
  <value>2181</value>
</property>

(3) 修改regionservers ,  [[email protected] conf]# vim regionservers 刪除原檔案裡面的內容新增叢集中節點名稱:

Clouder1
Clouder2
Clouder3

(4) 修改hadoop-env.sh ,[[email protected] conf]# vim /usr/local/hadoop-2.7.3/etc/hadoop/hadoop-env.sh 找到HADOOP_CLASSPATH將hbase lib路徑新增到HADOOP_CLASSPATH中,防止執行hbase相關jar包報錯:

export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/local/hbase-1.3.1/lib/*

以上Hbase相關配製修改完成,分別將修改後的檔案傳送到其它節點:

[[email protected] local]# scp -r hbase-1.3.1 Clouder1:/usr/local/

[[email protected] local]# scp -r hbase-1.3.1 Clouder2:/usr/local/

(5) 外部Zookeeper叢集配製(Zookeeper叢集搭建時最好選用奇數臺主機這樣便於ZK選主):

修改zoo.cfg檔案 , 將zoo_sample.cfg重新命名為zoo.cfg(或者複製並命名為zoo.cfg):

[[email protected] conf]# cp zoo_sample.cfg zoo.cfg        

向zoo.cfg檔案中新增配製資訊:

server.0=192.168.1.19:2888:3888
server.1=192.168.1.20:2888:3888
server.2=192.168.1.21:2888:3888

dataDir=/usr/local/zookeeper-3.4.9/data (將預設路徑替換為這個)

(6) 建立zookeeper dataDir目錄:

該路徑對應上述(5)中的配製路徑,[[email protected] zookeeper-3.4.9]# mkdir data

在建立的data目錄中寫入zookeeper的ID,[[email protected] data]# vim myid 

新增內容:2(該ID號碼對應(5)中配製的Server號碼)

將配製好的zookeeper傳送至其它各節點:

[[email protected] local]# scp -rzookeeper-3.4.9 Clouder1:/usr/local/

[[email protected] local]# scp -rzookeeper-3.4.9 Clouder2:/usr/local/

注意:將配製好的zookeeper傳送至其它節點的時候,必須到各節點修改一次myid檔案,使當前節點的ID與zoo.cfg中配製的號碼保持一致!!!

(7) zookeeper叢集啟動

進入到zookeeper安裝目錄,[[email protected] zookeeper-3.4.9]# bin/zkServer.sh start   (zookeeper叢集需要在各節點執行該命令單獨啟動,也可自行編寫指令碼一鍵啟動)

檢視zookeeper狀態:

[[email protected] zookeeper-3.4.9]# bin/zkServer.sh status  (zookeeper檢視執行狀態命令)
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: follower(代表從節點)

[[email protected] ~]# /usr/local/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: leader (代表主節點)

[[email protected] zookeeper-3.4.9]# bin/zkServer.sh status  (zookeeper檢視執行狀態命令)
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: follower(代表從節點)

(8) 修改系統環境變數

[[email protected] ~]# vim /etc/profile

配製hbase環境變數

export HBASE_HOME=/usr/local/hbase-1.3.1
export PATH=.:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin:$PATH

使配製生效:

source /etc/profile

分別在其它各節點進行/etc/profile修改並使配製生效(source /etc/profile

(9) 啟動Hbase叢集及驗證:

bin/start-hbase.sh 驗證jps: [[email protected] hbase-1.3.1]# jps
8256 SecondaryNameNode
8405 ResourceManager
30965 Jps
12806 QuorumPeerMain
13831 HRegionServer
8504 NodeManager
13706 HMaster
8091 DataNode
7965 NameNode

[[email protected] ~]# jps
851 QuorumPeerMain
1555 HRegionServer
5508 DataNode
5612 NodeManager
22462 Jps

[[email protected] ~]# jps
2881 DataNode
30834 QuorumPeerMain
2986 NodeManager
31594 HRegionServer
28814 Jps

注:啟動Hbase叢集前一定要確保Hadoop叢集和Zookeeper叢集已經啟動

相關推薦

CentOS 7Hbase1.3.1分散式環境搭建

平臺環境:Java1.8.0_144、Hadoop2.7.4、Zookeeper3.4.9 簡介:HBase – Hadoop Database,是一個高可靠性、高效能、面向列、可伸縮的分散式儲存系統

Hadoop2.7.2+Hbase1.2.1分散式環境搭建整理

一.準備環境 1.1. 安裝包 1)準備4臺PC 2)安裝配置Linux系統:CentOS-7.0-1406-x86_64-DVD.iso 3)安裝配置Java環境:jdk-8u91-linux-x64.gz 4)安裝配置Hadoop:hadoop-2.7.2-x64.ta

CentOS 7MongoDB 3.6 的安裝及基本操作

進程命令 san documents 獲得 運行 配置 imp 步驟 code 一、MongoDB簡介 MongoDB是一款跨平臺、面向文檔的數據庫,可以實現高性能,高可用性,並且能夠輕松擴展。MongoDB 是由C++語言編寫的,是一個基於分布式文件存儲的開源數據庫系

centos 7 安裝nginx-1.15.7

安裝所需環境 Nginx 是 C語言 開發,建議在 Linux 上執行,當然,也可以安裝 Windows 版本,本篇則使用 CentOS 7 作為安裝環境。 一. gcc 安裝安裝 nginx 需要先將官網下載的原始碼進行編譯,編譯依賴 gcc 環境,如果沒有 gcc 環境,則需要安裝

CentOS 7安裝Python3.5+虛擬環境

轉載自:https://www.linuxidc.com/Linux/2016-04/129784.htm •安裝python3.5可能使用的依賴 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readlin

CentOS 7部署Hive 3.1.0

一、環境 軟體 版本 Hadoop 3.1.1 Hive 3.1.0 MySQL 8.0.11 JDK 1.8 二、安裝Hive Hive只要在一臺Hadoop叢集的伺服器上安裝即可,安裝到/usr/local/hive目錄下。

CentOs 7 安裝JDK 1.8

 centOs7 下安裝JDK 首先你需要下載一個jdk的一個壓縮包 壓縮包:點選下載 這個應該是linux通用的,我的系統全都是CentOs的  不確定其他的能不能用  ,不能用請告訴我一下我好備註,省得其他人在踩坑。 之後將你們下載好的壓縮包直接用XFTP上傳

Hadoop2.7.1+Hbase1.2.1叢集環境搭建(1)hadoop2.7.1原始碼編譯

        官網目前提供的下載包為32位系統的安裝包,在linux 64位系統下安裝後會一直提示錯誤“WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-j

CentOS 7部署php7.1和開啟MySQL擴充套件的方法教程

前言之前在CentOS7安裝php7.1的時候有遇到PHP源及PHP7.1不支援MySQL擴充套件問題,上午抽空安裝了下終於解決了這兩個問題,特此記錄備忘。簡單安裝(yum方式)安裝軟體源新增epel源新增remi源安裝並更新軟體安裝yum-config-manager實用程

《Node.js入門》Windows 7Node.js Web開發環境搭建筆記

基於 方法 一位 實時 ibm cal 項目 直觀 ear 近期想嘗試一下在IBM Bluemix上使用Node.js創建Web應用程序。所以須要在本地搭建Node.js Web的開發測試環境。這裏講的是Windows下的搭建方法,使用CentOS 的小夥伴請參考:《No

Node js入門 Windows 7Node js Web開發環境搭建筆記

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Hadoop從入門到精通系列之--3.完全分散式環境搭建

目錄 一 什麼是完全分散式 二 準備伺服器 三 叢集分發指令碼 3.1 scp(secure copy)安全拷貝 3.2 rsync遠端同步 3.3 叢集分發指令碼 四 叢集規劃 4.1 規劃思想 4.2 具體配置 4.3 ssh免密登陸 一 什麼

CentOS 7 yum nginx MySQL PHP 簡易環境搭建

[[email protected]192 yum.repos.d]# yum list nginx 已載入外掛:fastestmirror nginx

CentOS 7 linux中Solr偽叢集搭建

什麼是SolrCloudSolrCloud(solr 雲)是Solr提供的分散式搜尋方案,當你需要大規模,容錯,分散式索引和檢索能力時使用 SolrCloud。當一個系統的索引資料量少的時候是不需要使用SolrCloud的,當索引量很大,搜尋請求併發很高,這時需要使用Solr

[大資料學習研究] 3. hadoop分散式環境搭建

  1. Java安裝與環境配置 Hadoop是基於Java的,所以首先需要安裝配置好java環境。從官網下載JDK,我用的是1.8版本。 在Mac下可以在終端下使用scp命令遠端拷貝到虛擬機器linux中。 danieldu@daniels-MacBook-Pro-857 ~/Down

CentOS 7 配置 Nginx + PHP7.1 + MariaDB 以及 Laravel 框架 2018.3.11

service req pac pat 二進制 logs block ip 地址 rom CentOS 7 下配置 Nginx + PHP7.1 + MariaDB 以及 Laravel 框架 阿裏雲服務器的選擇 當然是選擇學生優惠啦。這裏阿裏雲還提供了輕量級服務器這個選項

大資料學習環境搭建(CentOS6.9+Hadoop2.7.3+Hive1.2.1+Hbase1.3.1+Spark2.1.1)

node1192.168.1.11node2192.168.1.12node3192.168.1.13備註NameNodeHadoopYY高可用DateNode YYYResourceManager YY高可用NodeManagerYYYJournalNodes YYY奇數個,至少3個節點ZKFC(DFSZK

Spark之——Hadoop2.7.3+Spark2.1.0 完全分散式環境 搭建全過程

一、修改hosts檔案在主節點,就是第一臺主機的命令列下;vim /etc/hosts我的是三臺雲主機:在原檔案的基礎上加上;ip1 master worker0 namenode ip2 worker1 datanode1 ip3 worker2 datanode2其中的i

Centos 6/ 7通過yum安裝php7環境

nmp chan art lda base rhel 7 安裝php embed process 本文轉自:雲溪社區 2015年12月初PHP7正式版發布,迎來自2004年以來最大的版本更新。PHP7最顯著的變化就是性能的極大提升,已接近Facebook開發的PHP執行引擎

CentOS 7 配置 Nginx + PHP7.1 + MariaDB 以及 Laravel 框架

googl vertica yii header tooltip min mongo ble color html { } .CodeMirror { height: auto } .CodeMirror-scroll { } .CodeMirror-lines { pa