GSP217
Présentation
Dans cet atelier, vous allez configurer Google Cloud CDN (Content Delivery Network) pour un bucket 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 à jour des sites de cache Cloud CDN de Google, consultez la ressource sur les emplacements de cache.
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é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 gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :
- Le bouton "Ouvrir la console Google Cloud"
- Le temps restant
- Les identifiants temporaires que vous devez utiliser pour cet atelier
- Des informations complémentaires vous permettant d'effectuer l'atelier
-
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur 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 "Détails concernant 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 "Détails concernant l'atelier".
-
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent 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 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
-
Dans la console Cloud, accédez au menu de navigation, puis cliquez sur Cloud Storage > Buckets.
-
Cliquez sur Créer un bucket.
-
Spécifiez les valeurs des champs suivants et conservez les valeurs par défaut des autres paramètres :
| Property (Propriété) |
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. |
Remarque : Choisissez un emplacement situé à l'autre bout du monde ou au moins sur un autre continent. Cela permettra de mieux voir ce qui se passe lorsqu'on accède à une image avec ou sans Cloud CDN activé.
-
Cliquez sur Continuer.
-
Dans la boîte de dialogue Empêcher l'accès public, pour le champ Choisissez comment contrôler l'accès aux objets, décochez Appliquer la protection contre l'accès public sur ce bucket, puis cliquez sur Continuer.
-
Cliquez sur Créer.
-
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.
- Exécutez la commande suivante dans Cloud Shell, en remplaçant
[your-storage-bucket] par le nom de votre bucket :
gsutil cp gs://spls/gsp217/cdn/cdn.png gs://[your-storage-bucket]
-
Cliquez sur Autoriser.
-
Sur la page "Informations sur le bucket", cliquez sur Actualiser pour vérifier que l'image a bien été copiée dans votre bucket.

Rendre le bucket public
Il est recommandé de dédier des buckets Cloud Storage spécifiques aux objets publics.
- Sur la page "Informations sur le bucket", cliquez sur l'onglet Autorisations.
- Cliquez sur Accorder l'accès.
- Sous "Nouveaux membres", commencez à saisir "allUsers", puis sélectionnez cette option dans le menu déroulant.
- Pour le rôle, sélectionnez Cloud Storage > Lecteur d'objets Storage.
- Cliquez sur Enregistrer.
- Cliquez sur Allow public access (Autoriser l'accès public).
- Cliquez sur l'onglet Objets.
- Cliquez sur Copier l'URL sous "Accès public", puis ouvrez un nouvel onglet de navigateur et collez l'URL dans la barre d'adresse pour vérifier que vous pouvez accéder à l'image.

Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer et remplir un bucket Cloud Storage
Tâche 2 : 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
- Dans la console Cloud, dans le menu de navigation (
), cliquez sur Afficher tous les produits > Services réseau > Équilibrage de charge.
- Cliquez sur + Créer un équilibreur de charge.
- Sous Type d'équilibreur de charge, sélectionnez Équilibreur de charge d'application (HTTP/HTTPS), puis cliquez sur Suivant.
- Conservez les valeurs par défaut de tous les paramètres et cliquez sur Configurer.
- Dans le champ Nom de l'équilibreur de charge, saisissez cdn-lb.
Configurer le backend
- Cliquez sur Configuration du backend.
- Pour Services de backend et buckets backend, cliquez sur le menu déroulant du même nom, puis sur Créer un bucket backend.
- Définissez le champ Nom sur
cdn-bucket.
- Sous Bucket Cloud Storage, cliquez sur Parcourir.
- Cliquez sur votre bucket, puis sur Sélectionner.
- Cochez Activer Cloud CDN.
-
Mettre en cache le contenu statique est sélectionné par défaut. Pour cet atelier, définissez Valeur TTL client, Valeur TTL par défaut et Valeur TTL maximale sur 1 minute.
- Cliquez sur Créer.
Remarque : Pour activer Cloud CDN, il vous suffit de cocher Activer Cloud CDN.
Configurer l'interface
Remarque : Les règles d'hôte et de chemin d'accès déterminent la manière dont le trafic est dirigé. Par exemple, vous pouvez diriger le trafic vidéo vers un backend et le trafic d'images vers un autre backend. Toutefois, vous n'apprendrez pas à configurer les règles d'hôte et de chemin d'accès dans cet atelier. Ignorez l'option Host and path rules (Règles d'hôte et de chemin d'accès).
-
Cliquez sur Frontend configuration (Configuration de l'interface).
-
Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
| Property (Propriété) |
Valeur (saisissez la valeur ou sélectionnez l'option spécifiée) |
| Protocole |
HTTP |
| Version IP |
IPv4 |
| Adresse IP |
Éphémère |
| Port |
80 |
-
Cliquez sur Done (OK).
Vérifier et créer un équilibreur de charge HTTP
-
Cliquez sur Review and finalize (Vérifier et finaliser).
-
Examinez les buckets backend et l'interface.

-
Cliquez sur Créer, puis attendez que l'équilibreur de charge soit créé.
-
Cliquez sur le nom de l'équilibreur de charge (cdn-lb).
-
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
Tâche 3 : 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.
- Dans Cloud Shell, stockez l'adresse IP de l'équilibreur de charge dans une variable d'environnement :
export LB_IP_ADDRESS=<Enter the IP address of the Load Balancer>
- 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
Le résultat doit ressembler à cet exemple :
1.234357
0.009600
0.006652
Remarque : Dans cet exemple de résultat, les deuxième et troisième requêtes prennent moins de 1 % du temps qui a été nécessaire pour exécuter la première requête. Cela prouve que l'image a bien été mise en cache lors de la première requête et qu'elle a été consultée depuis un emplacement périphérique lors des requêtes suivantes. Les résultats obtenus dépendent de la distance à laquelle vous avez placé votre bucket de stockage et de la localisation de votre emplacement périphérique le plus proche.
- 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é.
-
Dans la console Cloud, accédez au menu de navigation, puis cliquez sur Afficher tous les produits. Dans la section Observabilité, cliquez sur Journalisation > Explorateur de journaux.
-
Dans le filtre Ressources, sélectionnez Équilibreur de charge d'application > cdn-lb-forwarding-rule > cdn-lb. Cliquez ensuite sur Appliquer.
-
Cliquez sur Exécuter la requête.
Remarque : Si le message "Warnings" (Avertissements) apparaît dans la requête, revenez à Cloud Shell, puis réexécutez la dernière commande plusieurs fois pour générer d'autres journaux.
-
Développez la première entrée de journal (en haut).
-
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.
-
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.
-
Fermez l'entrée de journal actuelle et développez-en une vers le bas des résultats de la requête.
-
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.
-
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.
Remarque : Les journaux Cloud CDN montrent clairement que c'est le backend qui a fourni l'image lors de la première requête. Cette requête a rempli le cache sur l'emplacement périphérique et les requêtes suivantes ont récupéré l'image à partir de ce cache.
Félicitations !
Dans cet atelier, vous avez configuré Cloud CDN pour un bucket 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 à jour des sites de cache Cloud CDN de Google, consultez la ressource sur les emplacements de cache.
É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 2025
Dernier test de l'atelier : 26 mai 2025
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.