CDH(Coudela’s Distribution for Hadoop)3 を Fedora 13 64bit単体にインストールする手順をまとめる。一台のマシンなのでHDFSは仮想分散モード(Pseudo Distributed Mode)とする。
Fedoraのインストールは完了しており,インターネットアクセスなども確保できていると仮定して話を進める。
Fedora12以降,Redhat系にも応用可能のはずである。
1. JDKのインストール
www.oracle.com から,プラットフォームに合ったJDKをダウンロードする。
Fedoraの場合,ファイル名が ~rpm.binとなっているものがお勧め。
執筆時点でLinux x68 64ビット版は
jdk-6u22-linux-x64-rpm.bin だった。
Rootでログインして,このファイルに実行権をつけて実行する。
# chmod +x jdk-6u22-linux-x64-rpm.bin
# ./jdk-6u22-linux-x64-rpm.bin
これで自動的に解凍される。続行するか聞いてくるのでEnterを押すとrpmも自動実行され,インストールが完了する。
ここで,JDKがどこにインストールされたかを知っておくと,後で何かと便利である。
# rpm -ql jdk | more
/etc
/etc/.java
/etc/.java/.systemPrefs
/etc/.java/.systemPrefs/.system.lock
/etc/.java/.systemPrefs/.systemRootModFile
/etc/init.d/jexec
/usr
/usr/java
/usr/java/jdk1.6.0_22
/usr/java/jdk1.6.0_22/COPYRIGHT
/usr/java/jdk1.6.0_22/README.html
/usr/java/jdk1.6.0_22/README_ja.html
/usr/java/jdk1.6.0_22/README_zh_CN.html
/usr/java/jdk1.6.0_22/THIRDPARTYLICENSEREADME.txt
/usr/java/jdk1.6.0_22/bin
:
:
となり,JAVA_HOMEは/usr/java/jdk1.6.0_22と判明する。
2. ClouderaのYumレポジトリを入手しyumをアップデート
# curl http://archive.cloudera.com/redhat/cdh/cloudera-cdh3.repo > /etc/yum.repos.d/cloudera-cdh3.repo
# yum update yum
これで,yumでCDHがインストールできるようになる。
3. Hadoopのインストール
# yum install hadoop-0.20-conf-pseudo
この後,必要に応じてCDH3のコンポーネントをインストールする。
例) # yum install hadoop-hbase
コンポーネント名として指定する名前は以下のとおり
Flume: flume
Sqoop: sqoop
Hue: hue
Pig: hadoop-pig
Hive: hadoop-hive
HBase: hadoop-hbase
Zookeeper: zookeeper
Oozie server: oozie_
Oozie client: Oozie-client_
Whirr: whirr
4. Hadoop起動
/etc/init.d 配下に登録された hadoop–で始まるサービスを開始する。
# for svc in hadoop-0.20-*
> do
> service $svc start
> done
Starting Hadoop datanode daemon (hadoop-datanode): starting datanode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-datanode-melintqal02.out
[ OK ]
Starting Hadoop jobtracker daemon (hadoop-jobtracker): starting jobtracker, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-jobtracker-melintqal02.out
[ OK ]
Starting Hadoop namenode daemon (hadoop-namenode): starting namenode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-namenode-melintqal02.out
[ OK ]
Starting Hadoop secondarynamenode daemon (hadoop-secondarynamenode): starting secondarynamenode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-secondarynamenode-melintqal02.out
[ OK ]
Starting Hadoop tasktracker daemon (hadoop-tasktracker): starting tasktracker, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-tasktracker-melintqal02.out
[ OK ]
5. テスト
これでインストールはすべて終了。あっけないほど簡単である。
hadoop コマンドは/usr/binにインストールされており,すぐにPath指定なしで使用できる。
たとえば,以下のようにHDFSを覗いてみる。動けばHadoopは正常に動作していると思っていい。
$ hadoop fs -ls /
Found 1 items
drwxr-xr-x – mapred supergroup 0 2010-12-15 11:56 /var
さらにいくつかやってみることがあるが,省略。以下を参照のこと
https://docs.cloudera.com/display/DOC/Installing+CDH3+on+a+Single+Linux+Node+in+Pseudo-distributed+Mode