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 die Offset-Verzögerung der Nutzergruppe.

Die Messwerte sind in vier Ressourcenkategorien unterteilt:

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

  • Thema: Zu diesen Messwerten gehören Publisher- und Consumer-Raten sowie Fehler. Sie überwachen den allgemeinen Zustand von Kafka-Anwendungen und Probleme, die spezifisch für einen Broker sind.

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

  • Themenpartition-Nutzergruppe: Diese Messwerte überwachen den Zustand von Nutzeranwendungen, hauptsächlich die Nutzerverzögerung. Open-Source-Kafka-Fehlermesswerte für Nutzergruppen sind nicht nach Partition verfügbar, sondern nur auf Themenebene.

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

Messwerte für einen Kafka-Cluster ansehen

Sie können die Messwerte auf folgende Arten ansehen:

  • Die Seite Clusterdetails enthält Monitoring-Dashboards für Cluster, Themen und Nutzergruppen. Diese Dashboards enthalten vordefinierte Diagramme, mit denen Sie den allgemeinen Zustand 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 aus mehreren Clustern zusammenfassen.

Erforderliche Rollen und Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die Managed Kafka Viewer (roles/managedkafka.Viewer) IAM-Rolle für Ihr Projekt zu erteilen, um die Berechtigungen zu erhalten, die zum Aufrufen von Monitoring-Diagrammen erforderlich sind. 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.

Weitere Informationen zu dieser Rolle finden Sie unter Vordefinierte Rollen für Managed Service for Apache Kafka.

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 Nutzergruppe im Cluster auf:

    1. Wählen Sie den Tab Ressourcen aus.

    2. Klicken Sie in der Liste Nutzergruppen auf den Namen der Nutzergruppe.

    3. Wählen Sie auf der Seite Details zur Nutzergruppe 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 dem Metrics Explorer auf:

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

    Zum Metrics Explorer

  2. Klicken Sie im Abschnitt 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 Anwenden.

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. Die vollständige Liste der verfügbaren Messwerte finden Sie unter Google Cloud Messwerte.

Der Managed Service for Apache Kafka-Dienst 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-Auslastung des Clusters in vCPUs. Dies kann hilfreich sein, um die Gesamtbetriebskosten für den Cluster zu ermitteln.
cpu/limit Aktuelle Anzahl der für den Cluster konfigurierten CPUs. Kann verwendet werden, um die CPU-Auslastung als Verhältnis mit dem cpu/usage Messwert zu überwachen.
memory/usage Aktuelle RAM-Auslastung im Cluster. Kann verwendet werden, um RAM-Auslastung als Verhältnis mit dem memory/limit Messwert zu überwachen.
memory/limit Aktuell konfigurierte RAM-Größe des Clusters. Kann verwendet werden, um die RAM-Auslastung als Verhältnis mit dem memory/usage Messwert 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 in allen 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 an den Cluster in Byte. kafka.network:type=RequestMetrics,name=RequestBytes,request= ([-.\w]+)
partitions Die aktuelle Anzahl der von diesem Cluster verarbeiteten Partitionen, aufgeschlüsselt nach Broker. kafka.server:type=ReplicaManager,name=PartitionCount
request_latencies Die Anzahl der Millisekunden für jede Anfrage bei verschiedenen Perzentilen. kafka.network:type=RequestMetrics,name=TotalTimeMs,request= {Produce|FetchConsumer|FetchFollower}
consumer_groups Die aktuelle Anzahl der Nutzergruppen, die Daten vom Broker abrufen. kafka.server:type=GroupMetadataManager,name=NumGroups
offline_partitions Die Anzahl der Offline-Themenpartitionen, wie vom Controller beobachtet. 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 Nachrichten, die im Thema veröffentlicht wurden. 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 an das Thema gesendet wurden. kafka.server:type=BrokerTopicMetrics,name=TotalProduceRequestsPerSec,topic=([-.\w]+)
kafka.server:type=BrokerTopicMetrics,name=TotalFetchRequestsPerSec,topic=([-.\w]+)
topic_error_count Die Gesamtzahl der fehlgeschlagenen Anfragen zum Erstellen und Abrufen, die an das Thema gesendet wurden. 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 Byte. kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec, topic=([-.\w]+)

Partitionsmesswerte

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 in Nachrichten zwischen 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. Dies 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 letzte Offset für jede Partition im Zeitverlauf ermitteln. Dies kann hilfreich sein, um den spezifischen Offset zu ermitteln, der erforderlich ist, um Daten ab einem bestimmten Zeitpunkt in der Vergangenheit noch einmal zu verarbeiten. kafka.log:type=Log,name=LogEndOffset,topic=([-.\w]+),partition=([0-9]+)
byte_size Die Größe der Partition auf dem Laufwerk in Byte.

Messwerte für Nutzergruppen

Die folgenden Messwerte gelten für Nutzergruppen. 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 für die Nutzergruppe für jede Partition bestätigten Offset. Dieser Messwert schätzt, wie viele erstellte Nachrichten der Nutzer noch nicht erfolgreich verarbeitet hat.

Nächste Schritte