Google Cloud Managed Service for Apache Kafka-Cluster überwachen

Managed Service for Apache Kafka erfasst Messwerte, mit denen Sie Ihre Kafka-Cluster überwachen können. Auf dieser Seite wird beschrieben, wie Sie diese Messwerte in der Google Cloud Console aufrufen.

Übersicht

Managed Service for Apache Kafka exportiert mehrere Messwerte, die in der Open-Source-Kafka-Distribution verfügbar sind, sowie dienstspezifische Messwerte wie den Offset-Lag der Consumer-Gruppe.

Die Messwerte sind in vier Ressourcenkategorien unterteilt:

  • Cluster: Diese Messwerte sind nützlich, um den allgemeinen Zustand eines Clusters aufrechtzuerhalten.

  • Thema: Diese Messwerte umfassen Raten und Fehler für Publisher und Verbraucher. Sie überwachen den allgemeinen Zustand von Kafka-Anwendungen und Probleme, die sich auf einen bestimmten Broker beziehen.

  • Themenpartition: Diese Messwerte sind für die Überwachung und Fehlerbehebung von Leistungsproblemen vorgesehen, die sich auf einzelne Partitionen beziehen, z. B. eine ungleichmäßige Schlüsselverteilung.

  • Topic Partition Consumer Group: Mit diesen Messwerten wird der Zustand von Verbraucheranwendungen überwacht, insbesondere die Verbraucherverzögerung. Open-Source-Kafka-Fehlermesswerte für Verbrauchergruppen sind nicht nach Partition, sondern nur auf Themaebene verfügbar.

Einige Messwerte können nach Brokerindex gruppiert werden. Anhand des Broker-Index können Sie die Zone ermitteln, in der der Broker bereitgestellt wird. Weitere Informationen finden Sie unter Broker ansehen.

Messwerte für einen Kafka-Cluster ansehen

Sie können die Messwerte auf folgende Weise aufrufen:

  • Die Seite Clusterdetails enthält Monitoring-Dashboards für Cluster, Themen und Consumer-Gruppen. Diese Dashboards enthalten vordefinierte Diagramme, mit denen Sie den Gesamtzustand und die Leistung Ihres Clusters sehen können.

  • Mit dem Metrics Explorer können Sie alle verfügbaren Messwerte ansehen, benutzerdefinierte Diagramme erstellen oder Messwerte für mehrere Cluster zusammenfassen.

Erforderliche Rollen und Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Managed Kafka Viewer (roles/managedkafka.Viewer) für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Aufrufen von Monitoring-Diagrammen benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Monitoring-Dashboards verwenden

So rufen Sie die Monitoring-Dashboards für einen Managed Service for Apache Kafka-Cluster auf:

  1. Rufen Sie in der Google Cloud Console die Seite Cluster auf.

    Zu den Clustern

  2. Klicken Sie auf den Namen des Clusters.

  3. Wenn Sie Messwerte für den Cluster aufrufen möchten, wählen Sie den Tab Monitoring aus.

  4. So rufen Sie Messwerte für ein Thema im Cluster auf:

    1. Wählen Sie den Tab Ressourcen aus.

    2. Klicken Sie in der Liste Themen auf den Namen des Themas.

    3. Wählen Sie auf der Seite Themendetails den Tab Monitoring aus.

  5. So rufen Sie Messwerte für eine Verbrauchergruppe im Cluster auf:

    1. Wählen Sie den Tab Ressourcen aus.

    2. Klicken Sie in der Liste Verbrauchergruppen auf den Namen der Verbrauchergruppe.

    3. Wählen Sie auf der Seite Details zur Verbrauchergruppe den Tab Monitoring aus.

Weitere Informationen finden Sie unter Kafka-Cluster ansehen.

Metrics Explorer verwenden

So rufen Sie Messwerte für Managed Service for Apache Kafka mit Metrics Explorer auf:

  1. Wechseln Sie in der Google Cloud Console zur Seite Metrics Explorer.

    Zum Metrics Explorer

  2. Klicken Sie im Bereich Konfiguration auf Messwert auswählen.

  3. Geben Sie im Filter Apache Kafka ein.

  4. Wählen Sie unter Aktive Ressourcen eine der folgenden Optionen aus:

    • Apache Kafka-Cluster

    • Apache Kafka-Thema

    • Apache Kafka-Themenpartition

    • Apache Kafka-Themenpartition-Nutzergruppe

  5. Wählen Sie einen Messwert aus und klicken Sie auf Übernehmen.

Weitere Informationen zum Metrics Explorer finden Sie unter Diagramme mit dem Metrics Explorer erstellen.

Messwerte für Managed Service for Apache Kafka

In den folgenden Tabellen sind häufig verwendete Messwerte für das Monitoring Ihres Kafka-Clusters und der Clusterressourcen aufgeführt. Eine vollständige Liste der verfügbaren Messwerte finden Sie unter Google Cloud -Messwerte.

Der Dienst „Managed Service for Apache Kafka“ wird durch die Dienst-URL managedkafka.googleapis.com identifiziert.

Clustermesswerte

Die folgenden Messwerte gelten für Cluster. Wenn Sie die Messwerte für einen bestimmten Cluster aufrufen möchten, filtern Sie nach dem Label cluster_id.

