Lorsque les services d'une région tombent en panne, Global Traffic Manager (GTM) détecte la défaillance via des vérifications d'état et redirige automatiquement le trafic DNS vers une région saine, maintenant ainsi votre service en ligne sans intervention manuelle. Ce tutoriel vous montre comment associer GTM à Classic Load Balancer (CLB), une offre Server Load Balancer (SLB), dans deux régions afin de construire une architecture active-passive interrégionale.
Fonctionnement
GTM opère au niveau DNS. Il surveille l'état de vos instances CLB dans chaque région et répond aux requêtes DNS avec l'adresse IP d'un point de terminaison sain. Lorsqu'une défaillance régionale est détectée, GTM cesse de renvoyer l'adresse IP de cette région et dirige tout le trafic vers l'autre région.
GTM peut gérer des adresses IP provenant d'Alibaba Cloud et d'autres fournisseurs de services, ce qui permet des déploiements en cloud hybride.
Dans ce tutoriel, des instances Elastic Compute Service (ECS) s'exécutent derrière des instances CLB dans deux régions : Chine (Hangzhou) et Chine (Pékin). GTM est configuré pour acheminer le trafic vers les deux régions en conditions normales et pour basculer vers la région survivante lorsque l'une devient indisponible.
Pour plus d'informations sur GTM, consultez Qu'est-ce que Global Traffic Manager ?.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Des instances CLB orientées Internet créées dans chaque région. Consultez Créer et gérer une instance CLB.
Un groupe de serveurs virtuels créé pour chaque instance CLB, avec des instances ECS ajoutées et des applications déployées. Consultez Créer et gérer un groupe de serveurs virtuels.
Un écouteur créé pour chaque instance CLB. Tous les écouteurs doivent utiliser le même port. Consultez Ajouter un écouteur TCP, Ajouter un écouteur UDP, Ajouter un écouteur HTTP et Ajouter un écouteur HTTPS.
L'adresse IP publique de chaque instance CLB est accessible.
Un nom de domaine enregistré avec un numéro ICP (Internet Content Provider). Consultez Enregistrer un nom de domaine sur Alibaba Cloud et Processus de dépôt ICP.
Étape 1 : Acheter une instance GTM
Connectez-vous à la console Alibaba Cloud DNS.
Dans le volet de navigation de gauche, cliquez sur Global Traffic Manager.
Cliquez sur Purchase Instance.
Sur la page d'achat, configurez les paramètres et effectuez le paiement. Les paramètres par défaut sont utilisés dans ce tutoriel.
Étape 2 : Configurer GTM
Configurer l'instance GTM
Sur la page Global Traffic Manager, cliquez sur l'ID de l'instance GTM ou sur Configuration dans la colonne Actions.
S'il s'agit de votre première configuration de GTM, sélectionnez Advanced Settings dans la boîte de dialogue Select Configuration Method.
-
Dans l'onglet Basic Settings, cliquez sur Modify. Dans le panneau Modify Basic Settings, configurez les paramètres suivants et cliquez sur OK.
Setting
Value
CNAME (Internet)
Sélectionnez Custom Access Domain Name. Saisissez le préfixe et le suffixe de votre nom de domaine. Après avoir enregistré les paramètres, un enregistrement CNAME est automatiquement généré pour mapper votre domaine à l'instance GTM.
Global TTL Period
Définit la durée pendant laquelle les résolveurs DNS mettent en cache l'adresse IP.
Alert Group
Sélectionnez un groupe de contacts pour recevoir des notifications lorsqu'un point de terminaison devient indisponible. Le groupe d'alertes Cloud Monitor apparaît par défaut dans la liste. Consultez Créer un contact d'alerte ou un groupe de contacts d'alerte.
Configurer les pools d'adresses
Chaque instance CLB doit être placée dans un pool d'adresses distinct. Ce tutoriel utilise deux pools d'adresses, un pour chaque instance CLB.
N'ajoutez pas les deux instances CLB au même pool d'adresses. GTM nécessite que chaque adresse IP publique de CLB se trouve dans un pool différent pour acheminer le trafic de manière indépendante.
Dans l'onglet Address Pools, cliquez sur Create Address Pool.
Dans le panneau Create Address Pool, définissez le paramètre Address de la liste Addresses sur l'adresse IP publique de l'une de vos instances CLB. Configurez les autres paramètres ou utilisez les valeurs par défaut, puis cliquez sur OK.
Répétez les étapes précédentes pour créer un second pool d'adresses avec l'adresse IP publique de l'autre instance CLB.
Configurer les vérifications d'état
Configurez une vérification d'état pour chaque pool d'adresses afin que GTM puisse détecter les défaillances régionales.
Dans l'onglet Address Pools, localisez un pool d'adresses et cliquez sur l'icône
pour développer sa configuration.Cliquez sur Add à côté de Health Check. Dans le panneau Modify Health Check Settings, définissez le protocole et le port de la vérification d'état pour qu'ils correspondent au protocole et au port du backend de votre écouteur CLB. Configurez les paramètres restants ou utilisez les valeurs par défaut, puis cliquez sur OK.
Répétez les étapes précédentes pour configurer une vérification d'état pour l'autre pool d'adresses.
Configurer une politique d'accès
Dans l'onglet Basic Settings, accédez à la section Access Policy Type et cliquez sur Settings dans la carte Geographical Location-based Access Policy.
Sur la page Geographical Location-based Access Policy, cliquez sur Create Access Policy.
-
Dans le panneau Create Access Policy, configurez les paramètres suivants et cliquez sur OK.
Setting
Value
DNS Request Source
Sélectionnez Global pour acheminer le trafic provenant de différentes régions ou fournisseurs de services Internet (ISP) vers les pools d'adresses.
Primary Address Pool Set
Sélectionnez les pools d'adresses dans toutes les régions.
Étape 3 : Vérifier le résultat
Vérifiez le fonctionnement normal ainsi que le comportement de basculement.
Tester le fonctionnement normal :
Ouvrez un navigateur et accédez à votre service en utilisant le CNAME généré à l'étape 2.
Confirmez que le service se charge correctement.
Tester le basculement :
Désactivez les services backend dans l'une des régions pour simuler une panne.
Attendez quelques secondes que la vérification d'état détecte la défaillance, puis actualisez la page.
Confirmez que le service reste accessible : le trafic a été redirigé vers l'autre région.
Pour afficher les journaux détaillés du basculement, accédez à l'onglet Alert Logs de votre instance GTM.
Mise à l'échelle des QPS avec plusieurs instances CLB
Lorsque votre activité nécessite plus d'environ 50 000 QPS (la limite supérieure d'une seule instance CLB), vous pouvez déployer plusieurs instances CLB derrière GTM pour augmenter linéairement le nombre de QPS. En distribuant le trafic résolu par DNS sur plusieurs instances CLB, la capacité totale peut atteindre 100 000 QPS ou plus.
Choisir une stratégie d'équilibrage de charge
GTM prend en charge deux stratégies d'équilibrage de charge pour les adresses au sein d'un pool d'adresses :
|
Strategy |
Behavior |
|
Round-robin |
Toutes les adresses disponibles sont renvoyées de manière rotative. Le résolveur DNS local sélectionne l'adresse à utiliser pour chaque connexion. |
|
Weighted |
Une seule adresse est renvoyée par requête DNS, choisie selon le ratio de pondération configuré. |
Pour les déploiements multi-CLB, la stratégie Weighted est recommandée. Elle vous permet d'attribuer des poids proportionnels à la capacité de chaque instance CLB, offrant ainsi une distribution précise et prévisible du trafic entre les instances.
GTM 3.0 propose un modèle prédéfini Multi-active load conçu pour ce cas d'utilisation. Le préréglage configure :
Inter-pool (niveau domaine d'accès) : stratégie Round-robin entre les pools d'adresses.
Intra-pool (niveau pool d'adresses) : stratégie Weighted au sein de chaque pool, chaque adresse ayant un poids par défaut de 1.
Pour utiliser ce préréglage, sélectionnez Multi-active load lors de la création d'un nouveau domaine d'accès dans la console GTM.
TTL DNS et délai de commutation d'IP
Le TTL DNS de votre instance GTM est par défaut de 10 minutes. Les résolveurs DNS côté client mettent en cache l'adresse IP résolue pendant la durée du TTL. Lorsque GTM modifie l'adresse résolue, par exemple lors de la redistribution de la charge ou de la suppression d'un point de terminaison indisponible, les clients dont le cache n'a pas encore expiré continuent d'envoyer des requêtes à l'adresse IP précédemment mise en cache jusqu'à l'expiration de leur TTL.
Pour réduire le délai de commutation, diminuez la valeur de Global TTL Period dans les paramètres de base de votre instance GTM. Notez qu'un TTL plus court augmente la fréquence des requêtes DNS.
Lorsqu'un seul client envoie un volume élevé de requêtes, l'équilibrage de charge basé sur le DNS peut ne pas distribuer le trafic de manière uniforme, car le client réutilise la même adresse IP mise en cache pendant toute la durée du TTL. Il s'agit d'un comportement attendu. Sur plusieurs clients indépendants, le trafic converge vers les ratios de pondération configurés comme prévu.
Étapes suivantes
Application Load Balancer (ALB) et Network Load Balancer (NLB) prennent également en charge les architectures interrégionales. Choisissez le type d'équilibreur de charge adapté à vos besoins en matière de protocole et de trafic :