Journalisation de plan de contrôle d'Amazon EKS - Amazon EKS

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.

Journalisation de plan de contrôle d'Amazon EKS

La journalisation du plan de contrôle Amazon EKS fournit des journaux d'audit et de diagnostic directement depuis le plan de contrôle Amazon EKS vers CloudWatch les journaux de votre compte. Ces journaux vous permettent de sécuriser et d'exécuter facilement vos clusters. Vous pouvez sélectionner les types de journaux exacts dont vous avez besoin, et les journaux sont envoyés sous forme de flux de journaux à un groupe pour chaque cluster Amazon EKS inclus CloudWatch. Pour plus d'informations, consultez Amazon CloudWatch logging.

Vous pouvez commencer à utiliser la journalisation de plan de contrôle d'Amazon EKS en choisissant les types de journal que vous voulez activer pour chaque cluster Amazon EKS nouveau ou existant. Vous pouvez activer ou désactiver chaque type de journal cluster par cluster à l'aide de la AWS Management Console, de la AWS CLI (version 1.16.139 ou supérieure) ou de l'API Amazon EKS. Lorsque cette option est activée, les journaux sont automatiquement envoyés depuis le cluster Amazon EKS aux CloudWatch journaux du même compte.

Lorsque vous utilisez la journalisation de plan de contrôle d'Amazon EKS, des frais standards Amazon EKS vous sont facturés pour chaque cluster que vous exécutez. Les frais standard d'ingestion et de stockage des données CloudWatch Logs vous sont facturés pour tous les journaux envoyés à CloudWatch Logs depuis vos clusters. Vous sont facturées également les ressources AWS, comme les instances Amazon EC2 ou les volumes Amazon EBS, que vous allouez dans le cadre de votre cluster.

Les types de journal de plan de contrôle de cluster suivants sont disponibles. Chaque type de journal correspond à un composant du plan de contrôle Kubernetes. Pour en savoir plus sur ces composants, consultez Composants Kubernetes dans la documentation Kubernetes.

Serveur d'API (api)

Le serveur d'API de votre cluster est le composant de plan de contrôle qui expose l'API Kubernetes. Si vous activez les journaux du serveur d'API au moment du lancement du cluster, ou peu après, les journaux incluent les indicateurs qui ont été utilisés pour démarrer le serveur d'API. Pour plus d'informations, consultez kube-apiserver et la stratégie d'audit dans la documentation Kubernetes.

Audit (audit)

Les journaux d'audit Kubernetes fournissent un enregistrement des différents utilisateurs, administrateurs ou composants système qui affectent votre cluster. Pour plus d'informations, consultez la section Audit dans la documentation Kubernetes.

Authentificateur (authenticator)

Les journaux d'authentification sont propres à Amazon EKS. Ces journaux représentent le composant de plan de contrôle utilisé par Amazon EKS pour l'authentification du contrôle d'accès basé sur les rôles (RBAC) de Kubernetes à l'aide es informations d'identification IAM. Pour plus d'informations, consultez Gestion du cluster.

Gestionnaire de contrôleur (controllerManager)

Le gestionnaire de contrôleur gère les boucles de contrôle de base qui sont fournies avec Kubernetes. Pour plus d'informations, consultez la section kube-controller-managerdans la documentation Kubernetes.

Planificateur (scheduler)

Le composant planificateur gère quand et où les Pods s'exécutent dans votre cluster. Pour plus d'informations, consultez kube-scheduler dans la documentation Kubernetes.

Activation et désactivation des journaux de plan de contrôle

Par défaut, les journaux du plan de contrôle du cluster ne sont pas envoyés à CloudWatch Logs. Vous devez activer chaque type de journal individuellement pour envoyer des journaux pour votre cluster. CloudWatch Les taux d'ingestion des journaux, de stockage des archives et d'analyse des données s'appliquent aux journaux du plan de contrôle activés. Pour plus d'informations, consultez CloudWatch les tarifs.

Pour mettre à jour la configuration de la journalisation du plan de contrôle, Amazon EKS a besoin d'un maximum de cinq adresses IP disponibles dans chaque sous-réseau. Lorsque vous activez un type de journal, les journaux sont envoyés avec un niveau de détail de journal 2.

AWS Management Console
Pour activer ou désactiver des journaux de plan de contrôle à l'aide de l'AWS Management Console
  1. Ouvrez la console Amazon EKS à l'adresse https://console.aws.amazon.com/eks/home#/clusters.

  2. Choisissez le nom du cluster pour afficher les informations le concernant.

  3. Sélectionnez l’onglet Observabilité.

  4. Dans la section Journalisation du plan de contrôle, sélectionnez Gérer la journalisation.

  5. Pour chaque type de journal, choisissez si celui-ci doit être activé ou désactivé. Par défaut, chaque type de journal est désactivé.

  6. Choisissez Enregistrer les modifications pour terminer.

