Fehlerbehebung beim Erstellen der Umgebung

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Diese Seite enthält Informationen zur Fehlerbehebung bei Problemen, die beim Erstellen von Cloud Composer-Umgebungen auftreten können.

Informationen zur Fehlerbehebung im Zusammenhang mit dem Aktualisieren und Upgraden von Umgebungen finden Sie unter Fehlerbehebung bei Umgebungsupdates und -upgrades.

Wenn Cloud Composer-Umgebungen erstellt werden, treten die meisten Probleme aus den folgenden Gründen auf:

  • Probleme mit Dienstkontoberechtigungen.

  • Falsche Firewall-, DNS- oder Routinginformationen.

  • Netzwerkbezogene Probleme. Beispiel: Ungültige VPC-Konfiguration, IP-Adresskonflikte oder zu enge Netzwerk-IP-Bereiche.

  • Kontingentbezogene Probleme.

  • Inkompatible Organisationsrichtlinien.

Unzureichende Berechtigungen zum Erstellen einer Umgebung

Wenn Cloud Composer keine Umgebung erstellen kann, da Ihr Konto unzureichende Berechtigungen hat, werden die folgenden Fehlermeldungen ausgegeben:

ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: The caller
does not have permission

oder

ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: User not
authorized to act as service account <service-account-name>.
The user must be granted iam.serviceAccounts.actAs permission, included in
Owner, Editor, Service Account User role. See https://cloud.google.com/iam/docs
/understanding-service-accounts for additional details.

Lösung: Weisen Sie Ihrem Konto und dem Dienstkonto Ihrer Umgebung Rollen zu, wie unter Zugriffssteuerung beschrieben.

  • Prüfen Sie in Cloud Composer 2, ob dem Dienstkonto Cloud Composer-Dienst-Agent (service-PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com) die Rolle Dienst-Agent-Erweiterung für die Cloud Composer v2 API zugewiesen ist.

  • Achten Sie darauf, dass dem Google APIs Service Agent (PROJECT_NUMBER@cloudservices.gserviceaccount.com) die Rolle Bearbeiter zugewiesen ist.

  • Folgen Sie in der Konfiguration der freigegebene VPC der Anleitung zum Konfigurieren der freigegebenen VPC.

Das Dienstkonto der Umgebung hat nicht die erforderlichen Berechtigungen

Beim Erstellen einer Cloud Composer-Umgebung geben Sie ein Dienstkonto an, das die Knoten des GKE-Cluster der Umgebung ausführt. Wenn dieses Dienstkonto nicht genügend Berechtigungen für den angeforderten Vorgang hat, gibt Cloud Composer den folgenden Fehler aus:

