GSP015
Présentation
Google Kubernetes Engine facilite l'exécution de conteneurs Docker dans le cloud. Google Kubernetes Engine utilise Kubernetes, un ordonnanceur de conteneurs Open Source, pour s'assurer que votre cluster fonctionne exactement comme vous le souhaitez à tout moment.
Dans cet atelier, vous allez apprendre à lancer un conteneur et ses instances répliquées sur Google Kubernetes Engine.
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
- Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. 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.
- Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.
Démarrer l'atelier et se connecter à la console Google Cloud
-
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement.
Sur la droite, vous trouverez le panneau Préparation et accès à l'atelier, qui contient les éléments suivants :
- Le bouton Ouvrir la console Google Cloud
- Les identifiants temporaires (nom d'utilisateur et mot de passe) que vous devez utiliser pour cet atelier
- Des informations complémentaires vous permettant d'effectuer l'atelier, si nécessaire
Notez que le minuteur de l'atelier se trouve en haut de la page et indique le temps restant.
-
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans une fenêtre en navigation privée si vous utilisez Chrome).
L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
-
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
{{{user_0.username | "Username"}}}
Vous trouverez également le nom d'utilisateur dans le panneau Préparation et accès à l'atelier.
-
Cliquez sur Suivant.
-
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
{{{user_0.password | "Password"}}}
Vous trouverez également le mot de passe dans le panneau Préparation et accès à l'atelier.
-
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. N'utilisez pas les identifiants de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires pourront vous être facturés.
-
Accédez aux pages suivantes :
- Acceptez les conditions d'utilisation.
- N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
- Ne vous inscrivez pas à des essais sans frais.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche.
Activer Cloud Shell
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. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.
-
Cliquez sur Activer Cloud Shell
en haut de la console Google Cloud.
-
Passez les fenêtres suivantes :
- Accédez à la fenêtre d'informations de Cloud Shell.
- Autorisez Cloud Shell à utiliser vos identifiants pour effectuer des appels d'API Google Cloud.
Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET : . Le résultat contient une ligne qui déclare l'ID_PROJET pour cette session :
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
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.
- (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
- Cliquez sur Autoriser.
Résultat :
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.
Tâche 1 : Créer un cluster
Dans cette section, vous allez créer un cluster Google Kubernetes Engine.
Définir la zone de calcul
Cloud Shell est un terminal basé sur un navigateur. Il permet d'accéder à une machine virtuelle sur laquelle sont installés les outils Google Cloud et d'autres outils (comme des éditeurs et des compilateurs), qui sont utiles pour développer ou déboguer votre application cloud.
Vous allez utiliser la commande gcloud pour créer le cluster. Commencez par définir la zone de calcul afin que les machines virtuelles de votre cluster soient créées dans la bonne région. Pour cela, utilisez la commande gcloud config set compute/zone.
- Saisissez la commande suivante dans Cloud Shell :
gcloud config set compute/zone {{{project_0.default_zone|ZONE}}}
Concepts de régions et de zones
Certaines ressources Compute Engine sont hébergées dans des régions ou des zones. Une région est un emplacement géographique spécifique où vous pouvez exécuter vos ressources. Chaque région se compose d'une ou plusieurs zones. Par exemple, la région "us-central1" est une région située au centre des États-Unis qui comprend les zones us-central1-a, us-central1-b, us-central1-c et us-central1-f.
| Régions |
Zones |
| Ouest des États-Unis |
us-west1-a, us-west1-b |
| Centre des États-Unis |
us-central1-a, us-central1-b, us-central1-d, us-central1-f |
| Est des États-Unis |
us-east1-b, us-east1-c, us-east1-d |
| Europe de l'Ouest |
europe-west1-b, europe-west1-c, europe-west1-d |
| Asie orientale |
asia-east1-a, asia-east1-b, asia-east1-c |
Les ressources contenues dans des zones sont des ressources dites "zonales". Par exemple, les instances de machines virtuelles et les disques persistants sont deux types de ressources situées dans des zones. Pour associer un disque persistant à une instance de machine virtuelle, vous devez placer ces deux ressources dans la même zone. Si vous souhaitez attribuer une adresse IP statique à une instance, l'instance doit se trouver dans la même région que l'adresse IP statique.
Pour en savoir plus et accéder à une liste complète des régions et zones disponibles sur la page Compute Engine, accédez à la documentation Régions et zones.
Créer un cluster
- Créez un cluster de conteneurs à l'aide de la commande
gcloud suivante :
gcloud container clusters create hello-world
Cette commande crée un cluster nommé hello-world avec trois nœuds (VM). Vous pouvez configurer des flags supplémentaires pour cette commande afin de modifier le nombre de nœuds, les autorisations par défaut et d'autres variables. Pour en savoir plus, consultez la documentation de référence sur la commande gcloud container clusters create.
Remarque : En cas d'erreur lorsque vous exécutez la commande gcloud container clusters create, assurez-vous d'avoir activé les API Google Kubernetes Engine et Compute Engine.
Le lancement du cluster peut prendre quelques minutes. Une fois le lancement terminé, le résultat dans Cloud Shell doit ressembler à ceci :
NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS
hello-world {{{project_0.default_zone|ZONE}}} 1.12.7-gke.10 35.239.64.154 e2-medium 1.12.7-gke.10 3 RUNNING
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.
Créer un cluster Kubernetes
Tâche 2 : Créer et publier l'application Hello World
Maintenant, créez et publiez un conteneur contenant le code. Vous utiliserez Docker pour créer le conteneur et Google Artifact Registry pour le publier de manière sécurisée.
Définir l'ID du projet
Vous allez utiliser l'ID du projet dans de nombreuses commandes de cet atelier. Pour simplifier les choses, cet ID est stocké dans une variable d'environnement de Cloud Shell. Vous pouvez le voir ici :
echo $DEVSHELL_PROJECT_ID
Tâche 3 : Obtenir l'exemple de code
- Exécutez la commande suivante pour cloner les exemples :
git clone https://github.com/GoogleCloudPlatform/kubernetes-engine-samples
- Changez de répertoire :
cd kubernetes-engine-samples/quickstarts/hello-app
Créer le conteneur
Les conteneurs Docker sont créés à l'aide d'un Dockerfile. L'exemple de code fournit un Dockerfile de base que nous pouvons utiliser.
cat Dockerfile
Voici le contenu du fichier :
...
FROM golang:1.26.2 AS builder
WORKDIR /app
RUN go mod init hello-app
COPY *.go ./
RUN CGO_ENABLED=0 GOOS=linux go build -o /hello-app
FROM gcr.io/distroless/static-debian12
WORKDIR /
COPY --from=builder /hello-app /hello-app
ENV PORT=8080
USER nonroot:nonroot
CMD ["/hello-app"]
- Pour créer le conteneur, exécutez la commande suivante :
docker build -t gcr.io/$DEVSHELL_PROJECT_ID/hello-app:1.0 .
Cette commande crée une image de conteneur Docker stockée localement.
Publier le conteneur
Pour que Kubernetes puisse accéder à votre image, vous devez la stocker dans Artifact Registry.
- Exécutez la commande suivante pour publier votre image de conteneur :
gcloud docker -- push gcr.io/$DEVSHELL_PROJECT_ID/hello-app:1.0
Tâche 4 : Déployer l'application Hello World
Maintenant que le cluster est en cours d'exécution et que notre application est créée, nous pouvons la déployer.
Créer le déploiement
Le déploiement est un composant essentiel de Kubernetes qui s'assure que votre application est toujours en cours d'exécution. Le déploiement planifie et gère un ensemble de pods sur le cluster. Un pod est un groupe d'un ou de plusieurs conteneurs qui "voyagent ensemble". Cela peut signifier qu'ils sont administrés ensemble ou qu'ils ont les mêmes exigences réseau. Dans cet atelier, votre pod ne contient qu'un seul conteneur.
Normalement, vous créez un fichier YAML contenant la configuration du déploiement. Pour cet atelier, nous allons ignorer cette étape et créer directement le déploiement sur la ligne de commande.
- Créez le pod à l'aide de
kubectl :
kubectl create deployment hello-app --image=gcr.io/$DEVSHELL_PROJECT_ID/hello-app:1.0
Remarque : Vous pouvez ignorer en toute sécurité les avertissements d'abandon de commandes.
Cette commande démarre une copie de l'image Docker sur l'un des nœuds du cluster.
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.
Créer et déployer l'application Hello World (hello-app)
- Exécutez la commande suivante pour afficher le déploiement que vous avez créé à l'aide de
kubectl :
kubectl get deployments
Le résultat doit être semblable à celui-ci :
NAME READY UP-TO-DATE AVAILABLE AGE
hello-app 1/1 1 1 30s
- Vous pouvez également voir le pod en cours d'exécution à l'aide de
kubectl :
kubectl get pods
Le résultat doit être semblable à celui-ci :
NAME READY STATUS RESTARTS AGE
hello-app-3375482827-7hs3q 1/1 Running 0 1m
Autoriser le trafic externe
Par défaut, un pod n'est accessible qu'aux autres machines du cluster. Pour utiliser le conteneur d'application créé, vous devez l'exposer en tant que service.
Normalement, vous créez un fichier YAML contenant la configuration du service. Pour cet atelier, nous allons ignorer cette étape et créer directement le déploiement sur la ligne de commande.
- Exécutez la commande suivante pour exposer le déploiement avec la commande
kubectl expose :
kubectl expose deployment hello-app --name=hello-app --type=LoadBalancer --port=80 --target-port=8080
La commande kubectl expose crée un service, les règles de transfert pour l'équilibreur de charge et les règles de pare-feu qui autorisent l'envoi de trafic externe au pod. Le flag --type=LoadBalancer crée un équilibreur de charge réseau Google Cloud qui accepte le trafic externe.
- Pour obtenir l'adresse IP de votre service, exécutez la commande suivante :
kubectl get svc hello-app
Le résultat doit être semblable à celui-ci :
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
hello-app LoadBalancer 10.3.247.85 104.198.151.208 80/TCP 8m
Remarque : L'adresse External-IP peut mettre une minute à s'afficher. Si <pending> s'affiche pour l'adresse External-IP, patientez 30 secondes et réessayez.
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.
Autoriser le trafic externe vers le déploiement hello-app
Vérifier le déploiement
Ouvrez une nouvelle fenêtre ou un nouvel onglet de navigateur, puis accédez à l'adresse IP externe de l'étape précédente. L'exemple de code devrait s'exécuter.

Tâche 5 : Tester vos connaissances
Voici quelques questions à choix multiples visant à consolider vos acquis sur les concepts abordés lors de cet atelier. Répondez-y du mieux que vous le pouvez.
Félicitations !
Avec Google Kubernetes Engine, vous disposez d'une solution efficace et flexible pour exécuter des conteneurs sur Google Cloud. Kubernetes peut également être utilisé sur votre propre matériel ou avec d'autres fournisseurs de services cloud.
Dans cet atelier, nous n'avons utilisé qu'un seul conteneur, mais il est facile de configurer des environnements à plusieurs conteneurs, ou plusieurs instances d'un même conteneur.
Sujets abordés
- Google Kubernetes Engine
- Créer et lancer une application conteneurisée simple sur Google Kubernetes Engine
Atelier suivant
Essayez un autre atelier, par exemple :
Étapes suivantes et informations supplémentaires
Formations et certifications Google Cloud
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 11 décembre 2024
Dernier test de l'atelier : 11 décembre 2024
Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.