1. 程式人生 > >HBase完全分散式叢集環境搭建過程總結

HBase完全分散式叢集環境搭建過程總結

一、前言

     暑期實驗室實習學姐告知學習HBase,便利用複習之餘的時間搭建HBase環境,先前不瞭解搞了個單機版的,學姐說實驗室開發不用單機2333[尷尬],於是又開始建立虛擬機器開始完全分散式叢集環境的搭建。搭建主要是各種百度,也遇到了一些bug,也來來回回刪增了很多虛擬機器[哭泣],在這裡主要是進行一個簡單的總結,要是能幫上大家就很開心啦~\(≧▽≦)/~

二、準備

  • Ubuntu16.04
  • VMware Workstation12 pro
  • jdk1.8
  • Hadoop-2.8.3
  • Zookeeper-3.4.12
  • HBase-2.0.0
  • SSH

三、搭建過程

3.1 三臺虛擬機器的搭建(Ubuntu)

  • master  192.168.199.140
  • slave1   192.168.199.137
  • slave2   192.168.199.138

      HBase如果電腦效能比較好,最好是master記憶體24GB,slave記憶體大於24GB。同時機子都為雙四核。但如果電腦效能不ok[我就是],一般的單核1-2GB,24-48GB的磁碟大小就行,只是計算會慢些。

      注:若電腦一般的,最好不要同時開三臺機,否則會emm各種宕機各種慢

3.2 叢集的構建

     在3.1構建虛擬機器的時候選擇NAT模式,虛擬機器安裝完畢重啟,構建叢集

  1. 檢視本機NAT的閘道器,子網掩碼等資訊
  2. 設定虛擬機器的靜態ip和閘道器等資訊
    sudo vi /etc/network/interfaces

    sudo vi /etc/resolvconf/resolv.conf.d/base

  3. 其餘兩臺虛擬機器相同操作,通過ifconfig檢視NAT自動生成的靜態ip地址                                                                         

  4. 通過ping檢查叢集是否建立成功(ping本機&ping虛擬機器&ping外網)                                                                                     

                                               

  5. 配置虛擬機器的hosts和hostname       

    sudo vi /etc/hosts

           

    sudo vi /etc/hostname

        注:slave機hostname為slave1和slave2 ;同時slave機的host和master配置一樣                                                                          

        到此,虛擬機器叢集搭建完畢。

3.3 虛擬機器間免密登入(ssh)

     為方便之後虛擬機器間檔案的傳遞等互動操作,利用ssh完成虛擬機器間的免密登入

  1. apt-get install ssh完成ssh的安裝(server+client)
  2. ssh-keygen -t rsa完成虛擬機器ssh的生成
  3. 將slave1和slave2的公鑰id_rsa.pub通過scp傳到master中
  4. scp id_rsa.pub [email protected]:~/.ssh/id_rsa.pub.slave1
    
    scp id_rsa.pub [email protected]:~/.ssh/id_rsa.pub.slave2

    在master中將master自己的id_rsa.pub和slave傳過來的兩個公鑰增加到autorized_keys中                                        

    cat id_rsa.pub >> authorized_keys
    
    cat id_rsa.pub.slave1 >> authorized_keys
    
    cat id_rsa.pub.slave2 >> authorized_keys
  5. 使用scp將生成的authorized_keys傳到slave1和slave2中

scp authorized_keys [email protected]:~/.ssh/authorized_keys

scp authorized_keys [email protected]:~/.ssh/authorized_keys

     虛擬機器間實現免密登入   ssh  使用者名稱@虛擬機器ip  注:是使用者名稱@ip,而非主機名@主機ip

     虛擬機器間實現檔案互傳   scp 檔名 使用者名稱@主機名:儲存路徑

3.4 jdk的環境配置(三臺機子相同操作)

      jdk安裝配置java環境,hadoop一系列產品都需要有java的支援(用java寫的/需要用到java程式碼)

     為方便起見,所有的機子mkdir /data/install建立新資料夾並使用chown -R賦予該資料夾root的許可權,避免後續操作使用sudo。

hadoop等的搭建都依賴於jdk,所以需要先安裝jdk

    sudo mkdir -p /data/install 新建目錄
    sudo chown -R ciery:ciery /data  更改目錄許可權,賦予目錄所有許可權

      1. 下載好的tar包放在 /data/install/java 目錄並解壓:

     tar -xvf jdk-8u131-linux-i586.tar.gz

      2. 配置環境

     sudo vi /etc/profile

          source vi /etc/profile  使配置起效

     3. 檢查jdk是否配置成功

    

