溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

hbase偽集群搭建

發(fā)布時間:2020-06-22 05:53:59 來源:網(wǎng)絡(luò) 閱讀:4456 作者:燃燒的大腦 欄目:大數(shù)據(jù)

hbase 數(shù)據(jù)存儲有三種跑法,跑在本地磁盤上、跑在偽分布式上、跑在完全分布式上--------
額。。。官網(wǎng)的文檔挺坑爹的,結(jié)合官網(wǎng)、百度、谷歌的各種文檔看,只要理解原理,搭建也不算難(當(dāng)然照的官網(wǎng)文檔個看就比較坑爹了)
單機(jī)模式 ------->> 這個最簡單,免寫了,下了包直接解壓配置個路徑就可以啟動了,zk 和 hbase 都是起在同一個 jvm 中的,數(shù)據(jù)落到本地磁盤。
偽分布式部署方式 ------->> 先部署 hdfs , 再部署 hbase ,它們的各個進(jìn)程跑在不同的 jvm 中 , hbase只是將數(shù)據(jù)落到了 hdfs 上。
完全分布式 ------->> 完全分布式用大白話來說,我理解的就是個 偽分布式的 升級款,只是把偽分布式的一臺服務(wù)器變成了 n 臺。。。

完全分布式一定要部署在 物理機(jī)上

上邊蛋扯的差不多了,下面直接入正題,開始部署
下載什么版本的包自己解決,要想下載最輕松的全部安裝包,直接到 cdh 上去下載,百度搜索 cdh ,你懂的、、、然后配置文件每個版本的基本上差不多,沒有太大的出入
下面是以 hadoop-2.7.2 、 hbase-1.1.2 為例

一、新系統(tǒng)的話,自己先處理一下系統(tǒng),這個習(xí)慣相信所有運(yùn)維同行的哥哥們都是有這習(xí)慣的。。。關(guān)閉不用的防火墻、最大文件打開數(shù)、jdk全局變量、dns、主機(jī)名解析
建議配置時用 ip 的最后用內(nèi)網(wǎng)的域名,這樣的話,開發(fā)的代碼也好接入做好的 hbase,用主機(jī)名的話,開發(fā)的還得自己的 hosts ,我這里用的 內(nèi)網(wǎng)的 dns 域名。

二、部署 hdfs

包傳到 服務(wù)器上,解壓

hadoop-2.7.2.tar.gz
tar xvf  hadoop-2.7.2.tar.gz  -C /home
cd /home/hadoop-2.7.2
vim etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72

配置HDFS 之 core-site.xml

mkdir data
vim etc/hadoop/core-site.xml
<configuration>
 <property>
    <name>fs.defaultFS</name>
    <value>hdfs://pretend.hdfs.gag.cn:9000</value>
            <!--這里設(shè)置 hdfs 文件系統(tǒng)接口-->
 </property>
 <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop-2.7.2/data/tmp</value>
            <!--這里為 hdfs 數(shù)據(jù)存儲路徑-->
 </property>
</configuration>

配置HDFS 之 hdfs-site.xml

vim etc/hadoop/hdfs-site.xml
   <configuration>
   <property>
    <name>dfs.replication</name>
    <value>1</value>
            <!--指定創(chuàng)建的副本數(shù)-->
   </property>

</configuration>

配置HDFS 之 YARN, 這原配置文件里什么也沒有,都是注釋內(nèi)容,直接改名就行

mv etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
vim etc/hadoop/mapred-site.xml

  <configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    <!--使用yarn運(yùn)行mapreduce程序-->
  </property>
</configuration>

配置HDFS 之 yarn-site.xml

 vim etc/hadoop/yarn-site.xml
  <configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
            <!--NodeManager上運(yùn)行的附屬服務(wù)。需配置成mapreduce_shuffle,才可運(yùn)行MapReduce程序-->
  </property>
</configuration>

