Apache Hadoopの環境をシングルノードで構築します。
環境:Ubuntu 12.04
Java
Hadoopを使用するには、Javaのインストールが必要です。User & Group
Hadoop用のUserとGroupを作成します。
$ sudo addgroup hadoop
$ sudo adduser --ingroup hadoop hadoop
$ sudo adduser --ingroup hadoop hadoop
SSH
HadoopはNode間の通信にSSHを使用するので設定が必要です。
sshの鍵(RSA暗号方式)を作成する。
$ su - hadoop
$ ssh-keygen -t rsa -P ""
$ ssh-keygen -t rsa -P ""
$HOME/.ssh/ディレクトリに秘密鍵(id_rsa)と公開鍵(id_rsa.pub)が作成される。
※本来はパスワードを設定するが、今回は未設定とする。
公開鍵を設定ファイル(authorized_keys)に保存
$ cp $HOME/.ssh/id_rsa.pub $HOME/.ssh/authorized_keys
接続確認
$ ssh localhost
Hadoop
Hadoopを下記からダウンロード
http://www.apache.org/dyn/closer.cgi/hadoop/common/
ダウンロードしたファイルを解凍し、ユーザ、グループ、権限の設定を行う。
$ cd /usr/local
$ sudo tar xzf hadoop-1.2.1.tar.gz
$ sudo mv hadoop-1.2.1 hadoop
$ sudo chown -R hduser:hadoop hadoop
$ sudo mv hadoop-1.2.1/ hadoop
$ sudo tar xzf hadoop-1.2.1.tar.gz
$ sudo mv hadoop-1.2.1 hadoop
$ sudo chown -R hduser:hadoop hadoop
$ sudo mv hadoop-1.2.1/ hadoop
環境変数
$HOME/.profileに下記を追加
export HADOOP_PREFIX=/usr/local/hadoop
unalias fs &> /dev/null
alias fs="hadoop fs"
unalias hls &> /dev/null
alias hls="fs -ls"
export PATH=$PATH:$HADOOP_PREFIX/bin
/usr/local/hadoop/conf/hadoop-env.shの下記を修正
# The java implementation to use. Required.
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
データの保存先設定
データ保存用のディレクトリを作成し、ユーザ、グループ、権限の設定を行う。
$ sudo mkdir -p /app/hadoop/tmp
$ sudo chown hadoop:hadoop /app/hadoop/tmp
$ sudo chmod 750 /app/hadoop/tmp
$ sudo chown hadoop:hadoop /app/hadoop/tmp
$ sudo chmod 750 /app/hadoop/tmp
/usr/local/hadoop/conf/core-site.xmlに下記を追加
<property>
<name>hadoop.tmp.dir</name>
<value>/app/hadoop/tmp</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:54310</value>
</property>
/usr/local/hadoop/conf/mapred-site.xmlに下記を追加
<property>
<name>mapred.job.tracker</name>
<value>localhost:54311</value>
</property>
/usr/local/hadoop/conf/hdfs-site.xmlに下記を追加
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
NameNodeの初期化
$ /usr/local/hadoop/bin/hadoop namenode -format
Hadoopの起動
$ /usr/local/hadoop/bin/start-all.sh
動作確認
/home/hadoop/sampleの配下に適当なファイルを作成し、下記を実行
$ hadoop dfs -copyFromLocal /home/hadoop/sample /data/sample
下記のコマンドでコピーされたことを確認
$ hadoop dfs -ls /data/sample
Hadoopの終了
$ /usr/local/hadoop/bin/stop-all.sh
0 件のコメント:
コメントを投稿