arrow_back

Cloud CDN

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

Cloud CDN

Lab 40 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

GSP217

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Dans cet atelier, vous allez configurer Google Cloud CDN (Content Delivery Network) pour un bucket de backend et vérifier la mise en cache d'une image. Cloud CDN utilise des points de présence périphériques de Google répartis à travers le monde pour mettre en cache le contenu équilibré en charge HTTP(S) à proximité de vos utilisateurs. La mise en cache de contenu à la périphérie du réseau de Google permet de diffuser le contenu auprès des utilisateurs plus rapidement, tout en réduisant les coûts.

Pour obtenir la liste la plus récente des sites de cache Cloud CDN de Google, consultez la documentation suivante : https://cloud.google.com/cdn/docs/locations.

Objectifs

Dans cet atelier, vous apprendrez à effectuer les opérations suivantes :

  • Créer et remplir un bucket Cloud Storage

  • Créer un équilibreur de charge HTTP avec Cloud CDN

  • Vérifier la mise en cache du contenu de votre bucket

Prérequis

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.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :

    • Le bouton Ouvrir la console Google
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google. 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.
  3. Si nécessaire, copiez le nom d'utilisateur inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue Se connecter. Cliquez sur Suivant.

  4. Copiez le mot de passe inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue de bienvenue. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis dans le panneau de gauche. Ne saisissez pas vos identifiants Google Cloud Skills Boost. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  5. 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 aux essais offerts.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Vous pouvez afficher le menu qui contient la liste des produits et services Google Cloud en cliquant sur le menu de navigation en haut à gauche. Icône du menu de navigation

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.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console 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 YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :

Your Cloud Platform project in this session is set to YOUR_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.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

  2. Vous devez à présent obtenir le résultat suivant :

Résultat :

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = <ID_Projet>

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.

Créer et remplir un bucket Cloud Storage

Le contenu Cloud CDN peut provenir de deux types de backends :

  • Groupes d'instances de machine virtuelle (VM) Compute Engine
  • Buckets Cloud Storage

Dans cet atelier, vous allez configurer un bucket Cloud Storage en tant que backend.