Messwert Beschreibung Entsprechender MBean-Name
cpu/core_usage_time Kumulative CPU-Nutzung des Clusters in vCPU. Das kann hilfreich sein, um die Gesamtkosten für den Betrieb des Clusters zu ermitteln.
cpu/limit Aktuelle Anzahl der CPUs, die für den Cluster konfiguriert sind. Kann verwendet werden, um die CPU-Auslastung als Verhältnis mit dem Messwert cpu/usage zu überwachen.
memory/usage Aktuelle RAM-Nutzung im Cluster. Kann verwendet werden, um die RAM-Auslastung als Verhältnis mit dem Messwert memory/limit zu überwachen.
memory/limit Aktuell konfigurierte RAM-Größe des Clusters. Kann verwendet werden, um die RAM-Auslastung als Verhältnis mit dem Messwert memory/usage zu überwachen.
cluster_byte_in_count Die Gesamtzahl der Byte, die von Clients an alle Themen gesendet wurden. kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec
cluster_byte_out_count Die Gesamtzahl der Byte, die von allen Themen an Clients gesendet wurden. kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec
cluster_message_in_count Die Gesamtzahl der Nachrichten, die für alle Themen veröffentlicht wurden. kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec
request_count Die Gesamtzahl der Anfragen an den Broker kafka.network:type=RequestMetrics,name=RequestsPerSec,request= {Produce|FetchConsumer|FetchFollower},version=([0-9]+)
request_byte_count Die Gesamtgröße der Anfragen, die an den Cluster gesendet wurden, in Byte. kafka.network:type=RequestMetrics,name=RequestBytes,request= ([-.\w]+)
partitions Die aktuelle Anzahl der Partitionen, die von diesem Cluster verarbeitet werden, aufgeschlüsselt nach Broker. kafka.server:type=ReplicaManager,name=PartitionCount
request_latencies Die Anzahl der Millisekunden, die für jede Anfrage benötigt wurden, in verschiedenen Perzentilen kafka.network:type=RequestMetrics,name=TotalTimeMs,request= {Produce|FetchConsumer|FetchFollower}
consumer_groups Die aktuelle Anzahl der Consumer-Gruppen, die Daten vom Broker abrufen kafka.server:type=GroupMetadataManager,name=NumGroups
offline_partitions Die Anzahl der Offline-Themenpartitionen, die vom Controller beobachtet werden. kafka.controller:type=KafkaController,name=OfflinePartitionCount

Themenmesswerte

Die folgenden Messwerte gelten für Themen. Wenn Sie die Messwerte für ein bestimmtes Thema aufrufen möchten, filtern Sie nach den Labels cluster_id und topic_id.

Messwert Beschreibung Entsprechender MBean-Name
message_in_count Die Gesamtzahl der für das Thema veröffentlichten Nachrichten. kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec, topic=([-.\w]+)
byte_in_count Die Gesamtzahl der Byte, die von Clients an das Thema gesendet wurden. kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec,topic=([-.\w]+)
topic_request_count Die Gesamtzahl der Anfragen zum Erstellen und Abrufen, die für das Thema gestellt wurden. kafka.server:type=BrokerTopicMetrics,name=TotalProduceRequestsPerSec,topic=([-.\w]+)
kafka.server:type=BrokerTopicMetrics,name=TotalFetchRequestsPerSec,topic=([-.\w]+)
topic_error_count Die Gesamtzahl der fehlgeschlagenen Produce- und Fetch-Anfragen für das Thema. kafka.server:type=BrokerTopicMetrics,name=FailedProduceRequestsPerSec,topic=([-.\w]+)
kafka.server:type=BrokerTopicMetrics,name=FailedFetchRequestsPerSec,topic=([-.\w]+)
byte_out_count Die Gesamtzahl der an Clients gesendeten Bytes. kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec, topic=([-.\w]+)

Messwerte für Partitionen

Die folgenden Messwerte gelten für Partitionen. Wenn Sie die Messwerte für eine bestimmte Partition in einem Thema aufrufen möchten, filtern Sie nach den Labels cluster_id, topic_id und partition_index.

Messwert Beschreibung Entsprechender MBean-Name
consumer_lag Replikationsverzögerung bei Nachrichten zwischen dem Leader und jedem Follower-Replikat. kafka.server:type=FetcherLagMetrics,name=ConsumerLag,clientId=([-.\w]+),topic=([-.\w]+),partition=([0-9]+)
log_segments Die aktuelle Anzahl der Logsegmente. Das ist nützlich, um sicherzustellen, dass die Speicherebenen ordnungsgemäß funktionieren. kafka.log:type=Log,name=NumLogSegments,topic=([-.\w]+),partition=([0-9]+)
first_offset Der erste Offset für jede Partition im Thema. In Kombination mit last_offset kann damit eine Obergrenze für die Gesamtzahl der gespeicherten Nachrichten überwacht und der tatsächliche Offset der ältesten Nachricht ermittelt werden. kafka.log:type=Log,name=LogStartOffset,topic=([-.\w]+),partition=([0-9]+)
last_offset Der letzte Offset in der Partition. Damit lässt sich der jeweils aktuelle Offset für jede Partition im Zeitverlauf ermitteln. Das kann hilfreich sein, um den spezifischen Offset zu ermitteln, der erforderlich ist, um Daten ab einem bestimmten Zeitpunkt in der Vergangenheit neu zu verarbeiten. kafka.log:type=Log,name=LogEndOffset,topic=([-.\w]+),partition=([0-9]+)
byte_size Die Größe der Partition auf der Festplatte in Byte.

Messwerte für Nutzergruppen

Die folgenden Messwerte gelten für Verbrauchergruppen. Wenn Sie die Messwerte für eine bestimmte Nutzergruppe aufrufen möchten, filtern Sie nach dem Label consumer_group_id.

Messwert Beschreibung Entsprechender MBean-Name
offset_lag Die Differenz zwischen dem letzten Offset und dem letzten committeten Offset für die Consumer-Gruppe für jede Partition. Dieser Messwert schätzt, wie viele erstellte Nachrichten der Consumer noch nicht erfolgreich verarbeitet hat.

Nächste Schritte