アーキテクチャと展開
1.アーキテクチャ
分布式主从架构
- マスター:Hマスター
- スレーブノードを管理する
- 差出人:HRegionServer
- 仕事の責任:保管
- データはRegionServerのメモリに保存されます
- マスター:Hマスター
- HDFS
用于实现Hbase中数据的持久化
- Zookeeper
存储关键性数据
辅助选举
:2つのHMaster、1つはアクティブ、1つはスタンバイ- HbaseはZookeeperに大きく依存しています
- ほとんどの分散フレームワークはZookeeperに依存しています
- Zookeeperと同様のメカニズムを実装しない限り
2.分散クラスターの展開
まず、インストールと構成のためにマシンを選択します
- アップロード
cd /export/software/
rz
- 解凍してインストールします
tar -zxvf hbase-1.2.0-cdh5.14.0.tar.gz -C /export/servers/
- ディレクトリ構造
- bin:コマンドの保存に使用されるディレクトリ
- conf:設定ファイルディレクトリ
- lib:依存パッケージのディレクトリ
- ログ:ログが保存されるディレクトリ
設定を変更する
- hbase-env.sh:Hbaseランタイムの環境変数を変更します
#修改第27行
export JAVA_HOME=/export/servers/jdk1.8.0_141
#修改128行
export HBASE_MANAGES_ZK=false
- hbase-site.xml:Hbaseのプロパティを構成します
- すべてのhbaseプログラムについて、最初にhbase-default.xmlをロードしてから、hbase-site.xmlをロードします。
- ディレクトリを作成する
cd /export/servers/hbase-1.2.0-cdh5.14.0/
mkdir datas
<!--指定Hbase 临时存储目录的-->
<property >
<name>hbase.tmp.dir</name>
<value>/export/servers/hbase-1.2.0-cdh5.14.0/datas</value>
</property>
<!--指定Hbase在HDFS上的存储目录-->
<property >
<name>hbase.rootdir</name>
<value>hdfs://node-01:8020/hbase</value>
</property>
<property >
<name>hbase.fs.tmp.dir</name>
<value>/user/${user.name}/hbase-staging</value>
</property>
<property >
<name>hbase.bulkload.staging.dir</name>
<value>${hbase.fs.tmp.dir}</value>
</property>
<!--指定Hbase的运行模式是否是分布式-->
<property >
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!--指定Zookeeper的地址-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>node-01:2181,node-02:2181,node-03:2181</value>
</property>
- hdfsがHAで構成されている場合
- core-site.xmlとhdfs-site.xmlをhbaseのconfディレクトリに配置することに注意してください
- regionservers:Hadoopのslavesファイルと同様に、hbaseスレーブノードのアドレスを構成します
node-01
node-02
node-03
マスターノードのアドレスが指定されていないのはなぜですか?
- Hbaseの最下層はZookeeperに大きく依存しているため、Zookeeperに直接関連付けられています
- どのマシンでもマスターノードを起動できます
- 最初に起動するマシンはアクティブなマスターノードです
- 他のマシンはマスターノードを起動し、スタンバイのマスターノードです
- マスターノードプロセスHMasterを開始できるマシンを定義する必要がある場合
- 成し遂げる
cd /export/servers/hbase-1.2.0-cdh5.14.0/
vim conf/backup-masters
node-02
分布
cd /export/servers/
scp -r hbase-1.2.0-cdh5.14.0 node-02:$PWD
scp -r hbase-1.2.0-cdh5.14.0 node-03:$PWD
起動
- 最初にHDFSを開始します
- Hbaseは、HDFSがセーフモードを終了した後にのみ開始できます
start-dfs.sh
- 次に、Zookeeperを起動します
- スクリプトがない場合は、一度に1つのプロセスを開始します
- 起動が完了したら、必ず飼育係の状態を確認してください。
/export/servers/zookeeper-3.4.5-cdh5.14.0/bin/start-zk-all.sh
- 次に、Hbaseを起動します
- 方法1:最初のマシンがすべてのマシンのプロセスを一度に開始します
cd /export/servers/hbase-1.2.0-cdh5.14.0/
bin/start-hbase.sh
- シャットダウン
- 最初にhbaseを閉じます
- hdfsまたはzookeeperを再度オフにします
bin/stop-hbase.sh
- 注意:
- 開始プロセス
- 開始プロセス
- 警告心配しないでください
- 方法2:単一のプロセスを開始する
cd /export/servers/hbase-1.2.0-cdh5.14.0/
bin/hbase-daemon.sh start master
bin/hbase-daemon.sh start regionserver
テスト訪問
- jps:プロセスが完了しているかどうかを確認します
- プロセスが自動的に消える場合は、ログを確認してください
- ログはどこにありますか?
tail -100f logs/hbase-root-master-node-01.log
- WebUIにアクセス
node-01:60010
node-02:60010
注意:hbase我们使用的是1.x版本
apache从1.x开始网页端口更改为16010
cdh延续以前老版本的端口:60010
- 最初の構成環境変数
vim /etc/profile
export HBASE_HOME=/export/servers/hbase-1.2.0-cdh5.14.0
export PATH=$PATH:$HBASE_HOME/bin
source /etc/profile