Inhaltsverzeichnis
目录
1. Shell Action
2. Shell Action 日志
3. Shell Action 限制
Heim Datenbank MySQL-Tutorial Oozie Shell Action 配置

Oozie Shell Action 配置

Jun 07, 2016 pm 04:30 PM
action shell 目录 配置

目录 1. Shell Action 2. Shell Action 日志 3. Shell Action 限制 1. Shell Action Shell action运行一个shell命令,需要配置的有job-tracker,name-node和一些必要的参数。 经过配置,在启动Shell Action之前可以创建或删除HDFS文件夹。 可以通过配置文件

目录

1. Shell Action

2. Shell Action 日志

3. Shell Action 限制

1. Shell Action

Shell action运行一个shell命令,需要配置的有job-tracker,name-node和一些必要的参数。

经过配置,在启动Shell Action之前可以创建或删除HDFS文件夹。

可以通过配置文件(通过job-xml元素)给定配置信息,或者是用内嵌的configuration元素进行配置。

可以在内嵌的configuration里面使用EL表达式,在configuration里面配置的信息会覆盖job-xml里面相同的值。

需要注意的是,Hadoop的mapred.job.tracker和fs.default.name属性不可以在内嵌的configuration里面配置。

跟hadoop的map-reduce jobs一样,可以添加附件到sqoop job里面。具体参见【http://archive.cloudera.com/cdh/3/oozie/WorkflowFunctionalSpec.html#a3.2.2.1_Adding_Files_and_Archives_for_the_Job】

shell任务的标准输出(STDOUT)在shell运行结束之后是可用的。这些信息可以被决策结点使用。如果shell job的输出被配置成可用的,那shell命令必须包含以下两个参数:

  • 输出的格式必须是合法的java属性文件。
  • 输出的大小不能超过2KB。

语法:

    ...
            [JOB-TRACKER]
            [NAME-NODE]
               ...
               ...
            [SHELL SETTINGS FILE]
                    [PROPERTY-NAME]
                    [PROPERTY-VALUE]
                ...
            [SHELL-COMMAND]
            [ARG-VALUE]
                ...
            [ARG-VALUE]
            [VAR1=VALUE1]
               ...
            [VARN=VALUEN]
            [FILE-PATH]
            ...
            [FILE-PATH]
            ...
    ...
Nach dem Login kopieren

prepare元素里面配置启动job前要删除或者创建的文件夹,文件夹路径必须是以hdfs://HOST:PORT开头。

job-xml指定一个存在的配置文件。

configuration里面配置传递给sqoop job的参数。

exec元素包含要执行的shell命令的路径。可以给shell命令添加参数。

argument元素指定要传递给shell脚本的参数。

env-var包含传递给shell命令的环境变量。env-var只能包含一个环境变量和值。如果这个环境变量包含像$PATH一样的,那它必须写成PATH=$PATH:mypath。不能用${PATH},因为它将会被EL解析。

capture-output元素指定用来捕获shell脚本的标准输出。可以通过String action:output(String node, String key)函数【EL函数】来获得输出。

例子:

            ${jobTracker}
            ${nameNode}
                  mapred.job.queue.name
                  ${queueName}
            ${EXEC}
            A
            B
            ${EXEC}#${EXEC} <!--Copy the executable to compute node's current working directory -->
        Script failed, error message[${wf:errorMessage(wf:lastErrorNode())}]
Nach dem Login kopieren

其中,job属性文件如下:

oozie.wf.application.path=hdfs://localhost:8020/user/kamrul/workflows/script#Execute is expected to be in the Workflow directory.
#Shell Script to run
EXEC=script.sh
#CPP executable. Executable should be binary compatible to the compute node OS.
#EXEC=hello
#Perl script
#EXEC=script.pl
jobTracker=localhost:8021
nameNode=hdfs://localhost:8020
queueName=default
Nach dem Login kopieren

运行jar里面的java程序:

            ${jobTracker}
            ${nameNode}
                  mapred.job.queue.name
                  ${queueName}
            java
            -classpath
            ./${EXEC}:$CLASSPATH
            Hello
            ${EXEC}#${EXEC} <!--Copy the jar to compute node current working directory -->
        Script failed, error message[${wf:errorMessage(wf:lastErrorNode())}]
Nach dem Login kopieren

属性会复制指定的文件到运行该脚本的机器上。当提示找不到文件的时候,试试file

对应的属性文件是:

oozie.wf.application.path=hdfs://localhost:8020/user/kamrul/workflows/script#Hello.jar file is expected to be in the Workflow directory.
EXEC=Hello.jar
jobTracker=localhost:8021
nameNode=hdfs://localhost:8020
queueName=default
Nach dem Login kopieren

