今日の詳細な手順についての記録は、ビルドHadoopクラスタベースのずっと前をドッカー!(ローカルのUbuntu仮想マシンのビルド手順はまったく同じではないかもしれないが、この記事ではUbuntuのサーバー上の手順を説明します)
1は、ドッキングウィンドウをインストールする必要があります
ここでは、参照することができ新人チュートリアル-ubuntuインストール]ドッキングウィンドウを
古いバージョンアンインストールします。
apt-get remove docker docker-engine docker.io containerd runc
使用ドッキングウィンドウデポは、インストールaptのインデックスを更新します。
sudo apt-get update
HTTPS経由でリポジトリを取得するためのインストールaptの依存関係:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
GPGキードッカーの公式を追加します。
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88指紋8つの文字を検索した後、あなたは今、指紋と鍵を持っていることを確認してください。
sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
セットの安定バージョンのリポジトリに次の手順を使用します。
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
aptパッケージインデックスを更新します。
sudo apt-get update
ドッカーエンジンコミュニティとcontainerdの最新バージョンをインストールし、または特定のバージョンをインストールするには、次のステップに進みます。
sudo apt-get install docker-ce docker-ce-cli containerd.io
ドッカーエンジンコミュニティの特定のバージョンをインストールするには、倉庫内の利用可能なバージョンの一覧を表示し、インストールを選択してください。あなたの倉庫利用できるバージョンをリストします。
apt-cache madison docker-ce
例えば、第二行特定のバージョンを使用してバージョン文字列:
apt-get install docker-ce=5:19.03.4~3-0~ubuntu-xenial docker-ce-cli=5:19.03.4~3-0~ubuntu-xenial containerd.io
ドッカーテストは、インストールが成功したかどうか、次のコマンドを入力してインストール以下の情報をプリントアウト成功しました:
sudo docker run hello-world
ドッキングウィンドウのインストールを表示します。
docker ps -a
2、私たちは、ドッキングウィンドウ上でHadoopクラスタを構築するために開始することができます
ドッキングウィンドウのミラーを引き、鏡を見ます
docker pull ubuntu:16.04
docker images
ブートイメージ
docker run -it ubuntu:16.04 /bin/bash
ミラーに入射した後、以下の操作をした後(、容器内ことに注意)@文字が同じではない注容器内部で行われる
追加ソース
echo "deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe" > /etc/apt/sources.list
更新ソフトウェアのソース
apt-get update
インストールJDKのopenssh-クライアントのopenssh-サーバーのvim
apt-get install openjdk-8-jdk
在这里插入代码片
apt-get install openssh-client
apt-get install openssh-server
apt-get install vim
無料着陸構成は(漢も聞かないで、次のコマンドを直接うまくyesと結合され、入力します)
cd ~
ls -a
ssh-keygen -t rsa -P ""
cat .ssh/id_rsa.pub >> .ssh/authorized_keys
service ssh start
ssh 127.0.0.1
ダウンロードHadoopのインストールパッケージ
(https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gzこれはインストールパッケージHadoopのウェブサイトをダウンロードすることで、清華大学無料のミラーの大学、注意を払うが、愚かな、何がサーバーに接続し、ローカルのダウンロード・アーカイブの解凍カザフスタンをアップロードxftpしていない、私はちょうど罰金をやると言う!早くこれはいじりができないコンテナであると述べた。ダウンロードされた後解凍、シーザーは言わないが何であるかを理解することができ、名前変更!)
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
tar -zxvf hadoop-3.2.1.tar.gz -C /usr/local/
cd /usr/local/
mv hadoop-3.2.1 hadoop
Hadoopの変更設定ファイルと設定のJava環境
vim /etc/profile
最後に、表面下のコードを追加します。
#java
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#hadoop
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_CONF_DIR=$HADOOP_HOME
export HADOOP_LIBEXEC_DIR=$HADOOP_HOME/libexec
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH
export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop
export HDFS_DATANODE_USER=root
export HDFS_DATANODE_SECURE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export HDFS_NAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
以上のように構成されているJava環境は、以下がHadoopの構成であり、二つのディレクトリは、最初と同じではありません
cd /usr/local/hadoop/etc/hadoop
あまりにも多くのコードの下、それが直接一緒に入れて貼り付け、それを理解することができるはずです
vim hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
vim core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://h01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop3/hadoop/tmp</value>
</property>
</configuration>
vim hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop3/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.namenode.data.dir</name>
<value>/home/hadoop3/hadoop/hdfs/data</value>
</property>
</configuration>
vim mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.application.classpath</name>
<value>
/usr/local/hadoop/etc/hadoop,
/usr/local/hadoop/share/hadoop/common/*,
/usr/local/hadoop/share/hadoop/common/lib/*,
/usr/local/hadoop/share/hadoop/hdfs/*,
/usr/local/hadoop/share/hadoop/hdfs/lib/*,
/usr/local/hadoop/share/hadoop/mapreduce/*,
/usr/local/hadoop/share/hadoop/mapreduce/lib/*,
/usr/local/hadoop/share/hadoop/yarn/*,
/usr/local/hadoop/share/hadoop/yarn/lib/*
</value>
</property>
</configuration>
vim yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>h01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
Hadoopのマスターノードと、次のような構成
vim workers
これは、単に追加し、直接内部のように追加空白のファイルです。
カイからの設定のブート
vim ~/.bashrc
以下のコードを挿入し、最後尾
service ssh start
**の出口(出口!、三つの可能なすべての人が、容器出口のように、短期では、異なっているに応じて)**見ていない、下の写真の後ろに同じではありません#
exit
exit
exit
ビューコンテナ
docker ps -a
ちょうど(このステップは少し遅いかもしれない)ミラーにパッケージ構成しました
docker commit 容器id hadoop_init
ビューミラー
docker images
ネットワークブリッジとビューのネットワークを設定します
docker network create --driver=bridge hadoop
docker network ls
指定master
docker run -itd --network hadoop -h 'h01' --name 'h01' -p 8088:8088 -p 9870:9870 hadoop_init /bin/bash
docker run -itd --network hadoop -h 'h02' --name 'h02' hadoop_init /bin/bash
docker run -itd --network hadoop -h 'h03' --name 'h03' hadoop_init /bin/bash
H01は、入力と書式設定、および他の操作が開始します
docker attach h01
cd /usr/local/hadoop/bin
./hadoop namenode -formate
cd ../sbin/
./start-all.sh
最後に、あなたの成功に代わって、このの登場!(ここでは、短期では、限り、それ上の各ノードが表示されます背後に存在しているように、IP、5点を装備したショットの設定別のサーバー上にあります)