OSXにApache Hadoopをインストール

Macboook Airなどのローカル環境でHadoopを気軽に試したいケースもあるかと思います。OSX 1台だけでHadoopを使う場合の環境構築手順をまとめました。

参考 - 公式サイト:Single Node Setup

環境

インストール手順

  1. HomebrewでHadoopをインストールします。

     brew install hadoop
    
  2. ssh認証用の鍵を作成します。

     ssh-keygen -t rsa -P ""     
     cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  3. 「システム環境設定」の「共有」で、リモートログインをオンにします。

  4. localhostにパスワードなしでsshログインできることを確認します。

     ssh localhost
    
  5. 設定ファイルを修正します。

     cd /usr/local/Cellar/hadoop/1.1.2/libexec/conf
    

    core-site.xml:

     <configuration>
          <property>
              <name>fs.default.name</name>
              <value>hdfs://localhost:9000</value>
          </property>
     </configuration>
    

    hdfs-site.xml:

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

    mapred-site.xml:

     <configuration>
          <property>
              <name>mapred.job.tracker</name>
              <value>localhost:9001</value>
          </property>
     </configuration>
    
  6. hadoop-env.shを修正します。

     export HADOOP_OPTS="-Djava.security.krb5.realm= -Djava.security.krb.kdc="
    

    Hadoop logs errors upon startup on OS X 10.7対応

  7. namenodeを初期化します。

     cd /usr/local/Cellar/hadoop/1.1.2/libexec/bin
     hadoop namenode -format
    

    ※ HADOOP_OPTSを設定したにも関わらずエラーが出る場合は、以下を試すとうまくいく場合があります。

     rm -rf /tmp/hadoop-s
    

以上で環境構築は終わりです。

起動/終了

  1. hadoopを起動します。

     start-all.sh
    
  2. 確認します。

  3. hadoopを終了します。

     stop-all.sh