・1台のLinux環境で、簡単に、Oozieを試してみます。
・CentOS(1台)でCloudera社のHadoopパッケージ(CDH3beta3)を利用します。Hadoop環境(CDH3 beta3)の構築方法はこちら
Hadoop(1台構成) | HBase,Hive,Pig,HUE,Oozie等(1台構成) | Hadoop(複数台構成) | |
CentOS | こちら | HBase,Hive,Pig, HUE(旧Cloudera Desktop), Oozie | こちら |
---|---|---|---|
Ubuntu | こちら | HBase,Hive,Pig,HUE(旧Cloudera Desktop) |
必要なもの
・Linux(CentOS)+Cloudera版Hadoop環境(1台) → 構築方法はこちら
・インターネット接続
・Cloudera社のOozieのパッケージ(yumでインターネットからインストール)
作業手順
1. インストール
Linux環境にて、rootで作業します。
1-0. Cloudera社のCDH3リポジトリ確認
Cloudera社のCDH3リポジトリが必要ですので、既に設定されていないか確認します。
ls /etc/yum.repos.d/で、cloudera-cdh3.repoが存在すれば、OKのはずです。無い場合は、
cd /etc/yum.repos.d/とします。
wget http://archive.cloudera.com/redhat/cdh/cloudera-cdh3.repo
1-1. Oozieパッケージのインストール
インストール
yum -y install oozie oozie-client
確認
yum list oozie* | grep installed
1-2. Hadoopサーバーの設定
以下を、/etc/hadoop/conf/core-site.xmlに追記します。
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>localhost</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>oozie</value>
</property>
1-3. Oozieサーバーまわりの設定
・MySQLのインストール
インストール
yum -y install mysql mysql-server
初期設定(ここでは、DBサービスを起動して、コマンドラインの設定ウィザードで初期設定を行いました)
service mysqld startすべてデフォルト(DBのrootパスワードは、覚えておきましょう)
mysql_secure_installation
・ExtJS libraryの設定
http://www.sencha.com/learn/Ext_Version_Archives
からext-2.2.zipをダウンロードします。 (2.2.1とか3は不可です)
ダウンロードファイルを、例えば/tmp/ext-2.2.zipとして配置したとして、
sudo -u oozie /usr/lib/oozie/bin/oozie-setup.sh -extjs /tmp/ext-2.2.zip
...
New Oozie WAR file with added 'ExtJS library' at /usr/lib/oozie/oozie-server/webapps/oozie.war
・MySQL JDBC connector library
http://www.mysql.com/downloads/connector/j/5.1.htmlから、mysql-connector-java-5.1.13.tar.gzを、ダウンロードします。
ダウンロードファイルを、例えば/tmp/mysql-connector-java-5.1.13.tar.gzとして配置したとして、
mkdir /tmp/jdbc/
cd /tmp/jdbc/
tar xzf /tmp/mysql-connector-java-5.1.13.tar.gz
sudo -u oozie /usr/lib/oozie/bin/oozie-setup.sh -jars /tmp/jdbc/mysql-connector-java-5.1.13/mysql-connector-java-5.1.13-bin.jar
・Oozieの設定ファイル
vi /usr/lib/oozie/conf/oozie-site.xml
以下のような設定を追加します。
<property>
<name>oozie.db.schema.create</name>
<value>true</value>
</property>
<property>
<name>oozie.service.DataSourceService.jdbc.driver</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>oozie.service.DataSourceService.jdbc.url</name>
<value>jdbc:mysql://localhost:3306</value>
</property>
<property>
<name>oozie.service.DataSourceService.jdbc.username</name>
<value>oozie</value>
</property>
<property>
<name>oozie.service.DataSourceService.jdbc.password</name>
<value>oozie</value>
</property>
・MySQL
mysql -u root -p
mysql> grant all privileges on oozie.* to 'oozie'@'localhost' identified by 'oozie';
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
・Oozie Server起動
sudo -u oozie /usr/lib/oozie/bin/oozie-start.sh
1-3. 動作確認
コマンドラインから動作確認
OOZIE_URL=http://localhost:11000/oozie oozie admin -version
Oozie server build version: 2.2.1-78
ブラウザから動作確認
http://ホスト名:11000/oozie
画面例
2. exampleを動かしてみる
exampleのファイルを展開します。
mkdir /tmp/oozie-example
cd /tmp/oozie-example/
tar xzf /usr/lib/oozie/oozie-examples.tar.gz
cd examples/
examples/apps/以下のそれぞれのフォルダ内のjob.propertiesの変更が必要な場合があります。
hdfsやmapreduceのポートが9000と9001で決め打ちしてあるので、
CDHのデフォルトの人は、それぞれ9000 → 8020, 9001 → 8021の変更が必要です。
ここでは、map-reduceを試してみます。
examples/apps/map-reduce/job.propertiesを変更します。
example用の設定やテストファイルを作成
sudo -u oozie hadoop-0.20 fs -mkdir /user/oozie/examples/apps
sudo -u oozie hadoop-0.20 fs -copyFromLocal input-data hdfs://localhost:8020/user/oozie/examples/
cd apps
sudo -u oozie hadoop-0.20 fs -copyFromLocal map-reduce hdfs://localhost:8020/user/oozie/examples/apps/
2-2. exampleを実行してみる
・実行(examples/appsにて)
sudo -u oozie oozie job -oozie http://localhost:11000/oozie -config map-reduce/job.properties -run
job: 0000002-101014103613635-oozie-oozi-W
・ジョブの様子を確認(実行時に表示されるJob Idを引数に)
sudo -u oozie oozie job -oozie http://localhost:11000/oozie -info 0000002-101014103613635-oozie-oozi-W
Job ID : 0000002-101014103613635-oozie-oozi-W
------------------------------------------------------------------------------------------------------------------------------------
Workflow Name : map-reduce-wf
App Path : hdfs://localhost:8020/user/oozie/examples/apps/map-reduce
Status : SUCCEEDED
Run : 0
User : oozie
Group : users
Created : 2010-10-14 03:03
Started : 2010-10-14 03:03
Last Modified : 2010-10-14 03:04
Ended : 2010-10-14 03:04
Actions
------------------------------------------------------------------------------------------------------------------------------------
ID Status Ext ID Ext Status Err Code
------------------------------------------------------------------------------------------------------------------------------------
0000002-101014103613635-oozie-oozi-W@mr-node OK job_201010131711_0006 SUCCEEDED -
------------------------------------------------------------------------------------------------------------------------------------
0 件のコメント:
コメントを投稿