Mettez en pratique vos compétences dans la console Google Cloud
Points de contrôle
Configure Liveness Probes
Vérifier ma progression
/ 50
Configure Readiness Probes
Vérifier ma progression
/ 50
Instructions et exigences de configuration de l'atelier
Protégez votre compte et votre progression. Utilisez toujours une fenêtre de navigation privée et les identifiants de l'atelier pour exécuter cet atelier.
Configurer des vérifications d'activité et d'aptitude
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.
Présentation
Dans cet atelier, vous allez configurer et tester des vérifications d'activité et d'aptitude Kubernetes pour des conteneurs.
Objectifs
Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :
Configurer et tester une vérification d'activité
Configurer et tester une vérification d'aptitude
Mettre en place l'atelier
Accéder à Qwiklabs
Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.
Connectez-vous à Qwiklabs dans une fenêtre de navigation privée.
Vérifiez le temps imparti pour l'atelier (par exemple : 01:15:00) : vous devez pouvoir le terminer dans ce délai.
Une fois l'atelier lancé, vous ne pouvez pas le mettre en pause. Si nécessaire, vous pourrez le redémarrer, mais vous devrez tout reprendre depuis le début.
Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.
Notez vos identifiants pour l'atelier (Nom d'utilisateur et Mot de passe). Ils vous serviront à vous connecter à Google Cloud Console.
Cliquez sur Ouvrir la console Google.
Cliquez sur Utiliser un autre compte, puis copiez-collez les identifiants de cet atelier lorsque vous y êtes invité.
Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Une fois la connexion initiale effectuée, le tableau de bord du projet s'affiche.
Activer Google Cloud Shell
Google Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud.
Google Cloud Shell vous permet d'accéder à vos ressources Google Cloud grâce à une ligne de commande.
Dans la barre d'outils située en haut à droite dans la console Cloud, cliquez sur le bouton "Ouvrir Cloud Shell".
Cliquez sur Continuer.
Le provisionnement et la connexion à l'environnement prennent quelques instants. Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Par exemple :
gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project =
Exemple de résultat :
[core]
project = qwiklabs-gcp-44776a13dea667a6
Remarque : Pour consulter la documentation complète sur gcloud, accédez au guide de présentation de la gcloud CLI.
Tâche 1 : Se connecter au cluster GKE de l'atelier
Dans cette tâche, vous allez vous connecter au cluster GKE de l'atelier et cloner le dépôt dans l'environnement Cloud Shell de l'atelier.
Se connecter au cluster GKE de l'atelier
Dans Cloud Shell, définissez les variables d'environnement correspondant à la zone et au nom du cluster en saisissant la commande suivante :
Passez au répertoire qui contient les exemples de fichiers de l'atelier :
cd ~/ak8s/Probes/
Tâche 2 : Configurer des vérifications d'activité
Configurer une vérification d'activité
Dans cette tâche, vous allez déployer une vérification d'activité pour détecter les applications qui sont passées d'un bon état de fonctionnement à un état défectueux. Il arrive qu'une application soit temporairement incapable de gérer le trafic. Elle peut par exemple avoir besoin de charger un volume important de données ou de fichiers de configuration pour démarrer.
Dans cette situation, il ne faut pas fermer l'application de force, ni lui envoyer de demandes supplémentaires. Les vérifications d'aptitude de Kubernetes permettent de détecter et de corriger ces situations. Lorsque les conteneurs d'un pod signalent qu'ils ne sont pas prêts à recevoir du trafic, les services Kubernetes s'abstiennent de leur en envoyer.
Les vérifications d'aptitude fonctionnent sur le même modèle que les vérifications d'activité. Seule différence : vous devez utiliser le champ readinessProbe plutôt que livenessProbe.
Le fichier de définition du pod exec-liveness.yaml qui vous a été fourni définit un conteneur simple (liveness) exécutant Busybox. Il définit également une vérification d'activité utilisant la commande cat sur le fichier /tmp/healthy à l'intérieur du conteneur pour tester l'activité toutes les cinq secondes.
Le script de démarrage du conteneur liveness crée un fichier /tmp/healthy au démarrage et le supprime après 30 secondes pour simuler une perturbation que la vérification d'activité est capable d'identifier.
Dans Cloud Shell, exécutez la commande suivante pour créer le pod :
kubectl create -f exec-liveness.yaml
Affichez l'historique des événements du pod dans les 30 secondes suivant le démarrage :
kubectl describe pod liveness-exec
Le résultat indique que la vérification d'activité n'a pas encore échoué.
Exemple de résultat condensé :
Type: Secret (a volume populated by a Secret)
SecretName: default-token-wq52t
Optional: false
QoS Class: Burstable
Node-Selectors:
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events:
Type Reason Age ... Message
---- ------ ---- ... -------
Normal Scheduled 11s ... Successfully assigned liveness-e ...
Normal Su...ntVolume 10s ... MountVolume.SetUp succeeded for ...
Normal Pulling 10s ... pulling image "k8s.gcr.io/busybox"
Normal Pulled 9s ... Successfully pulled image "k8s.g ...
Normal Created 9s ... Created container
Normal Started 9s ... Started container
L'exemple de résultat présenté a été condensé pour une meilleure visibilité, mais le véritable résultat sera beaucoup plus détaillé.
35 secondes après le démarrage, consultez à nouveau l'historique des événements du pod :
kubectl describe pod liveness-exec
À la fin du résultat, vous pouvez voir des messages indiquant que les vérifications d'activité ont échoué et que les conteneurs ont été supprimés et recréés.
Exemple de résultat condensé :
Type: Secret (a volume populated by a Secret)
SecretName: default-token-wq52t
Optional: false
QoS Class: Burstable
Node-Selectors:
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events:
Type Reason Age ... Message
---- ------ ---- ... -------
Normal Scheduled 2m ... Successfully assigned liveness-e ...
Normal Su...ntVolume 2m ... MountVolume.SetUp succeeded for ...
Normal Pulling 49s ... pulling image "k8s.gcr.io/busybox"
Normal Pulled 49s ... Successfully pulled image "k8s.g ...
Normal Created 49s ... Created container
Normal Started 49s ... Started container
Normal Killing 49s ... Killing container with
id docker://liveness:Container failed liveness probe..
Container will be killed and recreated.
Warning Unhealthy 5s ... Liveness probe failed:
cat: can't open '/tmp/healthy': No such file or directory
Attendez 60 secondes de plus, puis vérifiez que le conteneur a bien été redémarré.
kubectl get pod liveness-exec
Le résultat montre que le nombre de RESTARTS a augmenté suite à l'échec détecté par la vérification d'activité :
Exemple de résultat :
NAME READY STATUS RESTARTS AGE
liveness-exec 1/1 Running 2 4m
Supprimez le pod de démonstration de la vérification d'activité :
kubectl delete pod liveness-exec
Cliquez sur Vérifier ma progression pour valider l'objectif.
Configurer des vérifications d'activité
Tâche 3 : Configurer des vérifications d'aptitude
Bien qu'un pod puisse démarrer et être considéré comme opérationnel selon la vérification d'activité, il est possible qu'il ne soit pas encore prêt à recevoir du trafic immédiatement. Cela est courant pour les déploiements servant de backend à un service tel qu'un équilibreur de charge. Une vérification d'aptitude permet de déterminer à quel moment un pod et ses conteneurs sont prêts à recevoir du trafic.
Les vérifications d'aptitude fonctionnent sur le même modèle que les vérifications d'activité. La seule différence de configuration est que vous utilisez le champ readinessProbe au lieu du champ livenessProbe. Les vérifications d'aptitude déterminent si un conteneur spécifique est considéré comme apte. Les services les utilisent pour décider s'il est possible d'envoyer du trafic à un conteneur.
Dans cette tâche, un fichier de définition de pod nommé readiness-deployment.yaml vous est fourni. Il génère un pod unique qui servira de serveur Web de test. Celui-ci est associé à un équilibreur de charge.
Une vérification d'aptitude est définie pour le conteneur. Elle utilise la commande cat sur le fichier /tmp/healthz à l'intérieur du conteneur afin de tester l'aptitude toutes les 5 secondes.
Chaque conteneur dispose également d'une vérification d'activité, qui utilise la commande cat sur ce même fichier dans le conteneur afin de tester l'aptitude toutes les 5 secondes. Elle prévoit également un retard de démarrage de 45 secondes pour simuler une application ayant un processus de démarrage complexe dont la stabilisation prend du temps une fois le conteneur démarré.
Une fois que le service commence à gérer le trafic, ce schéma garantit qu'il ne transférera celui-ci qu'aux conteneurs qui sont prêts à le gérer.
Dans Cloud Shell, exécutez la commande suivante pour créer le pod :
kubectl create -f readiness-deployment.yaml
Dans Cloud Shell, vérifiez l'état du service d'équilibrage de charge readiness-demo-svc :
kubectl get service readiness-demo-svc
Saisissez l'adresse IP dans une fenêtre de navigateur. Un message d'erreur vous indique que le site n'est pas accessible.
Vérifiez les événements du pod :
kubectl describe pod readiness-demo-pod
Le résultat indique que la vérification d'aptitude a échoué :
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 2m24s default-scheduler Successfully assigned default/readiness-demo-pod to gke-load-test-default-pool-abd43157-rgg0
Normal Pulling 2m23s kubelet Pulling image "nginx"
Normal Pulled 2m23s kubelet Successfully pulled image "nginx"
Normal Created 2m23s kubelet Created container readiness-demo-pod
Normal Started 2m23s kubelet Started container readiness-demo-pod
Warning Unhealthy 35s (x21 over 2m15s) kubelet Readiness probe failed: cat: /tmp/healthz: No such file or directory
Un échec de la vérification d'aptitude ne déclenche pas le redémarrage du pod, comme c'est le cas lors d'une vérification d'activité.
Utilisez la commande suivante pour générer le fichier que la vérification d'aptitude doit contrôler :
La section Conditions de la description du pod doit maintenant afficher la valeur True (Vrai) pour Ready (Prêt).
kubectl describe pod readiness-demo-pod | grep ^Conditions -A 5
Résultat :
Conditions:
Type Status
Initialized True
Ready True
ContainersReady True
PodScheduled True
À présent, actualisez l'onglet de navigateur pointant vers l'adresse IP externe associée au service readiness-demo-svc. Le message "Welcome to nginx!" (Bienvenue dans nginx !) doit s'afficher correctement.
Définir des vérifications d'aptitude pertinentes pour vos conteneurs d'applications permet de s'assurer que les pods ne reçoivent du trafic que lorsqu'ils sont prêts. Vous pouvez par exemple vérifier si le cache de votre application est chargé au démarrage.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Configurer des vérifications d'aptitude
Surveiller le comportement des vérifications d'activité et d'aptitude
Vous pouvez maintenant vérifier si l'état d'aptitude des pods du déploiement correspond aux points de terminaison qui sont activés pour votre service. Si les pods échouent aux vérifications d'aptitude et d'activité, ils sont marqués comme non prêts. Leurs points de terminaison sont supprimés du service, et la vérification d'activité initie le redémarrage pour récupérer le pod en échec.
Les pods redémarrés ne sont pas immédiatement marqués comme prêts ; ils doivent réussir le test d'aptitude avant que le service ne rajoute le point de terminaison au pool.
Vérifiez à nouveau l'état des pods :
kubectl get pods
Vous verrez que les pods individuels sont marqués comme prêts. Selon le temps, un ou plusieurs d'entre eux peuvent redémarrer, mais cela devrait prendre deux à trois minutes. Les pods répertoriés comme prêts doivent avoir un point de terminaison associé au service.
Pour vérifier que vous pouvez vous connecter à l'application, commencez par interroger l'adresse IP externe à partir des détails du service d'équilibrage de charge et enregistrez-la dans une variable d'environnement :
Dans les minutes à venir, répétez les commandes suivantes toutes les 10 secondes environ pour vérifier l'état du déploiement et envoyer une requête à l'équilibreur de charge :
curl $EXTERNAL_IP
kubectl get pods
Vous devriez continuer à voir des réponses sans échec ni expiration, même si les conteneurs individuels sont redémarrés régulièrement en raison des échecs détectés par les vérifications d'activité. Si les trois conteneurs redémarrent plus ou moins en même temps, certaines requêtes peuvent expirer avant réponse, mais cela devrait arriver rarement.
La combinaison des vérifications d'activité et d'aptitude permet de s'assurer que les systèmes en échec sont redémarrés en toute sécurité tandis que le service transfère uniquement le trafic aux conteneurs identifiés comme capables de répondre.
Terminer l'atelier
Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.
Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.
Le nombre d'étoiles correspond à votre degré de satisfaction :
1 étoile = très insatisfait(e)
2 étoiles = insatisfait(e)
3 étoiles = ni insatisfait(e), ni satisfait(e)
4 étoiles = satisfait(e)
5 étoiles = très satisfait(e)
Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.
Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.
Copyright 2026 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.
Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.
Utilisez la navigation privée
Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
Cliquez sur Ouvrir la console en navigation privée
Connectez-vous à la console
Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.
Ce contenu n'est pas disponible pour le moment
Nous vous préviendrons par e-mail lorsqu'il sera disponible
Parfait !
Nous vous contacterons par e-mail s'il devient disponible
Un atelier à la fois
Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci
Utilisez la navigation privée pour effectuer l'atelier
Le meilleur moyen d'exécuter cet atelier consiste à utiliser une fenêtre de navigation privée. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Architecting with Google Kubernetes Engine : Configurer des vérifications d'activité et d'aptitude
Durée :
15 min de configuration
·
Accessible pendant 60 min
·
Terminé après 60 min