擬似分散hbaseクラスタの構築
6706 ワード
擬似分散hbaseクラスタの構築
ターゲットhadoop擬似分散クラスタを構築し、ホストディレクトリをデータディレクトリとしてマウントし、9000ポートを露出してデータアクセスポートとする hbase擬似分散クラスタを構築し、hadoop:9000をファイルシステムとして使用する 容器使用、docker-compose簡略化システム使用起動・停止 hadoop擬似分散クラスタの構築
公式サイトから適切なバージョンをダウンロードします.hbaseの現在のバージョンではhadoop 2がサポートされています.6.1+バージョン、2.7.1はサポートされていません0、だから、今度は最新の2.6をダウンロードします.バージョン5
いくつかのプロファイルは以下の通りです.すべて公式ドキュメントを参照してください.
core-site.xml
hdfs-site.xml
ここの
yarn-site.xml
mapred-site.xml
dockerfile:dockerfileはhadoopと名付けられた.dockerfile
説明:java:onはisuper/java-oracle:jdk_に基づくカスタムjavaミラーである8,sshフリーパスワード登録機能を追加し,タイムゾーンを修正した.sshパスワードフリー登録はhadoop、hbaseクラスタ必須条件 namenodeは先にフォーマットしなければならないが、ここでは既存のnamenodeをフォーマットするためにforceパラメータが追加されている hadoop.sh hdfsとyarnサービスを開始し、具体的には hadoop.sh
hbase擬似分散クラスタの構築
公式サイトから最新バージョンをダウンロードします.ここは1.2です.4バージョン
プロファイルはhbase-siteが1つしかありません.xml
hadoop:9000ポートを使用すると、hadoopは前のhadoopクラスタのホスト名であり、docker-compose.ymlで指定
dockerfile:hbaseという名前です.dockerfile
hbase.sh hbaseサービスを開始します.具体的には
hbase.sh
コンテナを構築しdocker-composeを使用して停止
docker-compose.yml
2つのサービス、hadoopとhbaseを定義します.hadoopはhadoopを使用する.dockerfileはdockerfileとして、hadoop_というimageを生成します.pseudo_distributed:2.6.5、起動容器名hadoop、ホスト名hadoop、2つのポート50070と8088を露出する、ホストの現在のディレクトリの下のdataディレクトリをhdfs-siteからマウントする.xmlは、hadoopのnamenodeディレクトリとdatanodeディレクトリとして使用されることを知ることができる. hbase類似 docker1.10以降のネットワーク機能は大幅に強化され、docker daemonにdns機能が追加され、カスタムネットワークを使用するすべてのコンテナがホスト名で相互接続できるようになりました.
すべてのファイルを1つのディレクトリの下に置いて、全部で12のファイル、1つのdataフォルダ、この12のファイルは
hadoopファイル hadoop-2.5.6.tar.gz hadoop.dockerfile hadoop.sh core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml
hbaseファイル hbase-1.2.4.tar.gz hbase.dockerfile hbase.sh hbase-site.xml
もう一つdocker-composeymlファイル
システムの起動
ていしシステム
ミラーの再構築
または
使用と検証
hbase shell
hbaseコンテナに入り、hbase shellを起動します.
hbase shellの下にテーブル
新規2行
WEBビュー
ホストでの
ターゲット
公式サイトから適切なバージョンをダウンロードします.hbaseの現在のバージョンではhadoop 2がサポートされています.6.1+バージョン、2.7.1はサポートされていません0、だから、今度は最新の2.6をダウンロードします.バージョン5
いくつかのプロファイルは以下の通りです.すべて公式ドキュメントを参照してください.
core-site.xml
fs.defaultFS
hdfs://hadoop:9000
hdfs-site.xml
dfs.replication
1
dfs.namenode.name.dir
file:/v/dfs/name
dfs.datanode.data.dir
file:/v/dfs/data
ここの
/v/dfs/
はコンテナマッピングホストのディレクトリでdocker-compose.xmlファイルに詳細定義がありますyarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.resourcemanager.hostname
hadoop
mapred-site.xml
mapreduce.framework.name
yarn
dockerfile:dockerfileはhadoopと名付けられた.dockerfile
# Creates pseudo distributed hadoop 2.6.5
FROM java:on
MAINTAINER lyalchan "[email protected]"
ENV HADOOP_VERSION=2.6.5
ADD hadoop-${HADOOP_VERSION}.tar.gz /
ENV PATH /hadoop-${HADOOP_VERSION}/bin:/hadoop-${HADOOP_VERSION}/sbin:$PATH
ENV HADOOP_PREFIX=/hadoop-${HADOOP_VERSION}
ADD core-site.xml ${HADOOP_PREFIX}/etc/hadoop/
ADD hdfs-site.xml ${HADOOP_PREFIX}/etc/hadoop/
ADD mapred-site.xml ${HADOOP_PREFIX}/etc/hadoop/
ADD yarn-site.xml ${HADOOP_PREFIX}/etc/hadoop/
RUN echo export JAVA_HOME=${JAVA_HOME} >> $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh
RUN echo export HADOOP_PREFIX=/hadoop-${HADOOP_VERSION} >> $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh
RUN $HADOOP_PREFIX/bin/hdfs namenode -format -force
ADD hadoop.sh /
RUN chmod +x /hadoop.sh
ENTRYPOINT ["/hadoop.sh"]
説明:
#!/bin/bash
service ssh start
start-dfs.sh
start-yarn.sh
sleep 99999999
hbase擬似分散クラスタの構築
公式サイトから最新バージョンをダウンロードします.ここは1.2です.4バージョン
プロファイルはhbase-siteが1つしかありません.xml
hbase.cluster.distributed
true
hbase.rootdir
hdfs://hadoop:9000/hbase
hbase.zookeeper.property.dataDir
hdfs://hadoop:9000/zookeeper
hadoop:9000ポートを使用すると、hadoopは前のhadoopクラスタのホスト名であり、docker-compose.ymlで指定
dockerfile:hbaseという名前です.dockerfile
FROM java:on
MAINTAINER lyalchan "[email protected]"
ENV HBASE_VERSION 1.2.4
ADD hbase-${HBASE_VERSION}-bin.tar.gz /
ADD hbase-site.xml /hbase-${HBASE_VERSION}/conf/
ENV PATH /hbase-${HBASE_VERSION}/bin:$PATH
RUN echo export JAVA_HOME=$JAVA_HOME >> /hbase-$HBASE_VERSION/conf/hbase-env.sh
ADD hbase.sh /
RUN chmod +x /hbase.sh
ENTRYPOINT ["/hbase.sh"]
hbase.sh hbaseサービスを開始します.具体的には
hbase.sh
#!/bin/bash
service ssh start
start-hbase.sh
sleep 99999999
コンテナを構築しdocker-composeを使用して停止
docker-compose.yml
version: "2"
services:
hadoop:
build:
context: .
dockerfile: hadoop.dockerfile
image: hadoop_pseudo_distributed:2.6.5
container_name: hadoop
hostname: hadoop
ports:
- 50070:50070
- 8088:8088
volumes:
- ./data:/v
hbase:
build:
context: .
dockerfile: hbase.dockerfile
image: hbase_pseudo_distributed:1.2.4
container_name: hbase
depends_on:
- hadoop
hostname: hbase
ports:
- 16010:16010
volumes:
- ./data:/v
2つのサービス、hadoopとhbaseを定義します.
すべてのファイルを1つのディレクトリの下に置いて、全部で12のファイル、1つのdataフォルダ、この12のファイルは
hadoopファイル
hbaseファイル
もう一つdocker-composeymlファイル
システムの起動
docker-compose up -d
ていしシステム
docker-compose down
ミラーの再構築
docker-compose build
または
docker-compose up -d --build
使用と検証
hbase shell
docker exec -it hbase /bin/bash
hbaseコンテナに入り、hbase shellを起動します.
hbase shell
hbase shellの下にテーブル
test
を作成し、2行追加create "test", "cf"
put "test", "row1", "cf:a", "value1"
put "test", "row1", "cf:b", "value2"
put "test", "row2", "cf:a", "value3"
put "test", "row2", "cf:c", "value4"
新規2行
row1
とrow2
、row1
a,b両列ありrow2
a,c両列ありlist "test"
scan "test"
get "test", "row1"
get "test", "row2"
WEBビュー
ホストでの
localhost:16010
・localhost:50070
・localhost:8088
hbaseとhadoopの運転状況を確認できます