Ubuntu22でのHadoop3.3.6環境構築手順

必要なソフトウェア

Ubuntu 22.04 64bit、Hadoop 3.3.6、Java 8

システムアップデート

sudo apt update
sudo apt upgrade -y

SSHサーバーのインストール

sudo apt install openssh-server -y

SSH接続確認

systemctl status ssh

pdshのインストール

sudo apt install pdsh -y

環境変数の設定

/etc/profileに以下を追加:

export PDSH_RCMD_TYPE=ssh

SSH鍵の設定

ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

SSH接続テスト

ssh localhost exit

Javaのインストール

sudo apt install openjdk-8-jdk -y

インストール確認:

java -version

Hadoopのインストール

wget https://archive.apache.org/dist/hadoop/core/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 /opt/hadoop

Hadoop環境設定

/opt/hadoop/etc/hadoop/hadoop-env.shを編集:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/opt/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/logs

コア設定ファイル

/opt/hadoop/etc/hadoop/core-site.xml:

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/hadoop/tmp</value>
  </property>
</configuration>

HDFS設定

/opt/hadoop/etc/hadoop/hdfs-site.xml:

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

MapReduce設定

/opt/hadoop/etc/hadoop/mapred-site.xml:

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

YARN設定

/opt/hadoop/etc/hadoop/yarn-site.xml:

<configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
</configuration>

パス設定

~/.bashrcに追加:

export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

HDFSの初期化

hdfs namenode -format

HDFSサービスの起動

start-dfs.sh

Webインターフェース確認

ブラウザで http://localhost:9870 にアクセス

YARNサービスの起動

start-yarn.sh

動作確認

テストファイルの作成とHDFSへの配置:

echo "hello hadoop world" > test.txt
hdfs dfs -mkdir /input
hdfs dfs -put test.txt /input/

WordCountの実行:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.6.jar wordcount /input /output

結果の確認:

hdfs dfs -cat /output/part-r-00000

トラブルシューティング

権限エラーの場合:

sudo chown -R $USER:$USER /opt/hadoop

ポート競合の確認:

netstat -tulpn | grep java

タグ: Ubuntu Hadoop Java SSH HDFS

5月10日 21:30 投稿