Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mithilfe der Apache Oozie-Benutzeroberfläche können Sie die Oozie-Protokolle anzeigen. Die Oozie-Benutzeroberfläche enthält darüber hinaus Links zu den JobTracker-Protokollen für die MapReduce-Aufgaben, die vom Workflow gestartet werden. Im Allgemeinen sollten Sie zur Problembehandlung wie folgt vorgehen:
Zeigen Sie den Auftrag auf der Oozie-Webbenutzeroberfläche an.
Wenn eine bestimmte Aktion nicht erfolgreich war, wählen Sie die Aktion aus, um festzustellen, ob das Feld Fehlermeldung weitere Informationen zum Fehler enthält.
Falls verfügbar, verwenden Sie die URL der Aktion, um weitere Details (z.B. JobTracker-Protokolle) für die Aktion anzuzeigen.
Im Folgenden sehen Sie Fehlermeldungen, die auftreten können, und Möglichkeiten zur Behebung.
JA009: Cluster kann nicht initialisiert werden
Problem
Der Auftragsstatus ändert sich in SUSPENDED. In den Auftragsdetails wird der Status von RunHiveScript als START_MANUAL angezeigt. Bei Auswahl der Aktion wird die folgende Fehlermeldung angezeigt:
JA009: Cannot initialize Cluster. Please check your configuration for map
Ursache
Die in der Datei job.xml verwendeten Azure-Blobspeicheradressen enthalten nicht den Namen des Speichercontainers oder des Speicherkontos. Das Format der Blob-Speicheradresse muss wasbs://containername@storageaccountname.blob.core.windows.net sein.
Lösung
Ändern Sie die Blobspeicheradressen für den Auftrag.
JA002: Oozie darf die Identität von <USER> nicht annehmen
Problem
Der Auftragsstatus ändert sich in SUSPENDED. In den Auftragsdetails wird der Status von RunHiveScript als START_MANUAL angezeigt. Wenn Sie die Aktion auswählen, wird die folgende Fehlermeldung angezeigt:
JA002: User: oozie is not allowed to impersonate <USER>
Ursache
Die aktuellen Berechtigungseinstellungen lassen nicht zu, dass Oozie die Identität des angegebenen Benutzerkontos annimmt.
Lösung
Oozie kann die Identität von Benutzenden in der Gruppe users imitieren. Verwenden Sie groups USERNAME , um die Gruppen anzuzeigen, denen das Benutzerkonto als Mitglied angehört. Wenn Benutzende keine Mitglieder der Gruppe users sind, verwenden Sie den folgenden Befehl, um die der Gruppe hinzuzufügen:
sudo adduser USERNAME users
Hinweis
Es kann einige Minuten dauern, bis HDInsight erkennt, dass der Benutzer der Gruppe hinzugefügt wurde.
Launcher-Fehler (Sqoop)
Problem
Der Auftragsstatus ändert sich in KILLED. In den Auftragsdetails wird der Status von RunSqoopExport als ERROR (Fehler) angezeigt. Wenn Sie die Aktion auswählen, wird die folgende Fehlermeldung angezeigt:
Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.SqoopMain], exit code [1]
Ursache
Sqoop kann den Datenbanktreiber nicht laden, der für den Zugriff auf die Datenbank erforderlich ist.
Lösung
Bei Verwendung von Sqoop in einem Oozie-Auftrag müssen Sie den Datenbanktreiber zusammen mit den anderen vom Auftrag verwendeten Ressourcen (beispielsweise die Datei „workflow.xml“) angeben. Verweisen Sie im Abschnitt <sqoop>...</sqoop> von „workflow.xml“ auf das Archiv mit dem Datenbanktreiber.
Für das Auftragsbeispiel aus Verwenden von Hadoop Oozie-Workflows würden Sie z. B. die folgenden Schritte verwenden:
Kopieren Sie die Datei
mssql-jdbc-7.0.0.jre8.jarin das Verzeichnis /tutorials/useoozie:hdfs dfs -put /usr/share/java/sqljdbc_7.0/enu/mssql-jdbc-7.0.0.jre8.jar /tutorials/useoozie/mssql-jdbc-7.0.0.jre8.jarÄndern Sie die Datei
workflow.xml, indem Sie den folgenden XML-Code einer neuen Zeile oberhalb von</sqoop>hinzufügen:<archive>mssql-jdbc-7.0.0.jre8.jar</archive>
Oozie UI – Standardzugriffsrechte für Benutzer
Problem
Für die erstellten HDInsight Oozie-Cluster hätten Benutzer standardmäßig Lesezugriff auf alle Aufträge, Schreibzugriff auf ihre eigenen Aufträge und können Aufträge auf Basis von ACLs bearbeiten. Administratorbenutzer verfügen über umfassendere Berechtigungen, einschließlich Schreibzugriff auf alle Aufträge und Vorgänge. Wenn die Sicherheitskonfiguration in Oozie-Clustern deaktiviert ist, werden alle Benutzer als Administratoren behandelt, und HDInsight Oozie-Cluster haben standardmäßig die Sicherheitskonfiguration deaktiviert.
Ursache
Wenn die Sicherheit deaktiviert ist, werden alle Benutzer als Administratorbenutzer behandelt, die ein Standardverhalten in Oozie und nicht spezifisch für die HDInsight-Plattform sind. Verweis auf dasselbe auf der folgenden Oozie-Seite - Oozie - User Authentication Public Doc
Lösung
Administratorbenutzer können über eine bestimmte Eigenschaft definiert werden. ACLs werden während der Auftragsübermittlung festgelegt und können sowohl Benutzernamen als auch Gruppen enthalten. Das System überprüft, ob der Benutzer zu den erforderlichen Gruppen gehört, um Aktionen auszuführen.
Legen Sie diese Eigenschaft in Ambari auf oozie.service.AuthorizationService.security.enabled=true fest.
Ambari-Benutzeroberfläche -> Dienste -> Oozie -> Konfigurationen -> Erweitert -> Suchen und auf TRUE festlegen -> Alle betroffenen neu starten
Administratorbenutzer werden aus der Liste der Administratorgruppen bestimmt, die in der Eigenschaft "oozie.service.AuthorizationService.admin.groups" angegeben sind. Verwenden Sie Kommas, um mehrere Gruppen zu trennen, Leerzeichen-, Tab- und Eingabetasten-Zeichen werden entfernt.
Nächste Schritte
Wenn Ihr Problem nicht aufgeführt ist oder Sie es nicht lösen können, besuchen Sie einen der folgenden Kanäle, um weitere Unterstützung zu erhalten:
Nutzen Sie den Azure-Communitysupport, um Antworten von Azure-Experten zu erhalten.
Stellen Sie eine Verbindung mit @AzureSupport her, dem offiziellen Microsoft Azure-Konto zum Verbessern der Kundenfreundlichkeit. Verbinden der Azure-Community mit den richtigen Ressourcen: Antworten, Support und Experten.
Sollten Sie weitere Unterstützung benötigen, senden Sie eine Supportanfrage über das Azure-Portal. Wählen Sie dazu auf der Menüleiste die Option Support aus, oder öffnen Sie den Hub Hilfe und Support. Ausführlichere Informationen hierzu finden Sie unter Erstellen einer Azure-Supportanfrage. Zugang zu Abonnementverwaltung und Abrechnungssupport ist in Ihrem Microsoft Azure-Abonnement enthalten. Technischer Support wird über einen Azure-Supportplan bereitgestellt.
Oozie WebUI-Deaktivierung und Befehlszeilenoptionen als Alternative
Problem
Apache Oozie ist seit Februar 2025 eingestellt, siehe Link. Es gibt bekannte Sicherheitsrisiken im Zusammenhang mit Oozie WebUI.
Ursache
Führen Sie die folgenden Schritte aus, um die Oozie WebUI zu deaktivieren:
Stoppen Sie die Oozie-Dienste im Ambari-Portal.
Bearbeiten Sie /var/lib/ambari-server/resources/stacks/HDInsight/<version>/services/OOZIE/quicklinks/quicklinks.json und entfernen Sie den Wert für
<url>parameter und ersetzen Sie durch "".
Before:
"name": "default",
"description": "default quick links configuration",
"configuration": {
"links": [
.....
"url":"%@://%@:%@/oozie?user.name=%@",
.....
Danach:
"name": "default",
"description": "default quick links configuration",
"configuration": {
"links": [
.....
"url":"",
.....
- Starten Sie die Ambari-Dienste neu
sudo ambari-services restart
- Dienste von Oozie aus Ambari starten
Problemumgehung
Verwenden Sie Oozie-Befehlszeilenoptionen, verweisen Sie auf den Link.