Hadoop インストール#
テンプレートマシンの設定#
まず、vbox をインストールし、CentOS イメージをダウンロードします。
最小限のシステムインストールを行い、efi パーティション、boot efi / をキャンセルします。
ネットワークの設定
ここで、ビデオとは異なるイメージを使用しているため、生成されるネットワーク名が異なる可能性があります。
ネットワークの設定#
まず、CentOS 仮想マシンのネットワークを次の設定に変更します。
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
解析の設定は、type をブリッジネットワークに設定します。
gateway はゲートウェイです。
ipaddr は仮想マシンの IP です。
dns1 はオプションのゲートウェイアドレスです。
ワークショップのゲートウェイは 192.168.8.1 なので、物理マシンの IP も 192.168.8.x です。
仮想マシンの IP アドレスは 192.168.8.x と同じように書く必要があります。
ここでのネットワークを寮のネットワークに変更すると、仮想マシンはインターネットに接続できない場合があります。寮のネットワークに合わせて複数のネットワークアダプタを設定することをお勧めします。
設定が完了したら、ネットワークサービスを再起動します。
systemctl restart network
ip addr
を使用して現在の設定を確認します。
最後にエラーが発生し、サービスの再起動に失敗する場合は、おそらくネットワークの設定に問題がある可能性があります。
vbox のネットワーク設定は上記のようになります。デバイスのネットワーク設定で、ネットワークカード 1 をブリッジネットワークに設定し、名前はコンピューターがインターネットに接続しているネットワークカードを選択します。
私のネットワークカードは ax201 です。
成功したら、物理マシンから仮想マシンに ping できます。
SSH 接続#
仮想マシンのネットワークが正しく設定されていることを確認してください。
設定が完了したら、ssh ターミナルに仮想マシンの IP アドレスと root ユーザーとパスワードを入力すると、直接接続できます。
これで、ネットワークの設定が完了し、チュートリアルに従って進むことができます。その後のクラスターネットワークの設定は、これに類似しているはずです。
screenfetch のインストール(オプション)#
#ファイルを取得
wget -O screenfetch https://git.io/vaHfR
#実行権限を追加
chmod +x screenfetch
コンピューターの設定を表示するために使用します。
システムの更新(オプション)#
sudo yum check-update
sudo yum update
必要なソフトウェアパッケージのインストール#
yum install -y epel-release
yum install -y psmisc nc net-tools rsync vim lrzsz ntp libzstd openssl-static tree iotop git
ファイアウォールの無効化#
systemctl stop firewalld
systemctl disable firewalld
ホストファイルの変更#
vim /etc/hosts
192.168.8.101 neko01
192.168.8.102 neko02
一般ユーザーの作成と権限設定#
1. ユーザーの追加
useradd maomao
passwd maomao
2.root 権限の追加
vim /etc/sudoers
shift + g
を使用して最後に移動します。
root の下にユーザー情報を追加し、wq! で強制的に保存して終了します。
/opt ディレクトリの作成#
cd /opt
mkdir module
mkdir software
ls
を入力して結果を確認します。
JDK のインストールと環境変数の設定#
finalshell のインストールをお勧めします。FTP が付属しています。
1. jar ファイルのインポート#
jdk-8u212-linux-x64.tar.gz
hadoop-3.1.3.tar.gz
2. JDK のインストール#
tar で解凍
-zcvf
でパッケージ化、-zxvf
で解凍
tar -zxvf jdk-8u212-linux-x64.tar.gz -C ../module
-C
を忘れた場合は、mv
を使用して移動します。
mv jdk1.8.0_212/ ../module/
3. 環境変数の追加#
このファイルを直接変更することはお勧めしません。
vim /etc/profile
原理
for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
環境変数を作成します。
cd /etc/profile.d
ファイルを作成します。
sudo touch java.sh
sudo vim java.sh
#jdk環境の設定
#JAVA_HOME変数の宣言
JAVA_HOME=/opt/module/jdk1.8.0_212
#PATH変数の宣言
PATH=$PATH:$JAVA_HOME/bin
#PATH、JAVA_HOMEをシステム全体の変数として設定
export JAVA_HOME PATH
profile ファイルを再読み込みします。
source /etc/profile
テスト
[maomao@nekopara profile.d]$ java -version
java version "1.8.0_212"
Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
Hadoop の設定#
まず、ファイルをmodule
に解凍します。
一般ユーザーの場合は、sudo
を使用してください。
Hadoop の bin と sbin ディレクトリを環境変数に設定する#
#jdk環境の設定
#JAVA_HOME変数の宣言
JAVA_HOME=/opt/module/jdk1.8.0_212
#Hadoop環境の設定
#HADOOP_HOMEの宣言
HADOOP_HOME=/opt/module/hadoop-3.1.3
#PATH変数の宣言
#環境変数の統合
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#PATH、JAVA_HOME、HADOOP_HOMEをシステム全体の変数として設定
export JAVA_HOME PATH HADOOP_HOME
キャッシュをリフレッシュ
source /etc/profile
検証
[root@nekopara profile.d]# hadoop version
Hadoop 3.1.3
Source code repository https://gitbox.apache.org/repos/asf/hadoop.git -r ba631c436b806728f8ec2f54ab1e289526c90579
Compiled by ztang on 2019-09-12T02:47Z
Compiled with protoc 2.5.0
From source with checksum ec785077c385118ac91aadde5ec9799
This command was run using /opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-common-3.1.3.jar
このような出力が表示されれば、環境変数が正しく設定されています。