3.5 Hadoop的安裝

      下載壓縮包解壓在/data/install/apache中,主要是hadoop-2.8.3/etc/hadoop中的core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、slaves、hadoop-env.sh和yarn-env.sh的配置

  cd /data/install/apache/hadoop-2.8.3/etc/hadoop/

  1. core-site.xml                                         
  2. hdfs-site.xml                        
  3. yarn-site.xml                           
  4. mapred-site.xml (新建的)                                                                                                                                                      通過 cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml建立etc/hadoop/mapred-site.xml         
  5. slaves                                                        
  6. hadoop-env.sh和yarn-env.sh                                  
  7. slave兩臺機子相同,使用scp將hadoop-2.8.3資料夾直接傳到slave機的/data/install/apache/目錄下即可,同時記得分別對所有配置中的master改為slave1和slave2
  8. 測試,master中使用sbin/start-all.sh(或者分別使用sbin/start-dfs.sh和sbin/start-yarn.sh)注:保證slave兩臺機開啟狀態   三臺機分別使用jps測試節點狀態 master中有SecondaryNameNode和NameNode,slave中有DataNode即為成功

3.6 Zookeeper的安裝

      和Hadoop相同解壓操作,主要是修改/data/install/apache/zookeeper-3.4.12/conf/zoo.cfg和新建的data中的myid文件以及環境配置

     1. /data/install/apache/zookeeper-3.4.12新建data目錄並新建myid和修改conf下的zoo.cfg                                                                   cp zoo_sample.cfg zoo.cfg(記得刪掉原有的zoo_sample.cfg)

  注:data下使用vi myid新建文件,標號對應zoo.cfg中各機子對應的標號,文件中新增conf/zoo.cfg機子相應的標號,注意不要有空格;同時注意conf中要刪掉原有的zoo_sample.cfg

2. Zookeeper環境配置   sudo vi /etc/profile  配置結束 source /etc/profile

     3. 測試  bin/zkServer.sh start 開啟(三臺機子都進行開啟操作)  jps測試節點狀態,master和slave中都有QuorumPeerMain

          使用bin/zkServer.sh status 測試虛擬機器狀態

      注意測試的時候各節點bin/zkServer.sh start的順序,一般是master->slave1->slave2,這樣檢視status(bin/zkServer.sh status)會得到master的mode為leader,其餘為follower

3.7 HBase的安裝

 解壓操作和3.5、3.6同,主要配置/data/install/apache/hbase-2.0.2/conf/的hbase-env.sh、hbase-site.xml、regionservers

  1. hbase-site.xml              
  2. hbase-env.sh                                                            
  3. regionservers                                                          
  4. 測試(slave機子配置和master機一樣) 在master機中使用bin/start-hbase.sh啟動,使用jps檢視節點狀態,master中有HMaster,slave中有HRegionServer即為成功                                                                                                                                           

 測試時需要三臺機子都為開啟狀態且Hadoop為開啟狀態,使用jps進行程序狀態測試

 到此,HBase完全分散式叢集環境搭建完畢。

四、參考連結

五、總結

     萬事開頭難,多多百度,遇到bug不要慌,學會查詢bug的原因之後對症下藥。耐下性子,勿急躁。加油啦

相關推薦

HBase完全分散式叢集環境搭建過程總結

一、前言      暑期實驗室實習學姐告知學習HBase,便利用複習之餘的時間搭建HBase環境,先前不瞭解搞了個單機版的,學姐說實驗室開發不用單機2333[尷尬],於是又開始建立虛擬機器開始完全分散式叢集環境的搭建。搭建主要是各種百度,也遇到了一些bug,也來來回回刪增了

Zookeeper偽分散式叢集環境搭建過程

前言 ZooKeeper是一個分散式的,開放原始碼的分散式應用程式協調服務,目前很多架構都基於它來實現配置維護、域名服務、分散式同步、組服務等等。 ZooKeeper的基本運轉流程: 1.選舉Leader 2.同步資料 3.選舉Leader過程中演算法

Hadoop+HBase+ZooKeeper分散式叢集環境搭建

一、環境說明 叢集環境至少需要3個節點(也就是3臺伺服器裝置):1個Master,2個Slave,節點之間區域網連線,可以相互ping通,下面舉例說明,配置節點IP分配如下: Hostname IP User Password

阿里雲ECS伺服器部署HADOOP叢集(一):Hadoop完全分散式叢集環境搭建

準備: 兩臺配置CentOS 7.3的阿里雲ECS伺服器; hadoop-2.7.3.tar.gz安裝包; jdk-8u77-linux-x64.tar.gz安裝包; hostname及IP的配置: 更改主機名: 由於系統為CentOS 7,可以直接使用‘hostnamectl set-hostname 主機

centos7.3中搭建hadoop分散式叢集環境詳細過程

一、準備工作 1、準備3臺物理機或者虛擬機器; 2、安裝centos7系統; 3、準備好相關軟體包並拷貝相關軟體到目標伺服器上 hadoop-2.9.0.tar.gz jdk-8u131-linux-x64.tar.gz 二、配置網路 1、設定靜態網路ip 1)設定靜

CentOS7搭建Hadoop2.6完全分散式叢集環境