2. Shell Action 日志

shell action的stdout和stderr输出被重定向到运行该脚本的oozie执行器上的map-reduce任务的stdout。

除了在Oozie的web网页上可以看到少部分日志,还可以在hadoop的job-tracker的网页上看到详细的日志信息。

3. Shell Action 限制

虽然Shell Action可以执行任意的shell命令,但是有以下几个限制:

不支持交互命令。

不能通过sudo来让不同用户执行命令。

用户必须明确的上传所需要的第三方库。Oozie通过Hadoop的分布式缓冲来上传、打标签、使用。

Shell命令会在任意一个hadoop 计算节点上运行,但是计算节点上默认安装的工具集可能会不一样。不过在所有的计算节点上,通常都装有大部分普通的unix工具。因此需要明确的很重要的一点是:Oozie只支持有被安装到计算节点上的命令或者通过分布式缓存上传的命令。也就是说,我们必须通过file上传我们要用到的文件。

http://archive.cloudera.com/cdh/3/oozie/DG_ShellActionExtension.html

转载请注明: 转载自http://jyd.me/

本文链接地址: Oozie Shell Action 配置

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Das Funktionsprinzip und die Konfigurationsmethode von GDM im Linux-System Das Funktionsprinzip und die Konfigurationsmethode von GDM im Linux-System Mar 01, 2024 pm 06:36 PM

Titel: Das Funktionsprinzip und die Konfigurationsmethode von GDM in Linux-Systemen. In Linux-Betriebssystemen ist GDM (GNOMEDisplayManager) ein gängiger Anzeigemanager, der zur Steuerung der grafischen Benutzeroberfläche (GUI)-Anmeldung und Benutzersitzungsverwaltung verwendet wird. In diesem Artikel werden das Funktionsprinzip und die Konfigurationsmethode von GDM vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Funktionsprinzip von GDM GDM ist der Display-Manager in der GNOME-Desktop-Umgebung. Er ist für den Start des X-Servers und die Bereitstellung der Anmeldeschnittstelle verantwortlich

So löschen Sie schnell die Zeile am Ende einer Datei unter Linux So löschen Sie schnell die Zeile am Ende einer Datei unter Linux Mar 01, 2024 pm 09:36 PM

Bei der Verarbeitung von Dateien unter Linux-Systemen ist es manchmal erforderlich, Zeilen am Ende der Datei zu löschen. Dieser Vorgang kommt in praktischen Anwendungen sehr häufig vor und kann durch einige einfache Befehle erreicht werden. In diesem Artikel werden die Schritte zum schnellen Löschen der Zeile am Ende der Datei im Linux-System vorgestellt und spezifische Codebeispiele bereitgestellt. Schritt 1: Überprüfen Sie die letzte Zeile der Datei. Bevor Sie den Löschvorgang durchführen, müssen Sie zunächst bestätigen, welche Zeile die letzte Zeile der Datei ist. Sie können den Befehl tail verwenden, um die letzte Zeile der Datei anzuzeigen. Der spezifische Befehl lautet wie folgt: tail-n1filena

Verstehen Sie Linux Bashrc: Funktionen, Konfiguration und Verwendung Verstehen Sie Linux Bashrc: Funktionen, Konfiguration und Verwendung Mar 20, 2024 pm 03:30 PM

Grundlegendes zu Linux Bashrc: Funktion, Konfiguration und Verwendung In Linux-Systemen ist Bashrc (BourneAgainShellruncommands) eine sehr wichtige Konfigurationsdatei, die verschiedene Befehle und Einstellungen enthält, die beim Systemstart automatisch ausgeführt werden. Die Bashrc-Datei befindet sich normalerweise im Home-Verzeichnis des Benutzers und ist eine versteckte Datei. Ihre Funktion besteht darin, die Bashshell-Umgebung für den Benutzer anzupassen. 1. Bashrc-Funktionseinstellungsumgebung

DJI Osmo Action 5 Pro: Veröffentlichungsdatum diskutiert, da Einzelhändler Einführungspreise bekannt gibt, die unter denen der GoPro Hero 13 Black liegen könnten DJI Osmo Action 5 Pro: Veröffentlichungsdatum diskutiert, da Einzelhändler Einführungspreise bekannt gibt, die unter denen der GoPro Hero 13 Black liegen könnten Sep 04, 2024 am 06:51 AM

DJI hat noch keine Pläne zur Einführung einer neuen Action-Kamera bestätigt. Stattdessen scheint es, dass GoPro in diesem Jahr seinem Rivalen einen Schritt voraus sein wird, nachdem angekündigt wurde, dass es am 4. September zwei neue Action-Kameras vorstellen wird. Zum Vergleich: Diese werden voraussichtlich a

