Config Sync-Messwerte
Auf dieser Seite werden die OpenTelemetry-Messwerte beschrieben, die zum Überwachen Ihrer Config Sync-Ressourcen verfügbar sind.
Config Sync verwendet OpenCensus, um Messwerte zu erstellen und aufzuzeichnen, und OpenTelemetry, um Messwerte nach Prometheus und Cloud Monitoring zu exportieren. Sie können OpenTelemetry-Messwerte in ein anderes Monitoringsystem exportieren. In den folgenden Leitfäden wird erläutert, wie Messwerte exportiert werden:
OpenTelemetry-Messwerte
Config Sync und der Resource Group Controller erfassen die folgenden Messwerte mit OpenCensus und stellen sie über den OpenTelemetry-Collector zur Verfügung. In der Spalte Tags sind Config Sync-spezifische Tags aufgeführt, die für jeden Messwert gelten. Messwerte mit Tags repräsentieren mehrere Messungen, eine für jede Kombination von Tag-Werten.
Config Sync-Messwerte
Name | Typ | Tags | Beschreibung |
---|---|---|---|
api_duration_seconds | Vertrieb | Vorgang, Status | Die Latenzverteilung von API-Serveraufrufen. |
apply_duration_seconds | Vertrieb | Status | Die Latenzverteilung beim Anwenden von Ressourcen, die aus der „Source of Truth“ deklariert sind, auf einen Cluster. |
apply_operations_total | Anzahl | Vorgang, Status, Controller | Die Gesamtzahl der Vorgänge, die ausgeführt wurden, um Ressourcen von der „Source of Truth“ mit einem Cluster zu synchronisieren. |
declared_resources | Letzter Wert | Die Anzahl der deklarierten Ressourcen, die aus Git geparst wurden. | |
internal_errors_total | Anzahl | source | Die Gesamtzahl der bei Config Sync festgestellten internen Fehler. Der Messwert wird möglicherweise nicht in den Abfrageergebnissen angezeigt, wenn kein interner Fehler aufgetreten ist. |
last_sync_timestamp | Letzter Wert | Status | Der Zeitstempel der letzten Synchronisierung aus Git. |
parser_duration_seconds | Verteilung | Status, Trigger, Quelle | Die Latenzverteilung der verschiedenen Phasen der Synchronisierung von der „Source of Truth“ zu einem Cluster. |
pipeline_error_observed | Letzter Wert | Name, Abgleicher, Komponente | Der Status der benutzerdefinierten RootSync- und RepoSync-Ressourcen. Der Wert 1 weist auf einen Fehler hin. |
reconcile_duration_seconds | Vertrieb | Status | Die Latenzverteilung der Abgleichereignisse, die vom Abgleicher verarbeitet werden |
reconciler_errors | Letzter Wert | Komponente, Fehlerklasse | Die Anzahl der Fehler, die beim Synchronisieren von Ressourcen aus der „Source of Truth“ mit einem Cluster aufgetreten sind. |
remediate_duration_seconds | Vertrieb | Status | Die Latenzverteilung von Remediator-Abgleichsereignissen. |
resource_conflicts_total | Anzahl | Die Gesamtzahl der Ressourcenkonflikte, die aus einer Abweichung zwischen den im Cache gespeicherten Ressourcen und den Clusterressourcen resultiert. Der Messwert wird möglicherweise nicht in den Abfrageergebnissen angezeigt, wenn kein Ressourcenkonflikt aufgetreten ist. | |
resource_fights_total | Anzahl | Die Gesamtzahl der Ressourcen, die zu häufig synchronisiert werden. Bei einem höheren Wert als null wird ein Problem angezeigt. Weitere Informationen finden Sie unter KNV2005: ResourceFightWarning. Der Messwert wird möglicherweise nicht in den Abfrageergebnissen angezeigt, wenn kein Ressourcenkampf stattgefunden hat. |
Messwerte von Resource Group Controller
Der Resource Group Controller ist eine Komponente in Config Sync, die die verwalteten Ressourcen verfolgt und prüft, ob jede einzelne Ressource bereit oder abgeglichen ist. Folgende Messwerte sind verfügbar:
Name | Typ | Tags | Beschreibung |
---|---|---|---|
rg_reconcile_duration_seconds | Verteilung | stallreason | Die Verteilung der Zeit, die zum Abgleich einer ResourceGroup-CR benötigt wird |
resource_group_total | Letzter Wert | Die aktuelle Anzahl der ResourceGroup-CRs | |
resource_count | Letzter Wert | resourcegroup | Die Gesamtzahl der Ressourcen, die von einer ResourceGroup verfolgt werden |
ready_resource_count | Letzter Wert | resourcegroup | Die Gesamtzahl der einsatzbereiten Ressourcen in einer ResourceGroup |
resource_ns_count | Letzter Wert | resourcegroup | Die Anzahl der Namespaces, die von Ressourcen in einer ResourceGroup verwendet werden |
cluster_scoped_resource_count | Letzter Wert | resourcegroup | Die Anzahl der clusterbezogenen Ressourcen in einer ResourceGroup |
crd_count | Letzter Wert | resourcegroup | Die Anzahl der CRDs in einer ResourceGroup |
kcc_resource_count | Letzter Wert | resourcegroup | Die Gesamtzahl der KCC-Ressourcen in einer ResourceGroup |
pipeline_error_observed | Letzter Wert | Name, Abgleicher, Komponente | Der Status der benutzerdefinierten RootSync- und RepoSync-Ressourcen. Der Wert 1 weist auf einen Fehler hin. |
Config Sync-Messwertlabels
Mit Messwertlabels lassen sich Messwertdaten in Cloud Monitoring und Prometheus aggregieren. Sie können in der Monitoring-Konsole in der Drop-down-Liste „Gruppieren nach“ ausgewählt werden.
Weitere Informationen zum Cloud Monitoring-Label und zum Prometheus-Messwertlabel finden Sie unter Komponenten des Messwertmodells und Prometheus-Datenmodell.
Messwertlabels
Die folgenden Labels werden von Config Sync- und Resource Group Controller-Messwerten verwendet, die beim Monitoring mit Cloud Monitoring und Prometheus verfügbar sind.
Name | Werte | Beschreibung |
---|---|---|
operation |
erstellen, patchen, aktualisieren, löschen | Die Art des ausgeführten Vorgangs |
status |
Erfolg, Fehler | Ausführungsstatus eines Vorgangs |
reconciler |
Rootsync, Reposync | Der Typ des Abgleichers |
source |
parser, differ, remediator | Ursache des internen Fehlers |
trigger |
retry, watchUpdate, managementConflict, resync, reimport | Der Trigger eines Abgleichsereignisses |
name |
Der Name des Abgleichers | Der Name des Abgleichers |
component |
Parsen, Quelle, Synchronisierung, Rendering, Bereitschaft | Der Name der Komponente / Stufe, in der sich die Abgleichung gerade befindet |
container |
Abgleicher, git-sync | Der Name des Containers |
resource |
CPU, Arbeitsspeicher | Der type der Ressource |
controller |
Anwender, Remediator | Name des Controllers in einem Root- oder Namespace-Abgleicher |
type |
Beliebige Kubernetes-Ressource, z. B. ClusterRole, Namespace, NetworkPolicy, Role usw. | Die Art der Kubernetes API |
commit |
---- | Der Hash des letzten synchronisierten Commits |
Ressourcenlabels
Für Config Sync-Messwerte, die an Prometheus und Cloud Monitoring gesendet werden, sind die folgenden Messwertlabels festgelegt, um den Quell-Pod zu identifizieren:
Name | Beschreibung |
---|---|
k8s.node.name |
Der Name des Knotens, der einen Kubernetes-Pod hostet |
k8s.pod.namespace |
Der Namespace des Pods |
k8s.pod.uid |
Die UID des Pods |
k8s.pod.ip |
Die IP-Adresse des Pods |
k8s.deployment.name |
Der Name des Deployments, dem der Pod gehört |
Für Config Sync-Messwerte, die von reconciler
-Pods an Prometheus und Cloud Monitoring gesendet werden, sind auch die folgenden Messwertlabels festgelegt, um die zum Konfigurieren des Abgleichs verwendeten RootSync- oder RepoSync-Messwerte zu identifizieren:
Name | Beschreibung |
---|---|
configsync.sync.kind |
Die Art der Ressource, die diesen Abgleicher konfiguriert: RootSync oder RepoSync |
configsync.sync.name |
Der Name des RootSync oder RepoSync , der diesen Abgleicher konfiguriert |
configsync.sync.namespace |
Der Namespace von RootSync oder RepoSync , der diesen Abgleicher konfiguriert |
Cloud Monitoring-Ressourcenlabels
Cloud Monitoring-Ressourcenlabels werden zur Indexierung von Messwerten im Speicher verwendet. Sie haben daher nur einen geringen Effekt auf die Kardinalität. Im Gegensatz zu Messwertlabels, bei denen die Kardinalität ein erhebliches Leistungsproblem darstellt. Weitere Informationen finden Sie unter Überwachte Ressourcentypen.
Der Ressourcentyp k8s_container
legt die folgenden Ressourcenlabels fest, um den Quellcontainer zu identifizieren:
Name | Beschreibung |
---|---|
container_name |
Der Name des Containers |
pod_name |
Der Name des Pods |
namespace_name |
Der Namespace des Pods |
location |
Die Region oder Zone des Clusters, in dem der Knoten gehostet wird |
cluster_name |
Der Name des Clusters, in dem der Knoten gehostet wird |
project |
Die ID des Projekts, in dem der Cluster gehostet wird |
Informationen zum Messwert "pipeline_error_observing"
Der Messwert pipeline_error_observed
ist ein Messwert, mit dem Sie RepoSync- oder RootSync-CRs schnell identifizieren können, die nicht synchron sind oder Ressourcen enthalten, die nicht mit dem gewünschten Status abgeglichen werden.
Bei einer erfolgreichen Synchronisierung durch eine RootSync oder RepoSync werden die Messwerte mit allen Komponenten (
rendering
,source
,sync
,readiness
) mit dem Wert 0 beobachtet.Wenn der letzte Commit das automatische Rendering nicht besteht, wird der Messwert mit der Komponente
rendering
mit dem Wert 1 beobachtet.Wenn der letzte Commit einen Fehler feststellt oder der letzte Commit eine ungültige Konfiguration enthält, wird der Messwert mit der Komponente
source
mit dem Wert 1 beobachtet.Wenn eine Ressource nicht auf den Cluster angewendet werden kann, wird der Messwert mit der Komponente
sync
mit dem Wert 1 beobachtet.Wenn eine Ressource angewendet wird, aber nicht den gewünschten Status erreicht, wird der Messwert mit der Komponente
readiness
mit dem Wert 1 beobachtet. Beispiel: Eine Bereitstellung wird auf den Cluster angewendet, aber die entsprechenden Pods werden nicht erfolgreich erstellt.
Nächste Schritte
- Weitere Informationen zur Überwachung von RootSync- und RepoSync-Objekten
- Informationen zum Verwenden der Config Sync-SLIs