Hadoop環境の構成とインストール


0、準備


3つのUbuntu(master、worker 1,2)を用意し、ネットワークをNATに設定する

1.コンピュータの設定


0)ノード


プライマリノード:192.168.66.10 ワークノード:192.168.66.20/192.168.66.30

1)コンピュータ名の変更


(1)マスターノード
vi/etc/hostname#名をmasterに変更

(2)ワークノード
vi/etc/hostname#名をworker 1と2に変更

2)その他のコンピュータ名の設定


vi/etc/hostsで 192.168.66.10 master 192.168.66.20 worker1 192.168.66.30 worker 2すべてのコンピュータを追加 入力が正しい場合は、パケットの移動状況を確認できます

2.Java設定


1)Javaのインストール


HadoopはJavaベースのオープンソースフレームワークなのでJavaをインストールする必要があります apt update#現在インストールされているすべてのパッケージを更新 apt install-y openjdk-8-jdk#javaのインストール

3.ユーザーアカウントの設定


1)マスターノード


addgroup --gid 2001 hdfs useradd --create-home --shell /bin/bash --uid 2001 --gid 2001 hdfs HDFSサービスアカウントの実行>名前ノードおよびデータノードなどのHDFS関連サービス passwd hdfs#hdfsパスワードの変更 addgroup --gid 2002 yarn useradd --create-home --shell /bin/bash --uid 2002 --gid 2002 yarn 糸サービスアカウントの作成>リソースマネージャやnodeManagerなどYARN関連のサービス passwd糸#糸パスワードの変更 Master Nodeでデータディレクトリを作成し、Worker Nodeでデータディレクトリを作成します。 mkdir -p /data/hdfs/namenode # mkdir -p /data/hdfs/jornalnode chown -R hdfs:hdfs /data/hdfs mkdir -p /data/yarn chown -R yarn:yarn /data/yarn

4.SSH設定


1)SSH取付


apt install openssh-server apt install openssh-client インストールが正しいかどうかを確認するには systemctl status ssh netstat-anlp|grep sshで検証可能 最後に、プライマリノードがworker 1,2に接続されていることを確認します。

2)SSHキーの設定


1)マスターノード
hdfsを使用してログインし、ssh-keygen公開鍵を生成 squareを使用してssh-keygen公開鍵をログインして作成する ssh-keygen#公開鍵の作成 ssh-copy-id hdfs@master ssh-copy-id hdfs@worker1 パスワードの入力 ssh-copy-id hdfs@worker2 パスワードの入力 ssh-keygen#公開鍵の作成 ssh-copy-id yarn@master ssh-copy-id yarn@worker1 パスワードの入力 ssh-copy-id yarn@worker2 パスワードの入力 最後に、masterでworker 1,2がパスワードを入力せずに接続されていることを確認します。

5.画面を閉じて解凍する


1)Haduのダウンロード(すべてのコンピュータが同じ)


Hadoopリンクのダウンロード
またはダウンロードwget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1-src.tar.gz

2)解凍と移動(すべてのコンピュータが同じ)

tar zxvf hadoop-3.2.2.tar.gzファイルをアンインストールすると、mv hadoop-3.2.2 /opt/hadoop-3.2.2

3)ディレクトリの作成(すべてのコンピュータが同じ)

mkdir /opt/hadoop-3.2.2/pids mkdir /opt/hadoop-3.2.2/logs chown -R hdfs:hdfs /opt/hadoop-3.2.2 chmod 757 /opt/hadoop-3.2.2/pids chmod 757 /opt/hadoop-3.2.2/logs

6.明るさの設定


すべてのプロファイルは/opt/hadoop-3.2/etc/hadoopに存在します。 1)設定 (1)マスターノード hadoop-env.sh(下部に格納) export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64 export HADOOP_HOME=/opt/hadoop-3.2.2 export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop export HADOOP_MAPRED_HOME=${HADOOP_HOME} export HADOOP_COMMON_HOME=${HADOOP_HOME} export HADOOP_LOG_DIR=${HADOOP_HOME}/logs export HADOOP_PID_DIR=${HADOOP_HOME}/pids export HDFS_NAMENODE_USER="hdfs" export HDFS_DATANODE_USER="hdfs" export YARN_RESOURCEMANAGER_USER="yarn" export YARN_NODEMANAGER_USER="yarn" core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> <description>NameNode URI</description> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> <description>Buffer size</description> </property> <!-- HA Configuration --> <property> <name>ha.zookeeper.quorum</name> <value>zookeeper-001:2181,zookeeper-002:2181,zookeeper-003:2181</value> </property> <property> <name>dfs.ha.fencing.methods</name> <value>sshfence</value> </property> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/home/hdfs/.ssh/id_rsa</value> </property> </configuration> hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.namenode.http.address</name> <value>master:9870</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/data/hdfs/namenode</value> </property> </configuration> mapred-site.xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> yarn-site.xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>1024</value> </property> <property> <name>yarn.nodemanager.resource.cpu-vcores</name> <value>1</value> </property> <property> <name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> </property> </configuration> workers master worker1 worker2

(2)ワークノード
hadoop-env.sh export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64 export HADOOP_HOME=/opt/hadoop-3.2.2 export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop export HADOOP_MAPRED_HOME=${HADOOP_HOME} export HADOOP_COMMON_HOME=${HADOOP_HOME} export HADOOP_LOG_DIR=${HADOOP_HOME}/logs export HADOOP_PID_DIR=${HADOOP_HOME}/pids export HDFS_NAMENODE_USER="hdfs" export HDFS_SECONDARYNAMENODE_USER="hdfs" export HDFS_DATANODE_USER="hdfs" export YARN_RESOURCEMANAGER_USER="yarn" export YARN_NODEMANAGER_USER="yarn" core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> </configuration> hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.datanode.name.dir</name> <value>file:/data/hdfs/datanode</value> </property> </configuration> mapred-site.xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> yarn-site.xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>1024</value> </property> <property> <name>yarn.nodemanager.resource.cpu-vcores</name> <value>1</value> </property> <property> <name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> </property> </configuration>

7.Haduの運転


1)運転


(1)マスターノード
/opt/hadoop-3.2.2/bin/hdfs namenode -format /opt/hadoop-3.2.2/sbin/start-all.sh

2)確認


(1)マスターノード
jps実行時 P.S.Name Nodeが表示されない場合は、次のコードを実行します。 chown -R hdfs:hdfs /data/hdfs chown -R yarn:yarn /data/yarn init 6 jpsコマンドの実行

(2)ワークノード
jps実行時

(3)ホスト上でWebブラウザをチェックする
http://主ノードのIPアドレス:9870/

3)エラー確認


cd/opt/hadoop-3.2/logs/にあります。ログファイルの確認