Hbase基础(特点、架构、应用场景、集群搭建、HA设计)这一篇就够了
Hbase基礎(chǔ)(特點、架構(gòu)、應(yīng)用場景、集群搭建、HA設(shè)計)這一篇就夠了
- 1. Hbase特點
- 2. Hbase VS RDBMS
- 3. Hbase架構(gòu)及版本選擇
- 4. Hbase應(yīng)用場景
- 5. Ntp(多個主機時間同步)
- 6. Hadoop分布式集群搭建
- 7. Zookeeper分布式集群搭建(數(shù)量奇數(shù)個)
- 8. HbaseHA方案設(shè)計
這篇博客將由簡入繁,入門HBase,將介紹Hbase的特點、架構(gòu)、應(yīng)用場景、集群搭建、HA設(shè)計等。
1. Hbase特點
海量、稀疏(存儲,查詢有優(yōu)勢)、高并發(fā)、面向列、數(shù)據(jù)多版本、實時處理(spark、storm、stream)
系型數(shù)據(jù)庫都是行存儲,而Hbase是列存儲,同一種數(shù)據(jù)在同一個塊上
2. Hbase VS RDBMS
- RDBMS:關(guān)系型數(shù)據(jù)庫 各種類型數(shù)據(jù) 行式存儲增 刪改查、函數(shù)運算,可有聯(lián)結(jié)操作 可更新替換數(shù)據(jù) 必須借助中間件才可以伸縮
- Hbase: String 列式 增加清空數(shù)據(jù) 維護也是插入 可伸縮性(靈活加節(jié)點)
3. Hbase架構(gòu)及版本選擇
集群類型:
-
<20 小型集群
無HA,一個zookeeper,Hbase hadoop -
20~50 中型集群
hadoopHA、HbaseHA、3個zookeeper 3個Hmaster -
大于50 大型集群
5個zookeeper(奇數(shù)個節(jié)點),Hbase多個HA節(jié)點
版本:
apache、cloudera(CDH清晰、更安全性、兼容性、穩(wěn)定性,支持Kerbos安全認證)
4. Hbase應(yīng)用場景
- 用戶畫像(推薦系統(tǒng)底層的存儲支持)
- 消息/訂單存儲(低延時、高并發(fā)的訪問)
- 對象存儲(小文件的存儲)
- 時序數(shù)據(jù)(隨著時間而變化的數(shù)據(jù)Open TSDB整合)
- Cube分析(存儲數(shù)據(jù)供其他應(yīng)用實時查詢展示~)
- Feeds流(抖音等,內(nèi)容聚合器,持續(xù)的獲取最新的訂閱列表)
5. Ntp(多個主機時間同步)
Ntp: Network Time Protocol
一個server,多個slave進行時間同步
- 關(guān)閉防火墻
- yum安裝ntp
yum install -y ntp
- 配置/etc/ntp.conf
192.168.3.0網(wǎng)段下的所有主機都生效
日志位置
配置時間同步服務(wù)器
時間服務(wù)器不可用時,把本機當(dāng)作時間同步服務(wù)器
restrict 192.168.3.0 mask 255.255.255.0 nomodify notrap
logfile /var/log/ntpd.log server ntp1.aliyun.com
server ntp2.aliyun.com
server ntp3.aliyun.comserver 127.0.0.1
fudge 127.0.0.1 stratum 10
同步時間(5~10分鐘)
ntpdate -u ntp2.aliyun.com
開啟時間服務(wù)器、查看時間、開機自啟動
systemctl start ntpd
systemctl status ntpd
systemctl enable ntpd
slave配置:/etc/ntp.conf 配置master的ip地址
server 192.168.3.1
6. Hadoop分布式集群搭建
1個master,4個slave
前置條件:5臺機器創(chuàng)建好hadoop用戶,免密登錄
mkdir /opt/software && chown -R hadoop:hadoop /opt
- 上傳jdk、hadoop的安裝包并解壓縮
分發(fā)包并解壓縮
scp jdk-8u144-linux-x64.tar.gz slave1:/opt/software
su hadoop
tar -zxvf jdk-8u144-linux-x64.tar.gz
tar -zxvf hadoop-2.6.0-cdh5.14.2.tar.gz
- 配置.bashrc
vi .bashrc
重命名hadoop包
mv hadoop-2.6.0-cdh5.14.2 hadoop
export JAVA_HOME=/opt/software/jdk1.8.0_144
export HADOOP_HOME=/opt/software/hadoop
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$HADOOP_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
生效配置
. .bashrc
- 配置hadoop-env.sh(修改hadoopheapsize)
- 配置mapred-env.sh(修改javahome)
- 配置yarn-env.sh(修改java、yarn堆內(nèi)存大小)
- 配置core-site.xml(修改、創(chuàng)建臨時目錄)
- 配置yarn-site.xml(多個配置核數(shù)、內(nèi)存等)
- 配置hdfs-site.xml
- 配置mapred-site.xml
- 分發(fā)配置好hadoop包、配置.bashrc到其他機器
scp -r hadoop slave1:/opt/software/
scp .bashrc slave1:~
- 并生效 . .bashrc
- hadoop機器格式化
hadoop namenode -format
- 啟動hadoop
啟動hdfs,查看集群狀態(tài)
start-dfs.shjps
jps master有 Jps NameNode SecondNameNode
jps slave有jsp Datanode
啟動yarn,查看集群狀態(tài)
start-yarn.sh
jps master看到多了 ResourceManager
jps slave多了NodeManager
表示搭建完成
7. Zookeeper分布式集群搭建(數(shù)量奇數(shù)個)
可用于:高可用、注冊中心、分布式鎖實現(xiàn);
- 上傳zookeeper安裝包兵解壓縮,重命名
tar -zxvf zookeeper-3.4.5-cdh5.14.2.tar.gz
mv zookeeper-3.4.5-cdh5.14.2 zookeeper
- 配置zoo.cfg(數(shù)據(jù)、日志目錄、集群的其他配置)
/opt/software/zookeeper/conf/
cp zoo_sample.cfg zoo.cfg
dataDir=/opt/zookeeper/data
dataLogDir=/opt/zookeeper/logsserver.1=slave2:2888:3888
server.2=slave3:2888:3888
server.3=slave4:2888:3888
- 創(chuàng)建數(shù)據(jù)、日志目錄(3臺機器)
mkdir -p /opt/zookeeper/data
mkdir -p /opt/zookeeper/logs
- 為每臺機器配置myid(3臺機器需不同)
cd /opt/software/data
vim myid
1
:wq
- 分發(fā)zookeeper包到其他倆臺機器
scp -r zookeeper slave3:/opt/software/
- 配置環(huán)境變量 .bashrc(JAVA_HOME下邊)
vi .bashrc
export JAVA_HOME=/opt/software/jdk1.8.0_144
export ZOO_HOME=/opt/software/zookeeper
export HADOOP_HOME=/opt/software/hadoop
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$HADOOP_HOME/lib:$ZOO_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOO_HOME/bin
- 發(fā)送環(huán)境變量到另外倆臺機器,并生效
scp .bashrc slave3:~
. .bashrc
- 啟動zookeeper服務(wù)
zkServer.sh start
- 查看zookeeper狀態(tài)(倆個Follower,一個Leader)
zkServer.sh status
8. HbaseHA方案設(shè)計
倆個HMaster,4個RegionServer,一個zookeeper。保證一個HMaster掛了,另一個補上,還能進行RegionServer故障節(jié)點的數(shù)據(jù)平衡等;
總結(jié)
以上是生活随笔為你收集整理的Hbase基础(特点、架构、应用场景、集群搭建、HA设计)这一篇就够了的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 试管婴儿利与弊
- 下一篇: 妄想山海三星游侠怎么打?