Fehlerbehebung bei Kafka-Clustern

Auf dieser Seite erfahren Sie, wie Sie Probleme beim Erstellen oder Konfigurieren eines Managed Service for Apache Kafka-Clusters beheben.

Fehler beim Erstellen von Kafka-Clustern

In diesem Abschnitt werden Fehler aufgeführt, die beim Erstellen eines Kafka-Clusters auftreten können.

Der Dienst hat keine Berechtigung für den Zugriff auf den Cloud KMS-Schlüssel

Das folgende Problem tritt auf, wenn dem Dienst-Agent für Managed Service for Apache Kafka die erforderliche Berechtigung für den Zugriff auf den Cloud KMS-Schlüssel fehlt.

Service agent service-${PROJECT_NUMBER}@gcp-sa-managedkafka.iam.gserviceaccount.com
has not been granted the required role cloudkms.cryptoKeyEncrypterDecrypter to
encrypt data using the KMS key.`

Weisen Sie dem Dienstkonto die Rolle Cloud KMS CryptoKey Verschlüsseler/Entschlüsseler für den Cloud KMS-Schlüssel zu, um dieses Problem zu beheben. Weitere Informationen finden Sie unter Erforderliche Rollen zum Konfigurieren von CMEK.

Der Dienst hat keine Berechtigung zum Abrufen des Subnetzes

Das folgende Problem tritt auf, wenn dem Dienst-Agent für Managed Service for Apache Kafka Dienst-Agent die erforderliche Rolle zum Konfigurieren des Netzwerks im VPC-Netzwerk fehlt, in dem die Kafka-Clients ausgeführt werden.

Service does not have permission to retrieve subnet. Please grant
service-${PROJECT_NUMBER}@gcp-sa-managedkafka.iam.gserviceaccount.com the
managedkafka.serviceAgent role in the IAM policy of the project
${SUBNET_PROJECT} and ensure the Compute Engine API is enabled in project
${SUBNET_PROJECT}`

Weisen Sie dem Dienstkonto die Rolle Managed Kafka Service Agent zu, um dieses Problem zu beheben. Weitere Informationen finden Sie unter Cluster projektübergreifend verbinden.

Netzwerkfehler

In diesem Abschnitt werden Fehler aufgeführt, die beim Konfigurieren des Netzwerks für einen Kafka-Cluster auftreten können.

Der Dienst konnte das Netzwerk nicht einrichten

Das folgende Problem tritt auf, wenn Managed Service for Apache Kafka den Kafka-Cluster nicht mit Ihrem Virtual Private Cloud-Subnetz verbinden kann.

Managed Service for Apache Kafka failed to set up networking in VPC subnet.

Führen Sie die folgenden Schritte aus, um dieses Problem zu beheben:

  • Aktivieren Sie die Compute Engine API und die Cloud DNS API im übergeordneten Projekt des VPC-Netzwerk des Verbrauchers.

  • Wenn sich der Managed Service for Apache Kafka-Cluster und das VPC-Netzwerk des Verbrauchers in verschiedenen Projekten befinden, konfigurieren Sie die erforderlichen Berechtigungen. Weitere Informationen finden Sie unter Cluster projektübergreifend verbinden.

  • Achten Sie darauf, dass keine Einschränkungen der Organisationsrichtlinie verhindern, dass der Dienst die erforderlichen Ressourcen im Projekt des VPC-Netzwerk des Verbrauchers erstellt.

Weitere Informationen finden Sie unter Netzwerk für Managed Service for Apache Kafka konfigurieren.

Clientanwendungen können keine Verbindung herstellen

Wenn Ihre Clientanwendungen keine Verbindung zu Ihrem Cluster herstellen können, prüfen Sie die folgenden Probleme:

  • Achten Sie darauf, dass Clients die richtige Bootstrap-Adresse verwenden.

  • Achten Sie darauf, dass die Kafka-Clients in einem VPC-Netzwerk ausgeführt werden, das für den Zugriff auf den Managed Service for Apache Kafka-Cluster konfiguriert ist.

  • Wenn Sie den Kafka-Client auf einem Computer oder Laptop ausführen, können Sie eine Compute Engine-Instanz als Proxy für den Zugriff auf den Managed Service for Apache Kafka-Cluster einrichten. Weitere Informationen finden Sie unter Clientcomputer einrichten.

Authentifizierungsfehler

In diesem Abschnitt werden Fehler aufgeführt, die auftreten können, wenn sich Clientanwendungen bei Ihrem Kafka-Cluster authentifizieren.

SASL-Authentifizierung schlägt fehl

Das folgende Problem tritt auf, wenn ein Client keine Verbindung zum Cluster über die SASL-Authentifizierung herstellen kann.

Exception in thread "main" java.util.concurrent.ExecutionException:
org.apache.kafka.common.errors.SaslAuthenticationException:
Authentication failed: Invalid username or password

Prüfen Sie die folgenden möglichen Ursachen, um das Problem zu beheben:

  • Das Passwort ist fehlerhaft und stellt nach der Base64-Decodierung keinen gültigen JSON-Blob für den Dienstkontoschlüssel oder ein gültiges Zugriffstoken dar.

  • Der authentifizierende Principal hat nicht die Berechtigung managedkafka.clusters.connect für den Cluster.

  • Der angegebene Nutzername stimmt nicht mit dem Principal der Anmeldedaten überein.

Wenn bei einem Client alle 30 Minuten häufige Verbindungsunterbrechungen auftreten, liegt das möglicherweise daran, dass der Client die regelmäßige Neuauthentifizierung nicht unterstützt. Managed Service for Apache Kafka-Broker erfordern, dass sich Clients alle 30 Minuten neu authentifizieren. Dies wird durch die Broker-Property connections.max.reauth.ms erzwungen. Prüfen Sie, ob die Version Ihrer Kafka-Clientbibliothek 2.2.0 oder höher ist und die Neuauthentifizierung unterstützt.

Weitere Informationen finden Sie unter SASL-Authentifizierung konfigurieren.

Nächste Schritte