AWS CLI
Pour activer ou désactiver des journaux de plan de contrôle à l'aide de l'AWS CLI
  1. Vous pouvez vérifier la version de votre AWS CLI à l'aide de la commande suivante.

    aws --version

    Si la version de votre AWS CLI est inférieure à 1.16.139, vous devez d'abord la mettre à jour vers la version la plus récente. Pour installer ou mettre à niveau l'interface AWS CLI, voir Installation de AWS Command Line Interface dans le Guide de l'utilisateur AWS Command Line Interface.

  2. Mettez à jour la configuration d'exportation de journal de plan de contrôle de votre cluster à l'aide de la commande AWS CLI suivante. Remplacez my-cluster par le nom de votre cluster et spécifiez les valeurs d'accès au point de terminaison souhaitées.

    Note

    La commande suivante envoie tous les types de journaux disponibles à CloudWatch Logs.

    aws eks update-cluster-config \ --region region-code \ --name my-cluster \ --logging '{"clusterLogging":[{"types":["api","audit","authenticator","controllerManager","scheduler"],"enabled":true}]}'

    L'exemple qui suit illustre un résultat.

    {
        "update": {
            "id": "883405c8-65c6-4758-8cee-2a7c1340a6d9",
            "status": "InProgress",
            "type": "LoggingUpdate",
            "params": [
                {
                    "type": "ClusterLogging",
                    "value": "{\"clusterLogging\":[{\"types\":[\"api\",\"audit\",\"authenticator\",\"controllerManager\",\"scheduler\"],\"enabled\":true}]}"
                }
            ],
            "createdAt": 1553271814.684,
            "errors": []
        }
    }
  3. Surveillez l'état de la mise à jour de votre configuration de journal avec la commande suivante, en indiquant le nom de votre cluster et l'ID de mise à jour qui ont été renvoyés par la commande précédente. Votre mise à jour est terminée lorsqu'elle affiche l'état Successful.

    aws eks describe-update \ --region region-code\ --name my-cluster \ --update-id 883405c8-65c6-4758-8cee-2a7c1340a6d9

    L'exemple qui suit illustre un résultat.

    {
        "update": {
            "id": "883405c8-65c6-4758-8cee-2a7c1340a6d9",
            "status": "Successful",
            "type": "LoggingUpdate",
            "params": [
                {
                    "type": "ClusterLogging",
                    "value": "{\"clusterLogging\":[{\"types\":[\"api\",\"audit\",\"authenticator\",\"controllerManager\",\"scheduler\"],\"enabled\":true}]}"
                }
            ],
            "createdAt": 1553271814.684,
            "errors": []
        }
    }

Affichage des journaux de plan de contrôle de cluster

Une fois que vous avez activé l'un des types de journaux du plan de contrôle pour votre cluster Amazon EKS, vous pouvez les consulter sur la CloudWatch console.

Pour en savoir plus sur l'affichage, l'analyse et la gestion des connexions CloudWatch, consultez le guide de l'utilisateur Amazon CloudWatch Logs.

Pour consulter les journaux du plan de contrôle de votre cluster sur la CloudWatch console
  1. Ouvrez la CloudWatch console. Ce lien ouvre la console et affiche vos groupes de journaux disponibles actuels et les filtre avec le préfixe /aws/eks.

  2. Choisissez le cluster pour lequel vous souhaitez afficher les journaux. Le format du nom de groupe de journaux est /aws/eks/my-cluster/cluster.

  3. Choisissez le flux de journal à afficher. La liste suivante décrit le format de nom de flux du journal pour chaque type de journal.

    Note

    À mesure que les données de flux de journal augmentent, les noms de flux de journal font l'objet d'une rotation. Lorsqu'il existe plusieurs flux de journaux pour un type de journal particulier, vous pouvez afficher le dernier flux en recherchant son nom avec l'heure du dernier événement (Last event time).

    • Journaux de composant de serveur d'API Kubernetes (api) : kube-apiserver-1234567890abcdef01234567890abcde

    • Audit (audit) : kube-apiserver-audit-1234567890abcdef01234567890abcde

    • Authentificateur (authenticator) : authenticator-1234567890abcdef01234567890abcde

    • Gestionnaire de contrôleur (controllerManager) : kube-controller-manager-1234567890abcdef01234567890abcde

    • Planificateur (scheduler) : kube-scheduler-1234567890abcdef01234567890abcde

  4. Parcourez les événements du flux de journaux.

    Par exemple, vous devez voir les indicateurs de serveur d'API initiaux correspondant au cluster lorsque vous consultez le haut de kube-apiserver-1234567890abcdef01234567890abcde.

    Note

    Si vous ne voyez pas les journaux du serveur d'API au début du flux de journaux, il est probable que le fichier journal du serveur d'API a été l'objet d'une rotation sur le serveur avant d'activer la journalisation du serveur API sur le serveur. Les fichiers journaux qui font l'objet d'une rotation avant que la journalisation du serveur d'API ne soit activée ne peuvent pas être exportés vers CloudWatch.

    Toutefois, vous pouvez créer un nouveau cluster avec la même version de Kubernetes et activer la journalisation du serveur API lorsque vous créez le cluster. Les clusters avec la même version de plate-forme ont les mêmes indicateurs activés, donc vos indicateurs doivent correspondre aux indicateurs du nouveau cluster. Lorsque vous avez fini de visualiser les drapeaux du nouveau cluster dans CloudWatch, vous pouvez supprimer le nouveau cluster.