Champs pertinents dans les événements du journal des performances pour Amazon EKS et Kubernetes - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Champs pertinents dans les événements du journal des performances pour Amazon EKS et Kubernetes

Pour Amazon EKS et Kubernetes, l' CloudWatch agent conteneurisé émet des données sous forme d'événements du journal des performances. Cela permet d' CloudWatch ingérer et de stocker des données à haute cardinalité. CloudWatch utilise les données contenues dans les événements du journal des performances pour créer CloudWatch des métriques agrégées au niveau du cluster, du nœud et du pod sans perdre de détails granulaires.

Le tableau suivant répertorie les champs de ces événements du journal de performances qui sont pertinents pour la collecte de données de métriques Container Insights. Vous pouvez utiliser CloudWatch Logs Insights pour rechercher l'un de ces champs afin de collecter des données ou d'étudier des problèmes. Pour plus d'informations, voir Analyser les données des CloudWatch journaux avec Logs Insights.

Type Champ de journal Source Formule ou notes

Pod

pod_cpu_utilization

Calculé

Formule : pod_cpu_usage_total / node_cpu_limit

Pod

pod_cpu_usage_total

pod_cpu_usage_total est signalé en Millicores.

cadvisor

Pod

pod_cpu_limit

Calculé

Formule : sum(container_cpu_limit)

sum(container_cpu_limit) inclut des pods déjà terminés.

Si aucune CPU limite n'est définie pour les conteneurs du pod, ce champ n'apparaît pas dans le journal des événements. Inclut les conteneurs init.

Pod

pod_cpu_request

Calculé

Formule : sum(container_cpu_request)

L'élément container_cpu_request n'est pas forcément défini. Seuls ceux définis sont inclus dans la somme.

Pod

pod_cpu_utilization_over_pod_limit

Calculé

Formule : pod_cpu_usage_total / pod_cpu_limit

Pod

pod_cpu_reserved_capacity

Calculé

Formule : pod_cpu_request / node_cpu_limit

Pod

pod_memory_utilization

Calculé

Formule : pod_memory_working_set / node_memory_limit

Il s'agit du pourcentage d'utilisation de la mémoire du pod par rapport à la limitation de la mémoire du nœud.

Pod

pod_memory_working_set

cadvisor

Pod

pod_memory_limit

Calculé

Formule : sum(container_memory_limit)

Si l'un des conteneurs dans le pod n'a pas de limite de mémoire définie, ce champ n'apparaît pas dans l'événement de journal. Inclut les conteneurs init.

Pod

pod_memory_request

Calculé

Formule : sum(container_memory_request)

L'élément container_memory_request n'est pas forcément défini. Seuls ceux définis sont inclus dans la somme.

Pod

pod_memory_utilization_over_pod_limit

Calculé

Formule : pod_memory_working_set / pod_memory_limit

Si l'un des conteneurs dans le pod n'a pas de limite de mémoire définie, ce champ n'apparaît pas dans l'événement de journal. Inclut les conteneurs init.

Pod

pod_memory_reserved_capacity

Calculé

Formule : pod_memory_request / node_memory_limit

Pod

pod_network_tx_bytes

Calculé

Formule : sum(pod_interface_network_tx_bytes)

Ces données sont disponibles pour toutes les interfaces réseau (par pod). L' CloudWatch agent calcule le total et ajoute des règles d'extraction métriques.

Pod

pod_network_rx_bytes

Calculé

Formule : sum(pod_interface_network_rx_bytes)

Pod

pod_network_total_bytes

Calculé

Formule : pod_network_rx_bytes + pod_network_tx_bytes

PodNet

pod_interface_network_rx_bytes

cadvisor

Ces données correspondent au nombre d'octets rx réseau par seconde d'une interface réseau de pod.

PodNet

pod_interface_network_tx_bytes

cadvisor

Ces données correspondent au nombre d'octets tx réseau par seconde d'une interface réseau de pod.

Conteneur

container_cpu_usage_total

cadvisor

Conteneur

container_cpu_limit

cadvisor

Cet élément n'est pas forcément défini. S'il n'est pas défini, il ne sera pas transmis.

Conteneur

container_cpu_request

cadvisor

Cet élément n'est pas forcément défini. S'il n'est pas défini, il ne sera pas transmis.

Conteneur

container_memory_working_set

cadvisor

Conteneur

container_memory_limit

pod

Cet élément n'est pas forcément défini. S'il n'est pas défini, il ne sera pas transmis.

Conteneur

container_memory_request