啟動 hdfs
初次啟動 hdfs 先要初始化文件系統(tǒng),也可以說是格式化文件系統(tǒng)

    bin/hdfs namenode -format

hbase偽集群搭建

格式化完畢,啟動NameNod和DataNode進(jìn)程
啟動之前如果修改 jvm 參數(shù)的話,在 vim etc/hadoop/hadoop-env.sh 修改 HADOOP_HEAPSIZE 這一項(xiàng)就可以了,默認(rèn)應(yīng)該是 1024M

sbin/start-dfs.sh

啟動以后,有這里顯示有 三個配置文件,是 out 后綴的,看日志的話,看 log 后綴的,看有沒有 error 級別的報(bào)錯
hbase偽集群搭建

啟動YARN

     sbin/start-yarn.sh 

同樣是去看這兩個的 log 后綴的日志
這里了 hdfs 就算啟動完畢了,這時再 jps 命令可以看到除 jps 進(jìn)程外有 5 個
hbase偽集群搭建

查看端口已經(jīng)有這么多了, 50070 是 hdfs 的 web 端口,以后輸入 ip:port 或者 域名:port 來查看 web 頁面
hbase偽集群搭建
hbase偽集群搭建

======================================================================

以上 hdfs 啟動沒問題后,就可以啟動 hbase 了

     tar xvf hbase-1.1.2-bin.tar.gz -C /home/        
     cd /home/hbase-1.1.2/   
     vim conf/hbase-env.sh   
     export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72

配置Hbase

mkdir data
vim conf/hbase-site.xml 

     <configuration>
   <property>
      <name>hbase.rootdir</name>
      <value>hdfs://pretend.hdfs.gag.cn:9000/hbase</value>
            <!--使用 hdfs 文件系統(tǒng),端口為上面配置的 hdfs 接口-->
  </property>
  <property>
     <name>hbase.zookeeper.property.dataDir</name>
     <value>/home/hbase-1.1.2/data</value>
             <!--zookeeper數(shù)據(jù)存儲路徑,用hbase自帶的zookeeper-->
  </property>
  <property>
     <name>hbase.cluster.distributed</name>
     <value>true</value>
             <!--設(shè)置hbase模式為集群模式-->
  </property>
</configuration>

hbase 集群內(nèi)的服務(wù)器,如果是啟動完全分布式,這里要填寫hbase所有的服務(wù)器域名或者 ip 或者 主機(jī)名,順便說一下,hbase和 hadoop 集群全部是已 ssh 遠(yuǎn)程 調(diào)用命令的方式啟動其他節(jié)點(diǎn)的

    vim conf/regionservers      
    pretend.hbase.gag.cn

這里的話,我把內(nèi)存調(diào)整了一下,因?yàn)殚_發(fā)那邊要用,服務(wù)器是 8G 的

    vim conf/hbase-env.sh 
    export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=512m -XX:MaxPermSize=512m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=512m -XX:MaxPermSize=512m"

啟動Hbase

先啟動 zookeeper,如果是完全分布式的話,所有的 hbase節(jié)點(diǎn)會以臨時節(jié)點(diǎn)的方式注冊在 zk 里,偽分布式也一樣,只不過zk 里只有一個節(jié)點(diǎn),zk 也只有一個節(jié)點(diǎn)

 bin/hbase-daemon.sh start zookeeper         啟動后查看日志
 bin/hbase-daemon.sh start master               啟動后查看日志
 bin/hbase-daemon.sh start regionserver      啟動后查看日志

此時的 jps 可以查看到除 jps 外 8 個進(jìn)程
hbase偽集群搭建

hbase 的 web 頁面端口是 16010
hbase偽集群搭建

如果要加 開機(jī)啟動的話,最好加上sleep等待,我是這樣加的
hbase偽集群搭建

正常停止方式:
一定要按照順序停止
停止 hbase、zookeeper、hdfs

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI