Settu upp og stilltu Apache Oozie Workflow Scheduler fyrir CDH 4.X á RHEL/CentOS 6/5


Oozie er opinn tímaáætlun fyrir Hadoop, það einfaldar vinnuflæði og samhæfingu milli starfa. Við getum skilgreint ósjálfstæði milli starfa fyrir inntaksgögn og getum þess vegna gert ósjálfstæði starfsins sjálfvirkt með því að nota ooze tímaáætlun.

Í þessari kennslu hef ég sett upp Oozie á aðalhnútnum mínum (þ.e. master sem hýsingarheiti og þar sem namenode/JT er uppsett) en í framleiðslukerfinu ætti oozie að vera sett upp á aðskildum Hadoop hnút.

Uppsetningarleiðbeiningunum er skipt í tvo hluta, við köllum það A og B.

  1. A. Oozie uppsetning.
  2. B. Oozie stillingar.

Við skulum fyrst staðfesta hýsingarheiti kerfisins með því að nota eftirfarandi „hostname“ skipun.

 hostname

master

Aðferð A: Oozie uppsetning á RHEL/CentOS 6/5

Við notum opinbera CDH geymslu frá vefsíðu cloudera til að setja upp CDH4. Farðu í opinbera CDH niðurhalshlutann og halaðu niður CDH4 (þ.e. 4.6) útgáfu eða þú getur líka notað eftirfarandi wget skipun til að hlaða niður geymslunni og setja hana upp.

# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/i386/cloudera-cdh-4-0.i386.rpm
# yum --nogpgcheck localinstall cloudera-cdh-4-0.i386.rpm

# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/x86_64/cloudera-cdh-4-0.x86_64.rpm
# yum --nogpgcheck localinstall cloudera-cdh-4-0.x86_64.rpm
# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/5/i386/cloudera-cdh-4-0.i386.rpm
# yum --nogpgcheck localinstall cloudera-cdh-4-0.i386.rpm

# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/5/x86_64/cloudera-cdh-4-0.x86_64.rpm
# yum --nogpgcheck localinstall cloudera-cdh-4-0.x86_64.rpm

Þegar þú hefur bætt CDH geymslu undir kerfið þitt geturðu notað eftirfarandi skipun til að setja upp Oozie á kerfinu.

 yum install oozie

Nú skaltu setja upp oozie viðskiptavin (fyrir ofan skipun ætti að ná yfir uppsetningarhluta viðskiptavinar, en ef ekki þá reyndu fyrir neðan skipunina).

 yum install oozie-client

Athugið: Ofangreind uppsetning stillir einnig oozie þjónustu til að keyra við ræsingu kerfisins. Gott starf! Við erum búin með fyrri hluta uppsetningar, nú skulum við fara í seinni hlutann til að stilla oozie.

Aðferð B: Oozie stillingar á RHEL/CentOS 6/5

Þar sem oozie hefur ekki bein samskipti við Hadoop, þurfum við enga kortlagða uppsetningu hér.

Varúð: Vinsamlegast stilltu allar stillingar á meðan oozie er ekki í gangi, það þýðir að þú verður að fylgja skrefunum hér að neðan á meðan oozie þjónusta er ekki í gangi.

Oozie er með 'Derby' sem sjálfgefið innbyggt í DB en ég myndi mæla með því að þú notir Mysql DB. Svo, við skulum setja upp MySQL gagnagrunn með því að nota eftirfarandi grein.

  1. Settu upp MySQL gagnagrunn í RHEL/CentOS 6/5

Þegar þú ert búinn með uppsetningarhlutann skaltu fara lengra til að búa til oozie DB og veita forréttindi eins og sýnt er hér að neðan.

 mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.38 MySQL Community Server (GPL) by Remi

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database oozie;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on oozie.* to 'oozie'@'localhost' identified by 'oozie';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on oozie.* to 'oozie'@'%' identified by 'oozie';
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

Næst skaltu stilla Oozie eiginleika fyrir MySQL. Opnaðu ‘oozie-site.xml’ skrána og breyttu eftirfarandi eiginleikum eins og sýnt er.

 cd /etc/oozie/conf
 vi oozie-site.xml

Sláðu inn eftirfarandi eiginleika (bara skiptu húsbónda [hýsingarnafnið mitt] út fyrir gestgjafanafnið þitt).

<property>
        <name>oozie.service.JPAService.jdbc.driver</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.url</name>
        <value>jdbc:mysql://master:3306/oozie</value>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.username</name>
        <value>oozie</value>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.password</name>
        <value>oozie</value>
    </property>

Sæktu og bættu MySQL JDBC tengibílstjóranum JAR við Oozie lib skrána. Til að gera það skaltu keyra eftirfarandi alvarlega skipun á flugstöðinni.

 cd /tmp/
 wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.31.tar.gz
 tar -zxf mysql-connector-java-5.1.31.tar.gz	
 cd mysql-connector-java-5.1.31
 cp mysql-connector-java-5.1.31-bin.jar /var/lib/oozie/

Búðu til oozie gagnagrunnsskema með því að framkvæma fyrir neðan skipanir og vinsamlega athugaðu að þetta ætti að keyra sem oozie notandi.

 sudo -u oozie /usr/lib/oozie/bin/ooziedb.sh create -run
setting OOZIE_CONFIG=/etc/oozie/conf
setting OOZIE_DATA=/var/lib/oozie
setting OOZIE_LOG=/var/log/oozie
setting OOZIE_CATALINA_HOME=/usr/lib/bigtop-tomcat
setting CATALINA_TMPDIR=/var/lib/oozie
setting CATALINA_PID=/var/run/oozie/oozie.pid
setting CATALINA_BASE=/usr/lib/oozie/oozie-server-0.20
setting CATALINA_OPTS=-Xmx1024m
setting OOZIE_HTTPS_PORT=11443
...
DONE
Oozie DB has been created for Oozie version '3.3.2-cdh4.7.0'
The SQL commands have been written to: /tmp/ooziedb-8250405588513665350.sql

Þú þarft að hlaða niður ExtJS lib af internetinu til að virkja oozie vefborð. Farðu á opinbera CDH ExtJS síðu og halaðu niður ExtJS útgáfu 2.2 bókasöfnum eða þú getur halað niður pakkanum með eftirfarandi skipun.

 cd /tmp/
 wget http://archive.cloudera.com/gplextras/misc/ext-2.2.zip
 unzip ext-2.2.zip
 mv ext-2.2 /var/lib/oozie/

Að lokum skaltu byrja á oozie þjóninum með því að keyra eftirfarandi skipanir.

 service oozie status
not running.

 service oozie start

 service oozie status
running

 oozie admin -oozie http://localhost:11000/oozie -status
System mode: NORMAL

Opnaðu oozie UI með uppáhalds vafranum þínum og bentu á IP tölu þína. Í þessu tilfelli er IP-talan mín 192.168.1.129.

http://192.168.1.129:11000

Nú ef þú sérð þetta HÍ. Til hamingju!! Þú hefur stillt oozie.

Þessi aðferð hefur verið prófuð með góðum árangri á RHEL/CentOS 6/5. Í næstu greinum mínum ætla ég að deila því hvernig á að stilla og skipuleggja hadoop störf í gegnum oozie. Vertu í sambandi til að fá meira og ekki gleyma að skrifa athugasemdir þínar.