arrow_back

Créer une infrastructure avec Terraform sur Google Cloud : atelier challenge

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Créer une infrastructure avec Terraform sur Google Cloud : atelier challenge

Lab 1 heure 30 minutes universal_currency_alt 5 crédits show_chart Intermédiaire
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP345

Google Cloud – Ateliers adaptés au rythme de chacun

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 de la quête correspondante 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) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

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.

Remarque : À la fin de chaque section, exécutez les commandes planet 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

  1. Dans Cloud Shell, créez vos fichiers de configuration Terraform et une structure de répertoire semblable à la suivante :
main.tf variables.tf modules/ └── instances ├── instances.tf ├── outputs.tf └── variables.tf └── storage ├── storage.tf ├── outputs.tf └── variables.tf
  1. Remplissez les fichiers variables.tf qui se trouvent dans le répertoire racine et dans les modules. Ajoutez trois variables à chaque fichier : region, zone et project_id. Utilisez respectivement , et votre ID de projet Google Cloud comme valeurs par défaut.
Remarque : Utilisez ces variables partout où elles sont pertinentes dans vos configurations de ressources.
  1. 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.

  2. Initialisez Terraform.

Tâche 2 : Importer l'infrastructure

  1. 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.
Remarque : Cliquez sur une des instances pour connaître son ID d'instance, l'image du disque de démarrage et le type de machine. Ces informations sont nécessaires pour écrire correctement les configurations et les importer dans Terraform.
  1. 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 et tf-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 et allow_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
  • 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.
  1. 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. Importer l'infrastructure

Tâche 3 : Configurer un backend distant

  1. Créez une ressource de bucket Cloud Storage à l'intérieur du module storage. Utilisez comme nom de bucket. Pour les autres arguments, vous pouvez simplement utiliser les valeurs suivantes :

    • location = "US"
    • force_destroy = true
    • uniform_bucket_level_access = true
Remarque : Vous pouvez, si vous le souhaitez, ajouter des valeurs de sortie dans le fichier outputs.tf.
  1. Ajoutez la référence du module au fichier main.tf. Initialisez le module et exécutez la commande apply pour appliquer les modifications et ainsi créer le bucket à l'aide de Terraform.

  2. Configurez ce bucket de stockage en tant que backend distant dans le fichier main.tf. Veillez à utiliser le préfixe terraform/state pour qu'il puisse être évalué.

  3. 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. Saisissez yes à l'invite.

Cliquez sur Vérifier ma progression pour valider l'objectif. Configurer un backend distant

Tâche 4 : Modifier et mettre à jour l'infrastructure

  1. Accédez au module instances et modifiez la ressource tf-instance-1 pour utiliser un type de machine e2-standard-2.

  2. Modifiez la ressource tf-instance-2 pour utiliser un type de machine e2-standard-2.

  3. 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 sur e2-standard-2 pour les trois instances.

  4. Initialisez Terraform et exécutez la commande apply pour appliquer vos modifications.

Remarque : Si vous le souhaitez, vous pouvez ajouter des valeurs de sortie de ces ressources dans le fichier outputs.tf du module.

Cliquez sur Vérifier ma progression pour valider l'objectif. Modifier et mettre à jour l'infrastructure

Tâche 5 : Détruire des ressources

  1. 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. Détruire des ressources

Tâche 6 : Utiliser un module du registre

  1. Dans le registre Terraform, accédez au module Network.

  2. 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 et subnet-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 pour subnet-01 et 10.10.20.0/24 pour subnet-02.
  • Vous n'avez pas besoin d'associer de plages ou de routes secondaires à ce VPC. Vous pouvez donc les omettre dans la configuration.
  1. Une fois que vous avez écrit la configuration du module, initialisez Terraform et exécutez la commande apply pour créer les réseaux.

  2. 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.

Remarque : Dans la configuration des instances, vous devrez définir l'argument network sur , puis ajouter l'argument subnetwork avec le sous-réseau adapté pour chaque instance.

Cliquez sur Vérifier ma progression pour valider l'objectif. Utiliser un module du registre

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.
Remarque : Pour récupérer l'argument 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. Configurer un pare-feu

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.

  1. Vérifiez que vos deux VM sont en cours d'exécution.

  2. 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.

Remarque : Vérifiez que l'API Network Management est activée. Si ce n'est pas le cas, cliquez sur Activer.

Vos paramètres de configuration doivent ressembler à ceux-ci :

Page des paramètres de configuration

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.

Build Infrastructure with Terraform on Google Cloud

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.