oozie-3.3.2版本安裝

 oozie是一個開源的比較牛叉的工作流調度工具,尤其是在管理hadoop工作流程方面,類似於java的quartz。記得,我去年剛用hadoop的時候,把所有的工作流程都組織在shell中,雖然寫起來比較方便,但是不便於維護及管理,oozie的強大之處就在於他強大的工作流程管理方面,他提供了一個web管理工具,你可以非常直觀的通過一個網頁來管理和監視你的工作流程的配置、組織關係及運行情況。我在去年寫過一篇關於oozie安裝的一篇文章,當時介紹的oozie的版本是2.3.2,hadoop版本是0.20.2。現在由於業務原因升級了版本,畢竟之前的版本太老了,好多新版的hadoop工具都無法兼容,比如pig 0.12和hive 0.13版本。雖然,升級後的還是hadoop 1系列,但現在可以使用比較新的hadoop工具了。(ps:如hadoop由0.20.2升級到了1.2.1,pig由0.8升級到0.12,hive由0.7升級到0.13,sqoop由1.3.0升級到了1.4.4)。好了,廢話不說了,開始安裝吧!

一、在安裝oozie-3.3.2時,請確保你已經安裝瞭如下工具:

     (1).jdk(1.6版本及以上)、

     (2.)mysql數據庫(可選,如果不用指定數據庫默認使用oozie自帶的derby數據庫。當然其他的數據庫也可以,比如  postgresql)、

     (3).maven(3.2版本及以上)、

     (4). tomcat(可選,如不安裝默認使用oozie自帶的tomcat)、

     (5).ext-2.2.zip(ExtJS是一種功能強大的ajax框架,具體介紹可以參考:http://blog.csdn.net/zhu_xun/article/details/18448061

二、安裝

1.下載oozie

可以使用wget工具下載:wget http://archive.apache.org/dist/oozie/3.3.2/oozie-3.3.2.tar.gz

ps:該文件就1M,下載很快的。

2.解壓

 tar -zxvf oozie-3.3.2.tar.gz

3.用maven編譯該工程生成目標安裝包:

執行bin/mkdistro.sh -DskipTests
 ps:要加上-DskipTests跳過測試,否則會build failed

這個過程或許會很漫長,用過maven的朋友都有這個體會,在該過程中,需要不斷地從網絡下載大量的相關文件(jar),這個倒不要緊,也就一兩百兆,關鍵是在我國從老外的maven服務器下載東西是異常的慢啊。你可以吃個飯或打打遊戲,也許過3個小時就好了,也許。。。。

PS:最好晚上執行這個過程,如果你還是嫌時間太長,你可以從網上下載人家編譯好的安裝包(由於csdn上次文件大小限制,本人無法上傳,請諒解)。

如果過程順利的話,會在distro目錄下生成一個oozie-3.3.2-distro.tar.gz文件,這個文件及時我們最終需要的安裝包。

PS:你可以把之前的文件都刪掉了,有了oozie-3.3.2-distro.tar.gz就夠了。

4.解壓oozie-3.3.2-distro.tar.gz文件:

5.配置OOZIE_HOME環境變量

6.下載ExtJS並將該文件放在OOZIE_HOME/下:

cd  $OOZIE_HOME;wget http://extjs.com/deploy/ext-2.2.zip

7.在OOZIE_HOME目錄下建立libext目錄並將hadoop相關的jar庫文件拷貝到libext下面,我使用的是Hadoop 1.2.1版本:

mkdir libext; 

cp $HADOOP_HOME/hadoop-*.jar libext/; 

cp $HADOOP_HOME/lib/*.jar ./libext/

8.生成war包:

bin/oozie-setup.sh -extjs ext-2.2.zip

執行成功後就會在$OOZIE_HOME/oozie-server/webapps目錄下生成oozie.war文件。

9.修改conf/oozie-site.xml配置文件:

<name>oozie.service.JPAService.create.db.schema</name>
<value>true</value>
將默認的false改爲true。

10.如果不想使用oozie自帶的derby數據庫,而是使用自己指定的數據庫,可以繼續修改配置文件onf/oozie-site.xml,進行如下修改:

    <property>
        <name>oozie.service.JPAService.jdbc.driver</name>
        <value>com.mysql.jdbc.Driver</value>
        <description>
            JDBC driver class.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.url</name>
        <value>jdbc:mysql://localhost:3306/oozie</value>
        <description>
            JDBC URL.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.username</name>
        <value>shirdrn</value>
        <description>
            DB user name.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.password</name>
        <value>0o21e</value>
        <description>
            DB user password.
        </description>
    </property> 
11.如果沒有安裝tomcat,oozie默認使用自帶的tomcat

12.修改hadoop配置文件,整合oozie和hadoop:

<!-- 因使用oozie,故添加如下配置-->
   <property>
     <name>hadoop.proxyuser.zhu.hosts</name> <!-- zhu表示運行oozie的用戶-->
     <value>localhost</value>
   </property>
   <property>
     <name>hadoop.proxyuser.zhu.groups</name>
     <value>zhu</value> <!-- zhu表示zhu用戶所在的組(呵呵,組合用戶都是zhu)-->
  </property>


13.啓動oozie:

oozied.sh start或者oozie-start.sh





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章