Hadoop 簡単いんすとーる

最近個人用の計算機をいただきました。このコンピュータにまた Hadoop をインストールするのは面倒だと思いましたが、 Hadoop 本に簡単インストールの方法が書かれているのを思い出しました。このやり方だと、ユーザを新しく作ったり、XML の設定ファイルを編集したりなどの手続きが必要ないため簡単にインストールができます。ただし、RedHat 系もしくは Debian 系 の Linux のみ対応です。

詳しくは Cloudera のページ http://archive.cloudera.com/docs/_installing_hadoop_pseudo_distributed_mode.html に書かれていますが、以下 Debian系の場合についての流れを日本語にしました。

  • Apt のレポジトリに Cloudera を追加
    • /etc/apt/sources.list.d/cloudera.list というファイルを作る
    • /etc/apt/sources.list.d/cloudera.list に以下の二行を追加

deb http://archive.cloudera.com/debian DISTRO-stable contrib
deb-src http://archive.cloudera.com/debian DISTRO-stable contrib

ここで DISTRO は使っているシステムにあわせて書き換える必要があります。 "lsb_release -c" コマンドで使っているディストリビューションの名前が分かります*1

  • レポジトリキーの追加 

以下のコマンドを実行

curl -s http://archive.cloudera.com/debian/archive.key | sudo apt-key add -

  • Apt のパッケージ索引を更新 

以下のコマンドを実行

sudo apt-get update

  • hadoop パッケージのインストール

apt-cache search hadoop
sudo apt-get install hadoop

  • hadoop-conf-pseudo パッケージのインストール

apt-get install hadoop-conf-pseude

  • サービスの立ち上げ

以下のコマンドを実行

for service in /etc/init.d/hadoop-*
do
sudo $service start
done

サービスを立ち上げた後は、ユーザを作ったり HDFS を初期化するなどの処理が必要なく、もうそのまま使えます。たとえば、

hadoop fs -mkdir hogehoge

とすると HDFS 上に hogehoge というディレクトリがくつられるはずです。

ここでは仮想クラスタの場合のインストールですが、このパッケージはマルチノードのインストールにも対応しています。

*1:ディストリビューション jaunty には stableのパッケージがないそうなので、その場合は "intrepid" と書き換えること。