標籤:

知識布局-大數據apache基礎組件安裝文檔-hbase

前言

本人是一枚熱愛新技術的程序猿,想在知乎文藝一下。由於水平有限,如果存在知識點上面的錯誤,請大神明確指出,我會認真聽取,並及時修正自己的錯誤。

目錄

大數據組件實施部署文檔

1.部署準備

......1.1.修改主機名和hosts對應關係

......1.2 ntpd時間服務

............1.2.1.安裝ntp服務

............1.2.2.配置ntp服務端和客戶端

............1.2.2.啟動ntp

......1.3.ssh

............1.3.1.在A機下生成公鑰/私鑰對

............1.3.2.把A機下的id_rsa.pub複製到B機下

............1.3.3.B機把從A機複製的id_rsa.pub添加到.ssh/authorzied_keys文件里

............1.3.4.A機登錄B機

............1.3.5.需要配置ssh免密碼登陸的機器

......1.4.java環境

......1.5.文件句柄信息配置

2.zookeeper部署

......2.1.profile配置

......2.2.配置conf目錄下zoo.cfg文件

......2.3.配置myid文件

......2.4.配置zkEnv.sh

......2.5.自定義zk的日誌輸出

......2.6.啟動zookeeper

3.hadoop部署

......3.1.linux相應的配置文件

............3.1.1.profile配置

......3.2.hadoop相應配置文件

............3.2.1.hdfs-site.xml

............3.2.2.hadoop-env.sh

............3.2.3.slaves

............3.2.4.yarn-site.xml

............3.2.5.maped-env.sh

............3.2.6.yarn-env.sh

............3.2.7.core-site.xml

............3.2.8.mapred-site.xml

......3.3.hadoop啟動步驟

............3.3.1.啟動Zookeeper集群

............3.3.2.格式化Zookeeper集群

............3.3.3.啟動Journal集群

............3.3.4.格式化集群上的一個NameNode

............3.3.5.啟動集群中步驟4中的NameNode

............3.3.6.把NameNode的數據同步到另一個NameNode上

............3.3.7.啟動另個一NameNode在datanode01上執行

............3.3.8.啟動所有的DataNode

............3.3.9.啟動zookeeper選舉進程

............3.3.10.確認是否部署成功

4.hbase部署

......4.1. linux相應的配置文件

............4.1.1.profile配置

......4.2.hbase相應配置文件

............4.2.1.hbase-env.sh 配置

............4.2.2.hbase-site.xml配置

............4.2.3.regionservers

......4.3.hbase啟動命令

............4.3.1.創建軟連接

............4.3.2.啟動hbase

............4.3.3.檢查hbase是否搭建完成

5.spark部署

......5.1.安裝scala

......5.2.profile配置

......5.3.spark配置

............5.3.1.配置spark-env.sh

............5.3.2配置spark-defaults.conf

............5.3.3.slave節點配置

......5.4.啟動集群

6. kafka部署

......6.1.linux相應的配置文件

............6.1.1.profile配置

......6.2.kafka配置

......6.3.啟動kafka


本文包含目錄中的hbase部署章節。

4.hbase部署

......4.1. linux相應的配置文件

............4.1.1.profile配置

......4.2.hbase相應配置文件

............4.2.1.hbase-env.sh 配置

............4.2.2.hbase-site.xml配置

............4.2.3.regionservers

......4.3.hbase啟動命令

............4.3.1.創建軟連接

............4.3.2.啟動hbase

............4.3.3.檢查hbase是否搭建完成


4.hbase部署

概述

版本信息:hbase 「0.98.17」,java version "1.7.0_79",hadoop version 「2.5.2」

說明:我們的demo採用3台機器。集群組成為:一台master,兩台slave。

master名稱為corenode,slave分別為datanode01和datanode02。

安裝hbase的大體流程分為6步。按照下面的6步進行執行,最終會完成hbase的搭建工作。

1.檢查部署準備環節的事情是否完成(安裝準備中的5個),如果沒有完成,則需要找相應 的文檔進行安裝

2.檢查zookeeper是否完成安裝,如果沒有安裝,那麼參考zookeeper的安裝文檔進行安裝。

3.檢查hadoop是否完成安裝,如果沒有安裝,那麼參考hadoop的安裝文檔進行安裝。

4.配置/etc/profile

5.解壓hbase tar包,並修改相應的配置文件

6.啟動hbase

詳細安裝情況請參考如下幾個小節。