3臺主機 192.168.30.207 Master 192.168.30.251 Node1 192.168.30.252 Node2 直接用root裝,省事. 有特殊需求自行add user裝. 以下步驟除非特殊說明,否則每臺都必須配置. 1.rpm -ivh XX

HBase篇--搭建HBase完全分散式叢集

一.前述。 完全分散式基於hadoop叢集和Zookeeper叢集。所以在搭建之前保證hadoop叢集和Zookeeper叢集可用。可參考本人部落格地址 二.叢集規劃。 說明:因為HMaster主

zookeeper-3.4.10分散式叢集環境搭建

初始叢集狀態 機器名 IP 作用 linux系統 master 192.168.218.133   CentOS-6.9-x86_64-bin-D

MongoDB分散式叢集環境搭建

第一節分片的概念   分片(sharding)是指根據片鍵,將資料進行拆分,使其落在不同的機器上的過程。如此一來,不需要功能,配置等強大的機器,也能儲存大資料量,處理更高的負載。   第二節分片的原理和思想   MongoDB分片的基本思想就是將集合切分成小塊。這些塊分散到

叢集與簡單完全分散式叢集搭建

 我是在root許可權下搭建的流程比較簡單                                            1.簡單單機Hadoop叢集(偽分散式)搭建流程 下載 JDK 與Hadoop壓縮包,將檔案傳入linux系統中 解壓配置環境: ①首先

Hadoop完全分散式叢集搭建

如果前一章的內容你看懂了,那麼請先刪除之前搭建的三個新伺服器重新克隆三個!!!(博主絕對不是故意為之,真的只是忘記了?) Hadoop完全分散式叢集的搭建 1.分散式叢集搭建規劃 2.叢集的配置(許可權問題,命令執行位置問題請自行注意) 2.1

hadoop叢集環境搭建之偽分散式叢集環境搭建

搭建叢集的模式有三種 1.偽分散式:在一臺伺服器上,啟動多個執行緒分別代表多個角色(因為角色在叢集中使用程序表現的) 2.完全分散式:在多臺伺服器上,每臺伺服器啟動不同角色的程序,多臺伺服器構成叢集 node01:NameNode node02:

Hadoop最完整分散式叢集環境搭建

分散式環境搭建之環境介紹 之前我們已經介紹瞭如何在單機上搭建偽分散式的Hadoop環境,而在實際情況中,肯定都是多機器多節點的分散式叢集環境,所以本文將簡單介紹一下如何在多臺機器上搭建Hadoop的分散式環境。 我這裡準備了三臺機器,IP地址如下: 192.16

hadoop分散式叢集環境搭建

參考 http://www.cnblogs.com/zhijianliutang/p/5736103.html   1 wget http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-2.9.2/hadoop-2

大資料平臺Hadoop的分散式叢集環境搭建,官網推薦

1 概述 本文章介紹大資料平臺Hadoop的分散式環境搭建、以下為Hadoop節點的部署圖,將NameNode部署在master1,SecondaryNameNode部署在master2,slave1、slave2、slave3中分別部署一個DataNode節點 NN

Hadoop分散式叢集環境搭建(三節點)

一、安裝準備 建立hadoop賬號 更改ip 安裝Java 更改/etc/profile 配置環境變數 export $JAVA_HOME=/usr/java/jdk1.7.0_71 修改host檔案域名 172.16.133.149 hadoop101

Spark 2.0分散式叢集環境搭建

Apache Spark 是一個新興的大資料處理通用引擎,提供了分散式的記憶體抽象。Spark 最大的特點就是快,可比 Hadoop MapReduce 的處理速度快 100 倍。本文沒有使用一臺電腦上構建多個虛擬機器的方法來模擬叢集,而是使用三臺電腦來搭建一個小型分散式叢

搭建hadoop偽分散式叢集環境過程中遇見的問題總結

1、網路配置問題: 在centos7中配置網路環境後,本機(win10系統)與虛擬機器centos7網路不通(本機可以ping通虛擬機器,但是虛擬機器ping不通本機); 解決方式: 方式1:檢視本機win10系統的防火牆是否關閉,若沒有,直接關閉win10系統的防火牆即可; 方式2

HBase 1.2.6 完全分散式叢集安裝部署詳細過程

Apache HBase 是一個高可靠性、高效能、面向列、可伸縮的分散式儲存系統,是NoSQL資料庫,基於Google Bigtable思想的開源實現,可在廉價的PC Server上搭建大規模結構化儲存叢集,利用Hadoop HDFS作為其檔案儲存系統,利用Hadoo

hbase完全分散式環境搭建

             HBase是一個分散式的、面向列的開源資料庫,該技術來源於Chang et al所撰寫的Google論文“Bigtable:一個結構化資料的分散式儲存系統”。就像Bigtable利用了Google檔案系統(File System)所提供的分散式資料儲