Hadoop集群的hbase介紹、搭建、環境、安裝

来源:http://www.cnblogs.com/Smileing/archive/2017/07/14/7170021.html
-Advertisement-
Play Games

1、hbase的介紹(自行百度hbase,比我總結的全面具體) HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分散式存儲系統,利用HBase技術可在廉價PC Server上搭建起大規模結構化存儲集群。 HBase是Google Bigtable的開源實現,類 ...


1、hbase的介紹(自行百度hbase,比我總結的全面具體)

HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分散式存儲系統,利用HBase技術可在廉價PC Server上搭建起大規模結構化存儲集群。

HBase是Google Bigtable的開源實現,類似Google Bigtable利用GFS作為其文件存儲系統,HBase利用Hadoop HDFS作為其文件存儲系統;Google運行MapReduce來處理Bigtable中的海量數據,HBase同樣利用Hadoop MapReduce來處理HBase中的海量數據;Google Bigtable利用 Chubby作為協同服務。

2、搭建hbase的環境準備

  1.jdk的1.7以上版本

  2.前提zookper集群和HDFS集群

  保證HDFS的namenode和datanode啟動,也就是zookeeper出現QuorumPeerMain的leader和follower

3.安裝hbase(今天的主題,理論知識太多也沒用!!!)

  3.1下載HBase安裝包(hbase.apache.org)

  我一般都是下載到window10里,在用Xftp傳到JVM里的tmp目錄下,安裝到我JVM對相應的/usr/local路徑下

  tar -zxvf hbase-1.2.6-bin.tar.gz -C /usr/local/ 

  然後進入我的local目錄   cd /usr/local/

  重命名    mv hbase-1.2.6/ hbase

  我通常會把軟體的docs刪了,當搭建集群時會拷貝整個hbase,docs裝的API在虛擬機里我們幾乎不需要。

  cd hbase                刪除docs :rm -rf docs/

  3.2修改環境變數

    3.2.1 使用 vim /etc/profile命令修改系統環境變數(當你是普通用戶時 sudo  vim /etc/profile)

#hbase

export HBASE_HOME=/usr/local/hbase

export PATH=$PATH:$HBASE_HOME/bin

   保存後source /etc/profile應用下

    3.2.2 在修改hbase的環境變數(記住的JAVA_HOME可使用echo $JAVA_HOME查我的路徑是/usr/local/java)

cd  /usr/local/hbase/conf

vim hbase-env.sh 

    export JAVA_HOME=/usr/local/java  #Java環境

    export HBASE_CLASSPATH=/usr/local/hadoop/etc/hadoop  #通過hadoop的配置文件找到hadoop集群(hdfs_site.xml的目錄位置)

    export HBASE_MANAGES_ZK=false #不使用HBASE自帶的zookeeper管理集群

    3.2.3HBase參數配置:(hbase-site.xml)由於我直接配置的集群變數,可能跟偽集群不大一樣。

<property><!-- 指定HDFS的路徑信息 -->

<name>hbase.rootdir</name>
<value>hdfs://ns1/hbase</value>
</property>
<property><!-- Hbase的運行模式,false單機,true分散式集群 -->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property><!-- ZK集群 -->
<name>hbase.zookeeper.quorum</name>
<value>zkHost01:2181,zkHost02:2181,zkHost03:2181</value>
</property>
<property><!--web ui port-->
<name>hbase.master.info.port</name>
<value>60010</value>
</property>

    3.2.4測試是否啟動成功

    zkServer.sh start

    start-dfs.sh

    start-hbase.sh

    jps顯示如下

 

由於我搭的集群的正常還應該有個

ok!!!!!!!!!!!

4,配置集群的Hbase

如果你按上述創建完成了我們配置一個集群,克隆機就不用說了吧,搭建HDFS集群略過

