Hadoopクラスタ環境は必ずしも必要ではないが、複数のサーバーを購入する個人のため、複数のサーバーにインストールされています。複数のサーバが、仮想マシンのパフォーマンスをより消費することができ、仮想サーバ上で仮想マシンをインストールし、実際には、Hadoopのドッキングウィンドウのミラーをインストールするために使用することができ、ミラーものHadoop Hadoopクラスタを使用して達成することができます。
図1に示すように、ミラー取付Hadoopの
1)Hadoopの中でミラードッキングウィンドウを探します
docker search hadoop
2)ミラーを引っ張ります
私たちは、引っ張ってのスター鏡画像の最大数を選択した
docker pull docker.io/sequenceiq/hadoop-docker
か、それはアリのHadoopミラー引っ張ることができる
docker pull registry.cn-hangzhou.aliyuncs.com/kaibb/hadoop
ビューミラーを
docker images
3)コンテナのHadoopを作成します。
(1)マスターノードの作成
docker run --name hadoop1 -d -h master docker.io/sequenceiq/hadoop-docker
パラメータ:
-hホスト名コンテナが設定
-name設定コンテナー名が
バックグラウンドで実行-d
(2)以此方法创建slave1和slave2节点
docker run --name hadoop2 -d -h slave1 docker.io/sequenceiq/hadoop-docker
docker run --name hadoop3 -d -h slave2 docker.io/sequenceiq/hadoop-docker
(3)查看容器
docker ps -s
(4)进入容器查看jdk
docker exec -it hadoop1 bash
jdk都已经自带了
(5)配置ssh生成秘钥,所有的节点都要配置
进入容器后
启动ssh
/etc/init.d/sshd start
生成秘钥
·ssh-keygen -t rsa
(5)分别进入每个节点,将其他节点的公钥也都复制到authorized_keys,也就是说每个>authorized_keys 文件中存储的公钥都是3个而且是一样的
将容器中的文件复制到centos本地
·docker cp 容器id/容器名称:/root/.ssh/authorized_keys /home/hadoop/authorized_keys_master
将centos本地的文件复制到容器
·docker cp /home/hadoop/authorized_keys 容器id/容器名称:/root/.ssh/authorized_keys
(6)分别为每个节点配置ip地址
进入容器,在此容器中可以直接使用ifconfig命令 或者ip addr命令查看ip地址
为每个容器设置地址,vi /etc/hosts
配置
ssh master 测试一下,测试成功
2、配置hadoop(配置文件的目录一般都在/usr/local/hadoop-2.7.0/etc/hadoop下面)
1)配置hadoop-env.sh,配置jdk,在hadoop容器中已经帮我们配置好了
(1)进入容器查找 hadoop-env.sh存放位置
find / -name hadoop-env.sh
(2)查看 hadoop-env.sh文件
2)配置core-site.xml,配置hdfs的地址和端口号,在hadoop容器中已经帮我们配置好了
(1) 查找core-site.xml
find / -name core-site.xml
(2)加入配置,其实hadoop镜像已经帮我们配置好了
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/tmp</value>
</property>
3)設定HDFS-site.xmlのは、HDFSのバックアップの数を設定し、Hadoopのコンテナは、私たちに良好な分布を支援してきました
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
以上裏打ちされたスレーブの数ではなく、文句を言う人たちに等しいです
4)の構成は、糸上で実行されているのMapReduceを指定し、-site.xmlのをmapred Hadoopのコンテナに私たちに良好な分配を支援してきました
find / -name mapred-site.xml
mapreduce.framework.nameの
糸
5)糸-site.xmlのを設定し、HDFSのバックアップの数を設定し、Hadoopのコンテナは、私たちに良好な分布を支援してきました
設定パラメータ
6)他のノードにこれらのパラメータを送信します。
scp /usr/local/hadoop-2.7.0/etc/hadoop/yarn-site.xml slave1:/usr/local/hadoop-2.7.0/etc/hadoop/
3、実行のHadoop
1)マスターフォーマット名前ノードに
cd /usr/local/hadoop-2.7.0/bin/
./hadoop namenode -format
2)マスター上でクラスタを起動
cd /usr/local/hadoop-2.7.0/sbin/
./start-all.sh
ポートを伝えるために、エラーが占有されている場合は
停止し、その後、その後、起動
./stop-all.sh
./start-all.sh
開始を説明するために、プロセスビューを表示##### 3)JPSを