Errors in: [Web server]; Error messages:
  Creation of airflow web server version failed. This may be an intermittent
  issue of the App Engine service. You may retry the operation later.
{"ResourceType":"appengine.v1.version","ResourceErrorCode":"504","ResourceError
Message":"Your deployment has failed to become healthy in the allotted time
and therefore was rolled back. If you believe this was an error, try adjusting
the 'app_start_timeout_sec' setting in the 'readiness_check' section."}

Lösung: Weisen Sie Ihrem Konto und dem Dienstkonto Ihrer Umgebung Rollen zu, wie unter Zugriffssteuerung beschrieben.

Warnungen zu fehlenden IAM-Rollen in Dienstkonten

Wenn das Erstellen einer Umgebung fehlschlägt, generiert Cloud Composer nach einem Fehler die folgende Warnmeldung: The issue may be caused by missing IAM roles in the following Service Accounts ....

Diese Warnmeldung weist auf mögliche Ursachen für den Fehler hin. Cloud Composer prüft die erforderlichen Rollen für die Dienstkonten in Ihrem Projekt. Wenn diese Rollen nicht vorhanden sind, wird diese Warnmeldung generiert.

Lösung: Prüfen Sie, ob die in der Warnmeldung erwähnten Dienstkonten die erforderlichen Rollen haben. Weitere Informationen zu Rollen und Berechtigungen in Cloud Composer finden Sie unter Zugriffssteuerung.

In einigen Fällen können Sie diese Warnung ignorieren. Cloud Composer prüft keine einzelnen Berechtigungen, die Rollen zugewiesen sind. Wenn Sie beispielsweise benutzerdefinierte IAM-Rollen verwenden, kann es sein, dass das im Warnhinweis erwähnte Dienstkonto bereits alle erforderlichen Berechtigungen hat. In diesem Fall können Sie diese Warnung ignorieren.

Inkompatible Organisationsrichtlinien

Die folgenden Richtlinien müssen entsprechend konfiguriert werden, damit Cloud Composer-Umgebungen erfolgreich erstellt werden können.

Unternehmensrichtlinien Cloud Composer 3 Cloud Composer 2 Cloud Composer 1
compute.disableSerialPortLogging (Jeder Wert ist zulässig) Muss deaktiviert sein Für Versionen vor 1.13.0 deaktiviert. Andernfalls jeder beliebige Wert.
compute.requireOsLogin (Jeder Wert ist zulässig) (Jeder Wert ist zulässig) Muss deaktiviert sein
compute.vmCanIpForward (Jeder Wert ist zulässig) (Jeder Wert ist zulässig) Muss zugelassen werden (erforderlich für Cloud Composer-eigene GKE-Cluster), wenn der VPC-native Modus (unter Verwendung von Alias-IP-Adresse) nicht konfiguriert ist
compute.vmExternalIpAccess (Jeder Wert ist zulässig) Muss für öffentliche IP-Umgebungen zugelassen werden Muss für öffentliche IP-Umgebungen zugelassen werden
compute.restrictVpcPeering Kann durchgesetzt werden Kann nicht erzwungen werden Kann nicht erzwungen werden
compute.disablePrivateServiceConnectCreationForConsumers (Jeder Wert ist zulässig) SERVICE_PRODUCERS können für Umgebungen mit privater und öffentlicher IP nicht deaktiviert werden. Vorhandene Umgebungen sind davon nicht betroffen. Sie können auch dann ausgeführt werden, wenn diese Richtlinie aktiviert ist. SERVICE_PRODUCERS können für Umgebungen mit privater IP nicht deaktiviert werden. Vorhandene Umgebungen sind davon nicht betroffen. Sie können auch dann ausgeführt werden, wenn diese Richtlinie aktiviert ist.
compute.restrictPrivateServiceConnectProducer Wenn die Funktion aktiv ist, setzen Sie die google.com-Organisation auf die Zulassungsliste. Wenn die Funktion aktiv ist, setzen Sie die google.com-Organisation auf die Zulassungsliste. (Jeder Wert ist zulässig)

Inkompatible Principal Access Boundary-Richtlinien

Principal Access Boundary-Richtlinien, die in Ihrer Organisation konfiguriert sind, können so konfiguriert werden, dass einige Vorgänge in Ihrer Umgebung blockiert oder die Erstellung neuer Umgebungen verhindert wird.

In diesem Fall wird in den Fehlermeldungen möglicherweise die folgende Zeile angezeigt:

Operations on resource are denied due to an IAM Principal Access Boundary Policy.

Die Komponenten Ihrer Umgebung befinden sich in einem Mandanten und einem Kundenprojekt. Das Mandantenprojekt wird von Google verwaltet und gehört nicht zu der Organisation, in der sich die Umgebung befindet. Das Dienstkonto Ihrer Umgebung muss Berechtigungen zum Ausführen von Vorgängen im Mandantenprojekt haben.

Lösung:

  • Fügen Sie der Bindung der Richtlinie einen Bedingungsausdruck hinzu, um das Dienstkonto der Umgebung aus der Richtlinie auszuschließen. Ein Beispiel dafür, wie Sie ein Hauptkonto ausschließen, damit die Richtlinie nicht darauf angewendet wird, finden Sie in der Identity and Access Management-Dokumentation unter Conditional policy bindings for principal access boundary policies.

Einschränken der in einer Organisation oder einem Projekt verwendeten Dienste

Organisations- oder Projektadministratoren können mithilfe der Einschränkung für Organisationsrichtlinien gcp.restrictServiceUsage einschränken, welche Google-Dienste in ihren Projekten verwendet werden können.

Wenn Sie diese Organisationsrichtlinie verwenden, ist es wichtig, alle von Cloud Composer benötigten Dienste zuzulassen.

Nächste Schritte