• home
  • Hadoop 2.4をインストールしてみました

Hadoop 2.4をインストールしてみました

Hadoop 2.3より、大幅ブラッシュアップしてました。色々変わりましたので、最新のV2.4をインストールしてみました。

まずはdocs

http://hadoop.apache.org/docs/r2.4.0/hadoop-project-dist/hadoop-common/ClusterSetup.html

簡単な2台構成で行きましょう。

  1. hostname: hadoop01( master + slave )
  2. hostname: hadoop02( slave )

masterとslaveが同じ設定ファイルを使えますので、まずhadoop01でインストールし、その後scpすればよいはず。

事前準備

  1. 公式サイトからDLできるのは32bit版しかないので、32bitのjavaを使いましょう。
  2. Networkに関して、2台サーバーがお互いにssh接続できるようにする必要があります。

インストール

  1. DL & 解凍
    DLリンクはこちら:http://www.apache.org/dyn/closer.cgi/hadoop/common/

    [shell]
    tar -zxf hadoop-2.4.0.tar.gz
    cd hadoop-2.4.0
    [/shell]

  2. 環境変数の設定。設定ファイル:etc/hadoop/hadoop-env.shとetc/hadoop/yarn-env.sh

    [shell]
    export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386/
    export HADOOP_HOME=/home/lulin/hadoop-2.4.0/
    export HADOOP_OPTS=-Djava.net.preferIPv4Stack=true
    [/shell]

  3. etc/hadoop/core-site.xmlの設定まずはhadoop用tmpフォルダー作成

    [shell]
    mkdir /home/lulin/hadoop.tmp
    [/shell]

    次はetc/hadoop/core-site.xmlの<configuration>と</configuration>の間下記の設定を追加する

    [html]
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://hadoop01:9000</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>file:///home/lulin/hadoop.tmp</value>
    <description>A base for other temporary directories.</description>
    </property>
    [/html]

  4. etc/hadoop/hdfs-site.xmlの設定まずはhafs用フォルダー作成

    [shell]
    mkdir -p /home/lulin/hadoop.dfs/name/
    mkdir -p /home/lulin/hadoop.dfs/data/
    [/shell]

    etc/hadoop/hdfs-site.xmlに下記の設定を追加する。

    [html]
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///home/lulin/hadoop.dfs/name/</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///home/lulin/hadoop.dfs/data/</value>
    </property>
    <property>
    <name>dfs.namenode.http-address</name>
    <value>hadoop01:10700</value>
    </property>
    <property>
    <name>dfs.datanode.address</name>
    <value>0.0.0.0:10010</value>
    </property>

    <property>
    <name>dfs.datanode.ipc.address</name>
    <value>0.0.0.0:10020</value>
    </property>

    <property>
    <name>dfs.datanode.ipc.address</name>
    <value>0.0.0.0:10030</value>
    </property>

    <property>
    <name>dfs.datanode.http.address</name>
    <value>0.0.0.0:10040</value>
    </property>

    <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>0.0.0.0:10050</value>
    </property>
    [/html]

  5. etc/hadoop/slavesの設定

    [html]
    hadoop01
    hadoop02
    [/html]

  6. etc/hadoop/yarn-site.xmlの設定

    [html]
    <property>
    <name>yarn.resourcemanager.address</name>
    <value>hadoop01:10110</value>
    </property>
    <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>hadoop01:10120</value>
    </property>
    <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>hadoop01:10130</value>
    </property>
    <property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>hadoop01:10140</value>
    </property>
    <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>hadoop01:10150</value>
    </property>

    <property>
    <name>yarn.nodemanager.localizer.address</name>
    <value>${yarn.nodemanager.hostname}:10160</value>
    </property>

    <property>
    <name>yarn.nodemanager.webapp.address</name>
    <value>${yarn.nodemanager.hostname}:10170</value>
    </property>
    [/html]

  7. etc/hadoop/mapred-site.xmlの設定

    [html]
    <property>
    <name>mapreduce.jobhistory.address</name>
    <value>hadoop01:10210</value>
    </property>

    <property>
    <name>mapreduce.jobhistory.admin.address</name>
    <value>hadoop01:10220</value>
    </property>

    <property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>hadoop01:10230</value>
    </property>
    [/html]

  8. hadoop、 tmpフォルダー、dfsフォルダーを全ての

    [shell]
    scp -r hadoop-2.4.0 hadoop.dfs hadoop.tmp hadoop02:~/
    [/shell]

  9. hdfs作成

    [shell]
    bin/hdfs namenode -format
    [/shell]

  10. ここまで準備完了です。hadoopスタート!masterであるhadoop01で、下記のコマンドを実行する。

    [shell]
    sbin/start-dfs.sh
    sbin/start-yarn.sh
    sbin/mr-jobhistory-daemon.sh start historyserver
    [/shell]

  11. WEB UIでシステムステータスを確認できます。
    NameNode: http://hadoop01:10700/
    ResourceManager: http://hadoop01:10150/
    JobHistory: http://hadoop01:10230/
  12. 最後に、シャットダウンコマンドです。

    [shell]
    sbin/stop-dfs.sh
    sbin/stop-yarn.sh
    sbin/mr-jobhistory-daemon.sh stop historyserver
    [/shell]