Créer un bucket Cloud Storage unique

  1. Dans Cloud Console, dans le menu de navigation, cliquez sur Cloud Storage > Browser (Navigateur).

  2. Cliquez sur Create bucket (Créer un bucket).

  3. Spécifiez les valeurs des champs suivants et conservez les valeurs par défaut des autres paramètres :

    Property (Propriété) Value (Valeur : saisissez la valeur ou sélectionnez l'option spécifiée)
    Name (Nom) Saisissez un nom unique.
    Si le nom que vous saisissez n'est pas unique, un message vous invite à en indiquer un autre.
    Type d'emplacement Multirégional
    Emplacement Choisissez un emplacement situé à une très grande distance de vous.
  1. Cliquez sur Create (Créer).

  2. Notez le nom de votre bucket de stockage pour l'étape suivante. Il sera désigné par l'expression [your-storage-bucket].

Copier un fichier image dans votre bucket

Copiez une image provenant d'un bucket Cloud Storage public dans votre propre bucket.

  1. Exécutez la commande suivante dans Cloud Shell, en remplaçant [your-storage-bucket] par le nom de votre bucket :

gsutil cp gs://cloud-training/gcpnet/cdn/cdn.png gs://[your-storage-bucket]

Cliquez sur Authorize (Autoriser).

  1. Sur la page "Bucket details" (Informations sur le bucket), cliquez sur Refresh (Actualiser) pour vérifier que l'image a bien été copiée dans votre bucket.

refresh_bucket.png

Rendre le bucket public

Il est recommandé de dédier des buckets Cloud Storage spécifiques aux objets publics.

  1. Sur la page "Bucket details" (Informations sur le bucket), cliquez sur l'onglet Permissions (Autorisations).
  2. Cliquez sur Add (Ajouter).
  3. Sous "New members" (Nouveaux membres), commencez à saisir "allUsers", puis sélectionnez cette option dans le menu déroulant.
  4. Pour le rôle, sélectionnez Cloud Storage > Storage Object Viewer (Lecteur des objets de l'espace de stockage).
  5. Cliquez sur Enregistrer.
  6. Cliquez sur Allow public access (Autoriser l'accès public).
  7. Cliquez sur l'onglet Objects (Objets).
  8. Cliquez sur Copy URL (Copier l'URL) sous "Public access" (Accès public), puis ouvrez un nouvel onglet de navigateur et collez l'URL pour confirmer que vous pouvez accéder à l'image.

cdn.png

Cliquez sur Check my progress (Vérifier ma progression) pour vérifier l'objectif. Créer et remplir un bucket Cloud Storage

Créer l'équilibreur de charge HTTP avec Cloud CDN

L'équilibrage de charge HTTP(S) permet d'équilibrer les charges au niveau mondial pour les requêtes HTTP(S) de contenu statique dans un bucket Cloud Storage (backend). L'activation de Cloud CDN sur votre backend permet de mettre en cache votre contenu à un emplacement situé à la périphérie du réseau Google, généralement beaucoup plus proche de l'utilisateur que votre backend.

Lancer la configuration de l'équilibreur de charge HTTP

  1. Dans Cloud Console, à partir du menu de navigation (mainmenu.png) sélectionnez Network Services > Load balancing (Services réseau > Équilibrage de charge), puis cliquez sur Create load balancer (Créer un équilibreur de charge).

  2. Dans la section HTTP(S) Load Balancing (Équilibrage de charge HTTP(S)), cliquez sur Start configuration (Démarrer la configuration).

  3. Sélectionnez From Internet to my VMs (D'Internet vers mes VM), puis cliquez sur Continue (Continuer).

  4. Définissez le paramètre Name (Nom) sur cdn-lb.

Configurer le backend

  1. Cliquez sur Backend configuration (Configuration des backends).
  2. Pour Backend services & backend buckets (Services backend et buckets backend), cliquez sur Create or select backend services & backend buckets (Créer ou sélectionner des services backend et des buckets backend) dans le menu déroulant, puis sur Backend buckets (Buckets backend), puis cliquez sur Create a backend bucket (Créer un bucket backend).
  3. Définissez le champ Name (Nom) sur cdn-bucket.
  4. Sous Cloud Storage bucket (Bucket Cloud Storage), cliquez sur Browse (Parcourir).
  5. Cliquez sur votre bucket, puis sur Select (Sélectionner).
  6. Cochez Enable Cloud CDN (Activer Cloud CDN).
  7. Cache Static Content (Mettre en cache le contenu statique) est sélectionné par défaut. Pour cet atelier, définissez Client time to live (Valeur TTL client), Default time to live (Valeur TTL par défaut) et Maximum time to live (Valeur TTL maximale) sur une minute.
  8. Cliquez sur Create (Créer).

Configurer l'interface

  1. Cliquez sur Frontend configuration (Configuration de l'interface).

  2. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Property (Propriété) Value (Valeur : saisissez la valeur ou sélectionnez l'option spécifiée)
    Protocol (Protocole) HTTP (Protocole HTTP)
    IP version (Version IP) IPv4
    IP address (Adresse IP) Ephemeral (Éphémère)
    Port 80
  3. Cliquez sur Done (OK).

Vérifier et créer un équilibreur de charge HTTP

  1. Cliquez sur Review and finalize (Vérifier et finaliser).

  2. Examinez les buckets backend et l'interface.

    review_finalize.png

  3. Cliquez sur Create (Créer), puis attendez que l'équilibreur de charge soit créé.

  4. Cliquez sur le nom de l'équilibreur de charge (cdn-lb).

  5. Notez l'adresse IP de l'équilibreur de charge pour la prochaine tâche. Elle sera désignée par l'expression [LB_IP_ADDRESS].

Cliquez sur Check my progress (Vérifier ma progression) pour vérifier l'objectif. Créer l'équilibreur de charge HTTP avec Cloud CDN

Vérifier la mise en cache du contenu de votre bucket

Maintenant que vous avez créé l'équilibreur de charge HTTP pour votre bucket et activé Cloud CDN, vous devez vérifier que l'image est bien mise en cache à la périphérie du réseau Google.

Chronométrer la requête HTTP pour l'image

Pour vérifier que l'image est bien mise en cache, vous pouvez chronométrer la requête HTTP pour l'image. La première requête doit prendre beaucoup plus de temps, car le contenu est mis en cache dans un emplacement périphérique après avoir été consulté via cet emplacement.

  1. Dans Cloud Shell, stockez l'adresse IP de l'équilibreur de charge dans une variable d'environnement :

export LB_IP_ADDRESS=<Saisissez l'adresse IP de l'équilibreur de charge>
  1. Exécutez la commande suivante pour chronométrer trois requêtes HTTP consécutives :

for i in {1..3};do curl -s -w "%{time_total}\n" -o /dev/null http://$LB_IP_ADDRESS/cdn.png; done

Vous devriez obtenir le résultat suivant (ne copiez pas cet exemple) :

1.234357
0.009600
0.006652
  1. Répétez cette commande plusieurs fois pour produire des journaux :

for i in {1..3};do curl -s -w "%{time_total}\n" -o /dev/null http://$LB_IP_ADDRESS/cdn.png; done

Analyser les journaux Cloud CDN

Pour vérifier que l'image a bien été mise en cache lors de l'étape précédente, vous pouvez également analyser les journaux Cloud CDN. Ces journaux contiennent des informations qui indiquent quand la mise en cache du contenu a été effectuée et quand le cache a été consulté.

  1. Dans Cloud Console, dans le menu de navigation, sélectionnez Logging > Logs Explorer (Explorateur de journaux).

  2. Dans le filtre Resources (Ressources), sélectionnez Cloud HTTP Load Balancer (Équilibreur de charge HTTP Cloud) > cdn-lb-forwarding-rule > cdn-lb. Cliquez ensuite sur Add (Ajouter).

  3. Cliquez sur Run Query (Exécuter la requête).

  1. Développez la première entrée de journal (en haut).

  2. Dans l'entrée, développez httpRequest et notez que le champ cacheLookup est défini sur true, mais qu'il n'y a pas de champ cacheHit. Cela signifie que le cache ne contenait pas l'image lors de la première requête.

  3. Développez jsonPayload et notez que le champ statusDetails indique response_sent_by_backend. Cela signifie également que l'image provenait du bucket backend lors de la première requête.

  4. Fermez l'entrée de journal actuelle et développez-en une vers le bas des résultats de la requête.

  5. Dans l'entrée, développez httpRequest et notez que cacheLookup et CacheHit sont définis sur true. Cela signifie que le cache contenait l'image lors de la requête.

  6. Développez jsonPayload et notez que le champ statusDetails indique response_from_cache. Cela signifie également que c'est le cache qui a fourni l'image lors de cette requête, et non le backend.

Félicitations !

Dans cet atelier, vous avez configuré Cloud CDN pour un bucket de backend en créant un équilibreur de charge HTTP et en activant Cloud CDN grâce à une simple case à cocher. Vous avez vérifié la mise en cache du contenu du bucket en accédant plusieurs fois à une image et en analysant des journaux Cloud CDN. Le premier accès à l'image a pris plus de temps, car le cache de l'emplacement périphérique ne contenait pas encore l'image. Les requêtes suivantes ont été plus rapides, car c'est le cache de l'emplacement périphérique le plus proche de votre instance Cloud Shell qui a fourni l'image.

Pour obtenir la liste la plus récente des sites de cache Cloud CDN de Google, consultez la documentation suivante : https://cloud.google.com/cdn/docs/locations.

Networking_125.png

Terminer votre quête

Cet atelier d'auto-formation fait partie de la quête Qwiklabs Network Performance and Optimization. Une quête est une série d'ateliers associés qui constituent une formation. Si vous terminez cette quête, vous obtiendrez le badge ci-dessus attestant de votre réussite. Vous pouvez rendre publics les badges que vous recevez et ajouter leur lien dans votre CV en ligne ou sur vos comptes de réseaux sociaux. Inscrivez-vous à cette quête pour obtenir immédiatement les crédits associés à cet atelier si vous l'avez suivi. Découvrez les autres quêtes Qwiklabs disponibles.

Atelier suivant

Poursuivez votre quête avec Niveaux de réseau : Optimiser les coûts de réseau, ou consultez ces suggestions :

Étapes suivantes et informations supplémentaires

Pour en savoir plus sur les concepts de base de Cloud CDN, consultez la documentation Google Cloud CDN.

Dernière mise à jour du manuel : 26 mai 2021
Dernier test de l'atelier : 26 mai 2021

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.