達到的效果是配置2台主機(Hmaster),3個子機(HRegionServer)

  主機分別為HaoopMaster01,HaoopMaster02.子機為HadoopSlave1,HadoopSlave2,HadoopSlave3

  4.1在主機直接配置子機vim /usr/local/hbase/conf/regionservers

  #裡面填入子機名或埠號(可在etc下hosts里修改集群名對應埠)

  HadoopSlave1

  HadoopSlave2

  HadoopSlave3

       4.2把你配置好的hbaser通過你的單點機直接複製到其他機器上

  再把第二台主機的環境配好 scp -r /etc/profile HadoopMaster01 :/etc/

   scp -r hbase HadoopMaster01 :/usr/local

   scp -r hbase HadoopSlave1 :/usr/local

   scp -r hbase HadoopSlave2 :/usr/local

   scp -r hbase HadoopSlave3 :/usr/local 

   4.3第二台主機需要單啟(這台主機是防止一臺主機down了,然後自動頂上)

  hbase-daemon.sh start master

  4.4測試

    jps

 這個集群主機的DFSZKFailoverController和ResousrceManager於本次配置無關子機的nodeManager和journalnode無關

因為我測試之前搭建的yarn和zfkc所以就顯示上了(so sorry!)

 有什麼大數據集群搭建問題可以直接評論我,一起進步吧!!!!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • windows 10 x64 pro 1703安裝postgresql-9.6.3-2-windows-x64.exe資料庫,步驟如下: 第一:下載資料庫安裝程式,下載地址為:https://www.postgresql.org/download/ 第二:下載完畢之後雙擊執行安裝程式,如下圖所示: ...
  • 1. 演算法(數學)原理重要不重要? 不重要。因為不懂數學,你也可以把數據扔進Sass,選擇一個名字看起來有逼格的演算法,然後CPU煎個雞蛋,結果就出來了,還能配上不明覺厲的圖形化結果。更有逼格的,網上搜一下'R/Python xxxx演算法 代碼',再吃個煎雞蛋,結果也出來了。塞到TableAU搞一下, ...
  • 操作系統:CentOS6.9_x64 安裝資料庫 使用如下命令: 設置開機啟動: 啟動資料庫: 安裝後,預設生成一個名為postgres的資料庫和一個名為postgres的資料庫用戶。這裡需要註意的是,同時還生成了一個名為postgres的Linux系統用戶。 配置資料庫 初始化資料庫 添加新用戶和 ...
  • 操作系統:CentOS6.9_x64 DB2安裝文件: db2_v101_linuxx64_expc.tar.gz 安裝資料庫 選擇預設安裝路徑 : yes 配置資料庫 創建3個用戶組 創建3個用戶 添加3個用戶密碼 檢查用戶組和用戶是否創建成功 創建實例 配置db2自啟動 配置db2網路服務埠 ...
  • MapReduce工作機制——Word Count實例(一) MapReduce的思想是分散式計算,也就是分而治之,並行計算提高速度。 編程思想 首先,要將數據抽象為鍵值對的形式,map函數輸入鍵值對,處理後,產生新的鍵值對作為中間結果輸出。接著,MapReduce框架自動將中間結果按鍵做聚合處理, ...
  • 一、概述 根據《深入理解Spark:核心思想與源碼分析》一書,結合最新的spark源代碼master分支進行源碼閱讀,對新版本的代碼加上自己的一些理解,如有錯誤,希望指出。 1.塊管理器BlockManager的實現 塊管理器是Spark存儲體系的核心組件,Driver Application和Ex ...
  • 最近要用到mysql備份,就寫了shell腳本用於備份。 給shell腳本命名為databasebak.sh 賦予腳本許可權 chmod u+x databasebak.sh 添加計劃任務 crontab -e 30 1 * * * sh /home/databasebak.sh & ...
  • 下麵是我總結的一些基礎的sql知識,主要是為了以後更好的查閱和幫助其他初學的人,同時記錄自己的成長,還寫了一點稍有難度的sql面試題級別的題目,好了廢話不多說,見真題。。。 #創建資料庫 CREATE DATABASE mytest CHARACTER SET gbk #刪除資料庫 DROP DAT... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...