Procédure d'activation de Google Cloud CDN (Content Delivery Network) pour votre site Web.
Dans mon article précédent, j'ai fait un tester et a parlé de la rapidité du CDN par Google. J'ai couvert brièvement l'activation, et beaucoup d'entre vous ont demandé une explication détaillée.
Introduction
Cloud CDN par Google est une solution de diffusion de contenu à faible latence pour les petites et grandes entreprises.
Avec plus de 130 POP (point de présence) dans le monde et une diffusion de contenu accélérée à l'aide du réseau premium mondial de Google, créez le CDN SSL le plus rapide au monde.
Le dernier rapport de CDNPerf montrant que Google Cloud CDN fonctionne mieux qu'Azure, AKAMAI, Cloudflare, Fastly et bien d'autres.

Certaines des fonctionnalités de Google Cloud CDN:
- HTTP / 2 - il prend en charge le dernier protocole HTTP pour de meilleures performances
- Faible latence - tous les contenus sont servis via Anycast (IP unique) dans le monde entier.
- Journalisation - il s'intègre à Stackdriver pour fournir une journalisation détaillée d'une requête, des accès / échecs de cache.
- Purger le cache instantanément
- À bas prix
Pre-requisite
Vous vous demandez pourquoi un pré-requis?
Eh bien, Google CDN ne fonctionne qu'avec Équilibreur de charge Google et les origines du stockage en nuage. Cela signifie que si vous n'hébergez pas votre application sur GCP (Google Cloud Platform), vous ne pouvez pas utiliser leur CDN.
En d'autres termes, il ne prend pas encore en charge les origines externes. Facile.
Je suppose donc que vous hébergez votre application sur GCP et que vous êtes prêt à utiliser un équilibreur de charge (LB) pour utiliser le CDN cloud.
Vous l'avez bien deviné; vous ne pouvez pas non plus utiliser VM comme origine. Il ne peut être activé que sur l'équilibreur de charge.
Commençons…
Scenario
J'ai deux VM en cours d'exécution (une à Singapour et une autre dans l'ouest des États-Unis). Je souhaite équilibrer la charge des requêtes vers les deux VM à l'aide d'un équilibreur de charge HTTP et activer le CDN dessus.
Je dois faire ce qui suit.
- Créer un bilan de santé
- Créer un groupe d'instances
- Créer un équilibreur de charge
- Activer CDN
Creating a health check
Une vérification de l'état est essentielle pour que l'équilibreur de charge détermine si la machine virtuelle est saine. Lorsque VM ne peut pas répondre à la requête, alors LB marquerait cela comme défectueux et arrêterait d'envoyer du trafic.
- Connectez-vous à GCP et accédez à Bilans de santé sous Compute Engine.
- Cliquez sur "Créer une vérification de l'état".

- Suivez l'assistant et entrez les informations nécessaires.
- Protocole - sélectionnez HTTP si votre application hébergée sur VM écoutera sur le port 80 et HTTPS pour le port 443
- Chemin de la requête - une racine de contexte de travail.
- Critères de santé - ajuster si nécessaire

- Cliquez sur créer
Cela prendra quelques secondes et vous remarquerez une vérification de l'état nouvellement créée sur la liste. Nous allons l'utiliser sous peu.
Creating an instance group
Le groupe d'instances est utilisé dans la configuration de l'équilibrage de charge. C'est ce qu'on appelle les services backend pour LB.
- Cliquez sur Groupes d'instances sous Compute Engine.
- Cliquez sur "Créer un groupe d'instances".

- Suivez l'assistant pour fournir les informations nécessaires.
- Emplacement - Sélectionnez un zone unique car nous n'allons pas de l'avant avec une option de mise à l'échelle automatique.
- Zone - choisissez la zone dans laquelle la VM s'exécute.
- Type de groupe - cochez le groupe d'instances non géré
- Instances de VM - sélectionnez la VM dans la liste.
- Cliquez sur Créer

Répétez les étapes de création d'un groupe d'instances pour une autre zone de VM.
Maintenant, nous avons deux groupes d'instances. Chacun mappé avec la VM dans la zone respective.
Creating a Load Balancer
- Cliquez sur L'équilibrage de charge sous Services réseau
- Cliquez sur "Créer un équilibreur de charge".

- Sélectionnez «Équilibrage de charge HTTP (S)».
- Entrez le nom de LB
- Cliquez sur "Configuration du backend".
- Cliquez sur "Créer un service backend".
- Entrez le nom des services backend
- Ajoutez les deux groupes d'instances que vous avez créés précédemment en tant que backend
- Sélectionnez la vérification de l'état que vous avez créée précédemment
- Affinité de session - sélectionnez si vous voulez la persistance de la session
- Cliquez sur créer

- Laissez la configuration par défaut dans «Règles d'hôte et de chemin». Cependant, si vous avez besoin d'un transfert conditionnel, ajoutez-en selon vos besoins.
- Cliquez sur la configuration du frontend et entrez le nom.
- Sélectionnez «créer une adresse IP» pour obtenir l'adresse IP statique. Ceci est important car, par défaut, vous obtiendrez une adresse IP éphémère.
- Le protocole, la version IP et le port laissent les paramètres par défaut.
- Cliquez sur Terminé

- Cliquez sur réviser et finaliser, et si vous pensez que quelque chose ne va pas, modifiez-le sinon cliquez sur "Créer".

- Une fois créé, vous remarquerez LB nouvellement créé sur la liste.

Cela indique que LB est créé. Faisons quelques tests pour nous assurer que LB fonctionne.
Donc, j'essaye d'accéder à l'IP frontend LB, et c'est un succès!

Vous pouvez également vouloir générer des charges pour garantir que le trafic est acheminé vers les deux machines virtuelles. Google transmettra les demandes à la VM la plus proche de la géolocalisation de l'utilisateur.
Dans mon scénario, le trafic en provenance d'Asie ira à VM à Singapour, et en provenance d'Amérique, il ira à US-West VM.
Activating Google Cloud CDN
Et, enfin, il est temps d'activer le CDN.
- Cliquez sur Cloud CDN sous les services réseau.
- Cliquez sur "Ajouter une origine".

- Sélectionnez l'équilibreur de charge dans la liste déroulante d'origine et cliquez sur Ajouter

- Vous devriez voir le CDN nouvellement créé dans la liste.

Cela conclut que CDN est activé sur l'équilibreur de charge.
Une fois que vous en êtes satisfait, vous pouvez mettre à jour l'enregistrement A de votre domaine vers l'adresse IP globale de l'équilibreur de charge.
J'espère que ceci vous aide. Si vous souhaitez en savoir plus sur Google Cloud Platform, consultez ceci Cours sur l'architecture cloud avec GCP.