pod

Cet élément n'est pas forcément défini. S'il n'est pas défini, il ne sera pas transmis.

Nœud

node_cpu_utilization

Calculé

Formule : node_cpu_usage_total / node_cpu_limit

Nœud

node_cpu_usage_total

cadvisor

Nœud

node_cpu_limit

/proc

Nœud

node_cpu_request

Calculé

Formule : sum(pod_cpu_request)

Pour les tâches cron, node_cpu_request inclut également les requêtes provenant de pods terminés. Cela peut entraîner une valeur élevée pour node_cpu_reserved_capacity.

Nœud

node_cpu_reserved_capacity

Calculé

Formule : node_cpu_request / node_cpu_limit

Nœud

node_memory_utilization

Calculé

Formule : node_memory_working_set / node_memory_limit

Nœud

node_memory_working_set

cadvisor

Nœud

node_memory_limit

/proc

Nœud

node_memory_request

Calculé

Formule : sum(pod_memory_request)

Nœud

node_memory_reserved_capacity

Calculé

Formule : node_memory_request / node_memory_limit

Nœud

node_network_rx_bytes

Calculé

Formule : sum(node_interface_network_rx_bytes)

Nœud

node_network_tx_bytes

Calculé

Formule : sum(node_interface_network_tx_bytes)

Nœud

node_network_total_bytes

Calculé

Formule : node_network_rx_bytes + node_network_tx_bytes

Nœud

node_number_of_running_pods

Liste de pods

Nœud

node_number_of_running_containers

Liste de pods

NodeNet

node_interface_network_rx_bytes

cadvisor

Ces données correspondent au nombre d'octets rx réseau par seconde d'une interface réseau de composant master.

NodeNet

node_interface_network_tx_bytes

cadvisor

Ces données correspondent au nombre d'octets tx réseau par seconde d'une interface réseau de composant master.

NodeFS

node_filesystem_capacity

cadvisor

NodeFS

node_filesystem_usage

cadvisor

NodeFS

node_filesystem_utilization

Calculé

Formule : node_filesystem_usage / node_filesystem_capacity

Ces données sont disponibles par nom de périphérique.

Cluster

cluster_failed_node_count

Serveur API

Cluster

cluster_node_count

Serveur API

Service

service_number_of_running_pods

Serveur API

Namespace

namespace_number_of_running_pods

Serveur API

Exemples de calculs de métriques

Cette section inclut des exemples qui illustrent comment certaines des valeurs figurant dans le tableau précédent sont calculées.

Supposons que vous ayez un cluster à l'état suivant.

Node1 node_cpu_limit = 4 node_cpu_usage_total = 3 Pod1 pod_cpu_usage_total = 2 Container1 container_cpu_limit = 1 container_cpu_request = 1 container_cpu_usage_total = 0.8 Container2 container_cpu_limit = null container_cpu_request = null container_cpu_usage_total = 1.2 Pod2 pod_cpu_usage_total = 0.4 Container3 container_cpu_limit = 1 container_cpu_request = 0.5 container_cpu_usage_total = 0.4 Node2 node_cpu_limit = 8 node_cpu_usage_total = 1.5 Pod3 pod_cpu_usage_total = 1 Container4 container_cpu_limit = 2 container_cpu_request = 2 container_cpu_usage_total = 1

Le tableau suivant montre comment les CPU métriques du pod sont calculées à l'aide de ces données.

Métrique Formule Pod1 Pod2 Pod3

pod_cpu_utilization

pod_cpu_usage_total / node_cpu_limit

2 / 4 = 50 %

0,4 / 4 = 10 %

1 / 8 = 12,5 %

pod_cpu_utilization_over_pod_limit

pod_cpu_usage_total / sum(container_cpu_limit)

N/A car CPU la limite pour Container2 n'est pas définie

0,4 / 1 = 40 %

1 / 2 = 50 %

pod_cpu_reserved_capacity

sum(container_cpu_request) / node_cpu_limit

(1 + 0) / 4 = 25 %

0,5 / 4 = 12,5 %

2 / 8 = 25 %

Le tableau suivant montre comment les CPU métriques des nœuds sont calculées à l'aide de ces données.

Métrique Formule Node1 Node2

node_cpu_utilization

node_cpu_usage_total / node_cpu_limit

3 / 4 = 75 %

1,5 / 8 = 18,75 %

node_cpu_reserved_capacity

sum(pod_cpu_request) / node_cpu_limit

1,5 / 4 = 37,5 %

2 / 8 = 25 %