4.1. linux相應的配置文件

4.1.1.profile配置

hbase-0.98.17安裝在/mnt/apps/hbase/hbase-0.98.17-hadoop2下面,所有的配置都是按照這個目錄進行配置的。

我們使用vim /etc/profile,進入進行編輯:

#set Hbase-0.98.17

export HBASE_HOME=/mnt/apps/hbase/hbase-0.98.17-hadoop2

export PATH=$PATH:$HBASE_HOME/bin

編輯完成之後,退出編輯,執行 source /ect/profile,即完成profile的配置。

4.2.hbase相應配置文件

4.2.1.hbase-env.sh 配置

export JAVA_HOME=/mnt/apps/jdk/jdk1.7.0_79

export HBASE_MASTER_OPTS="-Xloggc:/mnt/apps/hbase/hbase-0.98.17-hadoop2/logs/mastergc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:CMSInitiatingOccupancyFraction=80 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC $HBASE_MASTER_OPTS"

export HBASE_REGIONSERVER_OPTS="-Xloggc:/mnt/apps/hbase/hbase-0.98.17-hadoop2/logs/regiongc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:CMSInitiatingOccupancyFraction=80 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC $HBASE_REGIONSERVER_OPTS"

export HBASE_PID_DIR=/mnt/apps/hbase/hbase-0.98.17-hadoop2/pids

export HBASE_MANAGES_ZK=false

export HBASE_HEAPSIZE=1024

4.2.2.hbase-site.xml配置

<configuration>

<property>

<name>hbase.master</name>

<value>60000</value>

</property>

<property>

<name>hbase.rootdir</name>

<value>hdfs://bonree/hbase</value>

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

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

<value>2181</value>

</property>

<property>

<name>hbase.zookeeper.quorum</name>

<value>corenode,datanode01,datanode02</value>

</property>

<property>

<name>hbase.hregion.max.filesize</name>

<value>536870912</value>

</property>

<property>

<name>hbase.hregion.memstore.flush.size</name>

<value>5368709</value>

</property>

<property>

<name>hbase.hstore.compaction.min</name>

<value>3</value>

</property>

<property>

<name>hbase.hstore.compaction.max</name>

<value>12</value>

</property>

<property>

<name>hbase.hregion.majorcompaction</name>

<value>0</value>

</property>

<property>

<name>hbase.regionserver.restart.on.zk.expire</name>

<value>true</value>

</property>

<property>

<name>zookeeper.session.timeout</name>

<value>90000</value>

</property>

<property>

<name>hbase.hstore.blockingStoreFiles</name>

<value>100000</value>

</property>

<property>

<name>hbase.regionserver.thread.compaction.large</name>

<value>9</value>

</property>

<property>

<name>hbase.regionserver.thread.compaction.small</name>

<value>9</value>

</property>

<property>

<name>hbase.thrift.maxQueuedRequests</name>

<value>1000</value>

</property>

<property>

<name>hbase.client.write.buffer</name>

<value>2097152</value>

</property>

<property>

<name>hbase.thrift.minWorkerThreads</name>

<value>16</value>

</property>

<property>

<name>hbase.thrift.maxWorkerThreads</name>

<value>1000</value>

</property>

<property>

<name>hbase.regionserver.lease.period</name>

<value>240000</value>

</property>

<property>

<name>hbase.rpc.timeout</name>

<value>280000</value>

</property>

</configuration>

4.2.3.regionservers

datanode01

datanode02

4.3.hbase啟動命令

hbase-daemons.sh start master

4.3.1.創建軟連接

在每台機器上配置軟連接:ln -s ${HADOOP_HOME}/etc/hadoop/hdfs-site.xml ${HBASE_HOME}/conf/hdfs-site.xml

4.3.2.啟動hbase

start-hbase.sh

4.3.3.檢查hbase是否搭建完成

執行檢查命令:hbase hbck >./hbck.log

查看日誌,採用less hbck.log

存活的regionserver為2,dead region server為0,說明hbase正常啟動。


推薦閱讀:

mongodb,redis,hbase 三者都是nosql資料庫,他們的最大區別和不同定位是什麼?
知識布局-spark讀取hbase解析
HBaseCon&amp;灣區見聞及感想
hdfs本身是不支持文件隨機插入數據。那麼hbase中隨機寫入記錄,在hdfs中是怎麼實現的呢?
為什麼說HBase是列式資料庫?

TAG:大數據 | HBase |