Auf dieser Seite wird beschrieben, wie Sie Messwerte von Config Sync an Cloud Monitoring senden.
Config Sync verwendet OpenTelemetry, um Messwerte zu erstellen, aufzuzeichnen und zu exportieren. Auf dieser Seite wird beschrieben, wie Sie Cloud Monitoring-Messwerte konfigurieren.
Wir empfehlen, Messwerte entweder mit Cloud Monitoring (auf dieser Seite) oder mit Prometheus zu exportieren. Sie können auch benutzerdefinierte Messwerte verwenden.
Zum Konfigurieren von Cloud Monitoring-Messwerten ist die Berechtigung iam.serviceAccounts.setIamPolicy
für das Projekt erforderlich.
Beispiele zum Aufrufen dieser Messwerte finden Sie unter Beispiel für Debugging-Verfahren.
Sie können diese Messwerte im Metrics Explorer oder über die Cloud Monitoring API aufrufen.
Berechtigung zum Schreiben von Messwerten für Cloud Monitoring erteilen
Wenn Sie Cloud Monitoring für Config Sync konfigurieren möchten, müssen Sie einem Dienstkonto in Ihrem Projekt die Berechtigung zum Schreiben von Messwerten erteilen. Die erforderliche Berechtigung hängt davon ab, ob die Identitätsföderation von Arbeitslasten für GKE aktiviert ist.
Cloud Monitoring mit Workload Identity Federation for GKE konfigurieren
Wenn Workload Identity Federation for GKE aktiviert ist, kann Config Sync Messwerte senden. Führen Sie dazu folgenden Befehl aus:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member="serviceAccount:PROJECT_ID.svc.id.goog[config-management-monitoring/default]"
Ersetzen Sie PROJECT_ID
durch die Projekt-ID des Clusters.
Cloud Monitoring ohne Workload Identity Federation for GKE konfigurieren
Wenn die Workload Identity Federation for GKE nicht aktiviert ist und Config Sync in einerGoogle Cloud -Umgebung ausgeführt wird, können Sie das Compute Engine-Standarddienstkonto verwenden. Wenn in Ihrer Organisation die Einschränkung für die Organisationsrichtlinie iam.automaticIamGrantsForDefaultServiceAccounts
erzwungen wird, wird diesem Dienstkonto möglicherweise nicht automatisch die Rolle „Bearbeiter“ (roles/editor
) für Ihr Projekt zugewiesen. Sie müssen dem Compute Engine-Standarddienstkonto die IAM-Rolle „Monitoring Metric Writer“ (roles/monitoring.metricWriter
) für das Projekt zuweisen. Führen Sie dazu den folgenden Befehl aus:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.PROJECT_NUMBER
: Ihre Projektnummer.
Standardliste von Messwerten in Cloud Monitoring
Name | Typ |
---|---|
api_duration_seconds | Verteilung |
apply_duration_seconds | Verteilung |
apply_operations_total | Anzahl |
declared_resources | Letzter Wert |
internal_errors_total | Anzahl |
last_sync_timestamp | Letzter Wert |
pipeline_error_observed | Letzter Wert |
reconciler_errors | Letzter Wert |
resource_fights_total | Anzahl |
reconcile_duration_seconds | Verteilung |
resource_group_total | Letzter Wert |
resource_count | Letzter Wert |
ready_resource_count | Letzter Wert |
resource_ns_count | Letzter Wert |
cluster_scoped_resource_count | Letzter Wert |
kcc_resource_count | Gauge |
Wenn Sie die Zulassungsliste für Messwerte in Cloud Monitoring ändern möchten, folgen Sie der Anleitung zum Patchen des Otel-Collector-Deployments mit ConfigMap.
Beispiel für Debugging-Verfahren für Cloud Monitoring
Die folgenden Cloud Monitoring-Beispiele veranschaulichen einige Muster für die Verwendung von OpenCensus-Messwerten, um Probleme im Zusammenhang mit Config Sync zu erkennen und zu diagnostizieren, wenn Sie die RootSync- und RepoSync APIs verwenden.
Messwertformat
In Cloud Monitoring haben Messwerte das folgende Format: custom.googleapis.com/opencensus/config_sync/METRIC
.
Dieser Messwertname besteht aus folgenden Komponenten:
custom.googleapis.com
: Alle benutzerdefinierten Messwerte haben dieses Präfixopencensus
: Dieses Präfix wird hinzugefügt, da Config Sync die OpenCensus-Bibliothek verwendetconfig_sync/
: Messwerte, die von Config Sync nach Cloud Monitoring exportiert werden, haben dieses PräfixMETRIC
: der Name des abzufragenden Messwerts
Messwerte nach Abgleich abfragen
RootSync- und RepoSync-Objekte sind mit allgemeinen Messwerten instrumentiert, die Ihnen Einblick in die Funktionsweise von Config Sync im Cluster geben. Fast alle Messwerte sind mit dem Abgleichernamen gekennzeichnet, sodass Sie sehen können, ob Fehler aufgetreten sind, und Sie können in Cloud Monitoring Benachrichtigungen für sie einrichten.
Ein Abgleich ist ein Pod, der als Deployment bereitgestellt wird. Damit werden Manifeste aus einer Source of Truth mit einem Cluster synchronisiert. Wenn Sie ein RootSync-Objekt erstellen, erstellt Config Sync einen Abgleicher mit dem Namen root-reconciler-ROOT_SYNC_NAME
oder root-reconciler
, wenn der Name von RootSync root-sync
lautet. Wenn Sie ein RepoSync-Objekt erstellen, erstellt Config Sync einen Abgleicher mit dem Namen ns-reconciler-NAMESPACE-REPO_SYNC_NAME-REPO_SYNC_NAME_LENGTH
oder ns-reconciler-NAMESPACE
, wenn der Name der RepoSync repo-sync
lautet, wobei NAMESPACE
ist der Namespace, in dem Sie das RepoSync-Objekt erstellt haben.
Das folgende Diagramm zeigt, wie Abgleich-Pods funktionieren, wenn die Source of Truth ein Git-Repository ist:
Führen Sie die folgenden Aufgaben aus, um beispielsweise bei Verwendung von Cloud Monitoring nach dem Namen der Abgleicher zu filtern:
Wechseln Sie in der Google Cloud Console zu Monitoring:
Klicken Sie im Navigationsbereich Monitoring auf leaderboard-Metrics Explorer.
Fügen Sie in der Drop-down-Liste Messwert auswählen Folgendes hinzu:
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Wählen Sie in der Drop-down-Liste Filter den Eintrag root_reconciler aus. Ein Filterfeldfeld wird geöffnet.
Wählen Sie im Filterfeld das erste Feld im Feld = und im zweiten Feld den Namen des Abgleichers aus, z. B.
root-reconciler
.Klicken Sie auf Anwenden.
Sie können jetzt Messwerte für Ihre RootSync-Objekte abrufen.
Eine Anleitung zum Filtern nach einem bestimmten Datentyp finden Sie unter Daten filtern.
Config Sync-Vorgänge nach Komponente und Status abfragen
Wenn Sie die RootSync- und RepoSync-APIs aktiviert haben, werden die Importe und die Bereitstellung aus einer "Source of Truth" und das Synchronisieren in einen Cluster vom Abgleicher übernommen.
Der Messwert reconciler_errors
ist nach Komponenten gekennzeichnet, damit Sie sehen können, wo Fehler aufgetreten sind.
Führen Sie die folgenden Aufgaben aus, um beispielsweise bei Verwendung von Cloud Monitoring nach Komponenten zu filtern:
Wechseln Sie in der Google Cloud Console zu Monitoring:
Klicken Sie im Navigationsbereich Monitoring auf leaderboard-Metrics Explorer.
Fügen Sie in der Drop-down-Liste Messwert auswählen
custom.googleapis.com/opencensus/config_sync/reconciler_errors
hinzu.Wählen Sie in der Drop-down-Liste Filter die Option Komponente aus. Ein Filterfeldfeld wird geöffnet.
Wählen Sie im Feld mit den Filterfeldern im ersten Feld = und im zweiten source aus.
Klicken Sie auf Anwenden.
Sie können jetzt Fehler sehen, die beim Bereitstellen aus einer „Source of Truth“ für Ihre Abgleicher aufgetreten sind.
Sie können auch die Messwerte für den Quell- und Synchronisierungsprozess selbst prüfen, indem Sie die folgenden Messwerte abfragen und nach dem Tag status
filtern:
custom.googleapis.com/opencensus/config_sync/parser_duration_seconds
custom.googleapis.com/opencensus/config_sync/apply_duration_seconds
custom.googleapis.com/opencensus/config_sync/remediate_duration_seconds