Points de contrôle
Import infrastructure
/ 20
Configure a remote backend
/ 10
Modify and update infrastructure
/ 20
Destroy resources
/ 10
Use a Module from the Registry
/ 20
Configure a firewall
/ 20
Créer une infrastructure avec Terraform sur Google Cloud : atelier challenge
- GSP345
- Présentation
- Préparation
- Scénario du challenge
- Tâche 1 : Créer les fichiers de configuration
- Tâche 2 : Importer l'infrastructure
- Tâche 3 : Configurer un backend distant
- Tâche 4 : Modifier et mettre à jour l'infrastructure
- Tâche 5 : Détruire des ressources
- Tâche 6 : Utiliser un module du registre
- Tâche 7 : Configurer un pare-feu
- Test de connectivité (facultatif)
- Félicitations !
GSP345
Présentation
Dans un atelier challenge, vous devez suivre un scénario et effectuer une série de tâches. Aucune instruction détaillée n'est fournie : vous devez utiliser les compétences acquises au cours des ateliers du cours correspondant pour déterminer comment procéder par vous-même. Vous saurez si vous avez exécuté correctement les différentes tâches grâce au score calculé automatiquement (affiché sur cette page).
Lorsque vous participez à un atelier challenge, vous n'étudiez pas de nouveaux concepts Google Cloud. Vous allez approfondir les compétences précédemment acquises. Par exemple, vous devrez modifier les valeurs par défaut ou encore examiner des messages d'erreur pour corriger vous-même les problèmes.
Pour atteindre le score de 100 %, vous devez mener à bien l'ensemble des tâches dans le délai imparti.
Cet atelier est recommandé aux participants inscrits au cours Build Infrastructure with Terraform on Google Cloud. Êtes-vous prêt pour le challenge ?
Compétences évaluées :
- Importer une infrastructure existante dans votre configuration Terraform
- Créer et référencer vos propres modules Terraform
- Ajouter un backend distant à votre configuration
- Utiliser et implémenter un module du registre Terraform
- Reprovisionner, détruire et mettre à jour l'infrastructure
- Tester la connectivité entre les ressources que vous avez créées
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 vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour 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) ;
- vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Scénario du challenge
Vous êtes ingénieur cloud stagiaire dans une jeune start-up. Pour votre premier projet, votre nouveau patron vous a demandé de créer une infrastructure de façon rapide et efficace. Il vous a également chargé de concevoir un mécanisme permettant de suivre l'infrastructure pour pouvoir la consulter et la modifier par la suite. On vous a indiqué d'utiliser Terraform pour réaliser ce projet.
Pour ce projet, vous allez utiliser Terraform afin de créer, déployer et suivre l'infrastructure sur Google Cloud, le fournisseur cloud de la start-up. Vous devrez également importer des instances mal gérées dans votre configuration et les corriger.
Dans cet atelier, vous utiliserez Terraform pour importer et créer plusieurs instances de VM, un réseau VPC avec deux sous-réseaux, ainsi qu'une règle de pare-feu permettant au VPC d'autoriser les connexions entre les deux instances. Vous allez également créer un bucket Cloud Storage pour héberger votre backend distant.
plan
et apply
pour bien valider votre travail. Comme nous allons modifier de nombreux fichiers Terraform dans cet atelier, vous devez vous assurer d'utiliser les bons chemins d'accès aux fichiers et de maintenir l'indentation appropriée. Tâche 1 : Créer les fichiers de configuration
- Dans Cloud Shell, créez vos fichiers de configuration Terraform et une structure de répertoire semblable à la suivante :
- Remplissez les fichiers
variables.tf
qui se trouvent dans le répertoire racine et dans les modules. Ajoutez trois variables à chaque fichier :region
,zone
etproject_id
. Utilisez respectivement, et votre ID de projet Google Cloud comme valeurs par défaut.
-
Ajoutez le bloc Terraform et le fournisseur Google au fichier
main.tf
. Vérifiez que l'argument zone est bien ajouté avec les arguments project et region dans le bloc concernant le fournisseur Google. -
Initialisez Terraform.
Tâche 2 : Importer l'infrastructure
- Dans la console Google Cloud, accédez au menu de navigation, cliquez sur Compute Engine > Instances de VM. Deux instances nommées tf-instance-1 et tf-instance-2 ont déjà été créées pour vous.
- Importez les instances existantes dans le module instances. Pour ce faire, procédez comme suit :
- Tout d'abord, ajoutez la référence du module au fichier
main.tf
, puis réinitialisez Terraform. - Écrivez ensuite les configurations de ressources dans le fichier
instances.tf
pour les faire correspondre aux instances préexistantes.- Nommez vos instances
tf-instance-1
ettf-instance-2
. - Dans cet atelier, la configuration de ressources doit être minimale. Pour ce faire, vous devrez seulement inclure les arguments supplémentaires suivants à votre configuration :
machine_type
,boot_disk
,network_interface
,metadata_startup_script
etallow_stopping_for_update
. Utilisez la configuration suivante pour les deux derniers arguments, afin de ne pas avoir à la recréer :
metadata_startup_script = <<-EOT #!/bin/bash EOT allow_stopping_for_update = true - Nommez vos instances
- Une fois que vous avez écrit les configurations de ressources dans le module, utilisez la commande
terraform import
pour les importer dans votre module instances.
- Appliquez les modifications. Remarque : comme vous n'avez pas renseigné tous les arguments dans la configuration entière, la commande
apply
va mettre à jour les instances en place. Cela suffira pour cet atelier, mais dans un environnement de production, veillez à renseigner correctement tous les arguments avant l'importation.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 3 : Configurer un backend distant
-
Créez une ressource de bucket Cloud Storage à l'intérieur du module
storage
. Utilisezcomme nom de bucket. Pour les autres arguments, vous pouvez simplement utiliser les valeurs suivantes : location = "US"
force_destroy = true
uniform_bucket_level_access = true
outputs.tf
. -
Ajoutez la référence du module au fichier
main.tf
. Initialisez le module et exécutez la commandeapply
pour appliquer les modifications et ainsi créer le bucket à l'aide de Terraform. -
Configurez ce bucket de stockage en tant que backend distant dans le fichier
main.tf
. Veillez à utiliser le préfixeterraform/state
pour qu'il puisse être évalué. -
Si vous avez écrit la configuration correctement, lors de l'exécution d'
init
, Terraform vous demandera si vous souhaitez copier les données d'état existantes dans le nouveau backend. Saisissezyes
à l'invite.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 4 : Modifier et mettre à jour l'infrastructure
-
Accédez au module instances et modifiez la ressource tf-instance-1 pour utiliser un type de machine
e2-standard-2
. -
Modifiez la ressource tf-instance-2 pour utiliser un type de machine
e2-standard-2
. -
Ajoutez une troisième ressource d'instance et nommez-la
. Pour cette troisième ressource, utilisez un type de machine e2-standard-2
. Assurez-vous de basculer le type de machine sure2-standard-2
pour les trois instances. -
Initialisez Terraform et exécutez la commande
apply
pour appliquer vos modifications.
outputs.tf
du module. Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 5 : Détruire des ressources
- Détruisez la troisième instance
en supprimant la ressource du fichier de configuration. Après la suppression, initialisez Terraform et exécutez la commande apply
pour appliquer les modifications.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 6 : Utiliser un module du registre
-
Dans le registre Terraform, accédez au module Network.
-
Ajoutez ce module à votre fichier
main.tf
. Utilisez les configurations suivantes :
- Utilisez la version
6.0.0
(les autres versions peuvent entraîner des erreurs de compatibilité). - Nommez le VPC
et utilisez un mode de routage mondial. - Spécifiez 2 sous-réseaux dans la région
, et nommez-les subnet-01
etsubnet-02
. Vous avez simplement besoin de définir les arguments de sous-réseau suivants : Nom, Adresse IP et Région. - Utilisez l'adresse IP
10.10.10.0/24
poursubnet-01
et10.10.20.0/24
poursubnet-02
. - Vous n'avez pas besoin d'associer de plages ou de routes secondaires à ce VPC. Vous pouvez donc les omettre dans la configuration.
-
Une fois que vous avez écrit la configuration du module, initialisez Terraform et exécutez la commande
apply
pour créer les réseaux. -
Accédez ensuite au fichier
instances.tf
et modifiez les ressources de configuration afin de connecter tf-instance-1 àsubnet-01
et tf-instance-2 àsubnet-02
.
, puis ajouter l'argument subnetwork avec le sous-réseau adapté pour chaque instance.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 7 : Configurer un pare-feu
- Créez une ressource de règle de pare-feu dans le fichier
main.tf
et nommez-la tf-firewall.- Cette règle de pare-feu doit permettre au réseau
d'autoriser les connexions entrantes pour toutes les plages d'adresses IP ( 0.0.0.0/0
) sur le port TCP 80. - Veillez à définir l'argument
source_ranges
sur la plage d'adresses IP appropriée (0.0.0.0/0
). - Initialisez Terraform et exécutez la commande
apply
pour appliquer vos modifications.
- Cette règle de pare-feu doit permettre au réseau
network
requis, vous pouvez inspecter l'état et rechercher l'ID ou le self_link de la ressource google_compute_network
que vous avez créée. Cet argument est au format projects/PROJECT_ID/global/networks/
.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Test de connectivité (facultatif)
Une fois que vous avez créé une règle de pare-feu pour autoriser les connexions internes sur le VPC, vous pouvez effectuer un test de connectivité réseau, si vous le souhaitez.
-
Vérifiez que vos deux VM sont en cours d'exécution.
-
Accédez à Informations sur le réseau > Tests de connectivité. Exécutez un test de connectivité sur les deux VM pour vérifier qu'elles sont accessibles. Vous venez de valider la connectivité entre les instances.
Vos paramètres de configuration doivent ressembler à ceux-ci :
Félicitations !
Si vous avez réussi à importer, créer, modifier et configurer l'architecture dans le temps imparti, vous avez démontré votre maîtrise de Terraform. Dans cet atelier, vous avez commencé par importer deux VM pré-configurées dans Terraform et par créer un bucket Cloud Storage pour configurer votre backend. Vous avez ensuite ajouté une autre instance, avant de vous entraîner à modifier et mettre à jour les configurations de ressources dans vos modules. Enfin, vous avez utilisé un module du registre Terraform pour créer un VPC avec deux sous-réseaux, vous y avez connecté les instances et vous avez créé une règle de pare-feu pour autoriser les connexions entre elles.
Gagnez un badge de compétence
Cet atelier d'auto-formation fait partie du cours Build Infrastructure with Terraform on Google Cloud. Si vous terminez ce cours, vous obtiendrez le badge de compétence ci-dessus attestant de votre réussite. Ajoutez votre badge à votre CV et partagez-le sur les réseaux sociaux en utilisant le hashtag #GoogleCloudBadge.
Étapes suivantes
Maintenant que vous avez démontré votre maîtrise de Terraform, vous pouvez vous inscrire à la certification HashiCorp Infrastructure Automation. La certification Terraform Associate s'adresse aux ingénieurs cloud spécialisés dans les opérations, l'assistance technique ou le développement qui maîtrisent les concepts et compétences de base liés à la plate-forme Open Source Terraform de HashiCorp. Les candidats ayant une expérience professionnelle de Terraform en production seront mieux préparés à l'examen, mais remplir les objectifs de l'examen dans un environnement de démonstration personnel peut également suffire. Si vous voulez passer au niveau supérieur et démontrer vos compétences en automatisation d'infrastructures, nous vous recommandons de consulter le guide d'étude et le guide de révision de l'examen, puis de vous inscrire à l'examen quand vous serez prêt. Bonne chance !
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 : 22 mars 2024
Dernier test de l'atelier : 22 mars 2024
Copyright 2024 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.