So konfigurieren und installieren Sie FTPS im Linux-System So konfigurieren und installieren Sie FTPS im Linux-System Mar 20, 2024 pm 02:03 PM

Titel: So konfigurieren und installieren Sie FTPS im Linux-System. Im Linux-System ist FTPS ein sicheres Dateiübertragungsprotokoll. Im Vergleich zu FTP verschlüsselt FTPS die übertragenen Daten über das TLS/SSL-Protokoll, was die Datensicherheit verbessert Übertragung. In diesem Artikel stellen wir die Konfiguration und Installation von FTPS in einem Linux-System vor und stellen spezifische Codebeispiele bereit. Schritt 1: vsftpd installieren Öffnen Sie das Terminal und geben Sie den folgenden Befehl ein, um vsftpd zu installieren: sudo

Wo kann ich die Konfiguration meines Win11-Computers überprüfen? So finden Sie die Konfigurationsinformationen eines Win11-Computers Wo kann ich die Konfiguration meines Win11-Computers überprüfen? So finden Sie die Konfigurationsinformationen eines Win11-Computers Mar 06, 2024 am 10:10 AM

Wenn wir das Win11-System verwenden, müssen wir manchmal die Konfiguration unseres Computers überprüfen, aber viele Benutzer fragen auch, wo sie die Konfiguration des Win11-Computers überprüfen können. Tatsächlich ist die Methode sehr einfach. Benutzer können die Systeminformationen direkt unter Einstellungen öffnen und dann die Computerkonfigurationsinformationen anzeigen. Lassen Sie diese Website den Benutzern sorgfältig vorstellen, wie sie Informationen zur Win11-Computerkonfiguration finden. So finden Sie Informationen zur Win11-Computerkonfiguration. Methode 1: 1. Klicken Sie auf Start und öffnen Sie Computereinstellungen. 3. Auf dieser Seite können Sie Informationen zur Computerkonfiguration anzeigen. 2. Geben Sie im Eingabeaufforderungsfenster systeminfo ein und drücken Sie die Eingabetaste, um die Computerkonfiguration anzuzeigen.

So lesen Sie den Katalog beim Lesen auf WeChat. So zeigen Sie den Katalog an So lesen Sie den Katalog beim Lesen auf WeChat. So zeigen Sie den Katalog an Mar 30, 2024 pm 05:56 PM

Die mobile Version der WeChat-Lese-App ist eine sehr gute Lesesoftware. Sie können sie jederzeit und überall mit nur einem Klick lesen und online lesen Sortieren Sie Ihre Bücher ordentlich und genießen Sie eine angenehme und entspannte Leseatmosphäre. Wechseln Sie den Lesemodus verschiedener Szenarien, aktualisieren Sie jeden Tag kontinuierlich die neuesten Buchkapitel, unterstützen Sie die Online-Anmeldung von mehreren Geräten und laden Sie sie stapelweise in das Bücherregal herunter. Sie können es mit oder ohne Internet lesen, sodass jeder mehr Wissen daraus entdecken kann Jetzt erläutert der Herausgeber online die Methode zum Anzeigen des Katalogs für WeChat-Lesepartner. 1. Öffnen Sie das Buch, dessen Katalog Sie ansehen möchten, und klicken Sie in die Mitte des Buchs. 2. Klicken Sie auf das Symbol mit den drei Linien in der unteren linken Ecke. 3. Sehen Sie sich im Popup-Fenster den Buchkatalog an

Anleitung zum Einrichten eines lokalen Maven-Repositorys, um die Projekterstellung zu beschleunigen Anleitung zum Einrichten eines lokalen Maven-Repositorys, um die Projekterstellung zu beschleunigen Feb 24, 2024 pm 02:12 PM

Bringen Sie Ihnen Schritt für Schritt bei, wie Sie das lokale Maven-Lager konfigurieren: Verbessern Sie die Geschwindigkeit der Projekterstellung. Maven ist ein leistungsstarkes Projektmanagement-Tool, das in der Java-Entwicklung häufig verwendet wird. Es kann uns helfen, Projektabhängigkeiten zu verwalten, Projekte zu erstellen, Projekte zu veröffentlichen usw. Während des eigentlichen Entwicklungsprozesses stoßen wir jedoch manchmal auf das Problem einer langsamen Projektkonstruktionsgeschwindigkeit. Eine Lösung besteht darin, ein lokales Repository zu konfigurieren, um die Geschwindigkeit der Projekterstellung zu verbessern. In diesem Artikel erfahren Sie Schritt für Schritt, wie Sie das lokale Maven-Lager konfigurieren, um die Konstruktion Ihres Projekts effizienter zu gestalten. Warum müssen Sie ein lokales Lager konfigurieren?

See all articles