Règles de routage DNS et vérifications de l'état

Vous pouvez configurer des règles de routage DNS pour les jeux d'enregistrements de ressources dans des zones privées ou publiques afin d'orienter le trafic en fonction de critères spécifiques. Créer une ressource jeux d'enregistrements avec des valeurs de règle de routage spécifiques pour configurer ces règles. Ces valeurs déterminent la manière dont les routes Cloud DNS interrogent le trafic.

Cloud DNS est compatible avec les règles de routage suivantes :

  • Règle de routage round robin (à tour de rôle) pondéré (WRR): utilisez une règle WRR pour attribuer des pondérations différentes à chaque jeu d'enregistrements de ressources nom DNS. Une règle de routage WRR permet de garantir que le trafic est distribué en fonction des pondérations configurées. Combiner le routage WRR et le routage Géolocalisation ne sont pas acceptées.

  • Règle de routage de géolocalisation : utilisez la règle de routage de géolocalisation pour spécifier les zones géographiques sources et fournir des réponses correspondantes à ces zones géographiques. La règle de routage Géolocalisation applique la correspondance la plus proche pour l'emplacement source lorsqu'aucun élément de règle ne correspond exactement à source de trafic.

  • Règle de routage avec basculement: utiliser le routage de basculement pour définir des configurations de sauvegarde actives.

Vous ne pouvez pas configurer de règles de routage DNS pour les zones privées suivantes :

  • Zones de transfert
  • Zones d'appairage DNS
  • Zones de recherche inversée gérées
  • Zones de l'annuaire des services

Règles de routage WRR

Une règle de routage WRR vous permet de spécifier différentes pondérations par cible DNS, et Cloud DNS garantit que votre trafic est réparti en fonction des pondérations. Vous pouvez utiliser cette règle pour accepter les configurations manuelles active-active ou active-passive. Vous pouvez répartir le trafic entre les versions de production et expérimentales de votre service.

Cloud DNS prend en charge la vérification de l'état et les basculements au sein du routage pour les équilibreurs de charge internes et les points de terminaison externes. Cloud DNS permet le basculement automatique lorsque les points de terminaison échouent des vérifications d'état. Lors d'un basculement, Cloud DNS ajuste automatiquement la répartition du trafic entre les points de terminaison opérationnels restants. Pour en savoir plus, consultez la section Vérifications d'état.

Règles de routage avec géolocalisation

Une règle de routage Géolocalisation vous permet de mapper le trafic provenant des zones géographiques sources (régions Google Cloud) à des cibles DNS spécifiques. Utilisez cette règle pour répartir les requêtes entrantes vers différentes instances de service en fonction de l'origine du trafic. Vous pouvez utiliser cette fonctionnalité avec du trafic extérieur ou avec du trafic provenant de Google Cloud et est lié aux équilibreurs de charge réseau passthrough internes. Cloud DNS utilise la région dans laquelle les requêtes entrent dans Google Cloud en tant que géographie source.

Une règle de routage Géolocalisation mappe la source différemment pour les DNS publics et privés comme suit:

  • Pour un DNS public, l'adresse IP source ou le mécanisme d'extension pour le sous-réseau client DNS (EDNS) de la requête est utilisé.
  • Pour un DNS privé, le sous-réseau client EDNS n'est pas utilisé. L'emplacement de la requête est l'emplacement du système qui envoie les paquets pour la requête:
    • Pour les requêtes provenant d'une instance de machine virtuelle (VM) Compute Engine avec un réseau interface d'un réseau VPC, l'emplacement de la requête correspond à la région qui contient l'instance de VM.
    • Pour les requêtes reçues par un point d'entrée d'une règle de serveur entrant, l'emplacement de la requête correspond à la région du tunnel Cloud VPN, du rattachement VLAN Cloud Interconnect ou de l'appareil de routeur ayant reçu les paquets de la requête. La région de l'adresse IP du point d'entrée n'est pas pertinente. Pour en savoir plus, consultez Réseau et région pour les requêtes entrantes.

Cloud DNS prend en charge la vérification de l'état et les basculements au sein du routage pour les équilibreurs de charge internes et les points de terminaison externes. Cloud DNS permet le basculement automatique lorsque les points de terminaison échouent à leur vérification de l'état. Lorsque vous utilisez des règles de routage Géolocalisation, le trafic échoue à la géolocalisation la plus proche du trafic source.

Règle de routage de géolocalisation avec géorepérage

Un géorepérage permet de s'assurer que le trafic est dirigé vers une région spécifique, même si tous les points de terminaison de cette région échouent aux vérifications de l'état.

Lorsque le géorepérage est désactivé et qu'une vérification de l'état échoue pour une géolocalisation spécifique, le trafic est automatiquement basculé vers la géolocalisation suivante la plus proche. Toutefois, lorsque le géorepérage est activé, ce basculement automatique ne se produit pas. En tant que serveur faisant autorité, Cloud DNS doit renvoyer une valeur, et dans ce scénario, Cloud DNS renvoie toutes les adresses IP non modifiées lorsque les points de terminaison échouent aux vérifications de l'état.

Règles de routage avec basculement

La règle de routage avec basculement vous permet de configurer des configurations de sauvegarde actives pour assurer une haute disponibilité des ressources internes de votre réseau VPC.

En fonctionnement normal, Cloud DNS renvoie toujours l'adresse IP de l'ensemble active. Lorsque toutes les adresses IP de active sont définies non opérationnel, Cloud DNS diffuse les adresses IP du backup défini. Si vous configurez backup comme règle de routage Géolocalisation, fonctionne comme décrit dans les Règles de routage Géolocalisation. . Si vous configurez l'ensemble backup pour un équilibreur de charge interne, Cloud DNS vérifie l'état de toutes les adresses IP virtuelles de sauvegarde (VIP).

Cloud DNS vous permet de diminuer progressivement le trafic vers les adresses IP virtuelles de sauvegarde afin de vérifier qu'elles fonctionnent. Vous pouvez configurer le pourcentage de trafic envoyé à la sauvegarde sous forme de fraction de 0 à 1. Vous pouvez déclencher manuellement un basculement en envoyant 100 % du trafic aux adresses VIP de secours. La valeur typique est 0,1. Les vérifications d'état peuvent être appliquées qu'aux équilibreurs de charge internes et aux points de terminaison externes.

Vérifications d'état

Cloud DNS prend en charge la vérification de l'état et les basculements au sein du routage pour les équilibreurs de charge internes et les points de terminaison externes suivants:

Lorsque vous souhaitez utiliser la vérification de l'état avec une zone gérée et des extensions de sécurité DNS (DNSSEC) est activée, une seule adresse IP peut être utilisée dans chaque élément de la règle (WRR ou géolocalisation). Vous ne pouvez pas mélanger des adresses IP dont l'état a été vérifié et des adresses IP dont l'état n'a pas été vérifié dans une règle spécifique.

Pour connaître les bonnes pratiques à prendre en compte lors de la configuration de l'enregistrement Cloud DNS et des vérifications d'état, consultez la section Bonnes pratiques.

Vérifications de l'état pour les équilibreurs de charge internes

Les vérifications de l'état pour les équilibreurs de charge internes ne sont disponibles qu'en mode privé zones.

Pour les équilibreurs de charge d'application internes et les équilibreurs de charge réseau proxy internes, Cloud DNS prend en compte l'état de l'équilibreur de charge lui-même lors de la décision de routage. Lorsqu'un équilibreur de charge reçoit une requête, il ne distribue le trafic qu'aux services de backend opérationnels. Pour vous assurer que les backends sont opérationnels, vous pouvez gérer le cycle de vie des backends à l'aide de services tels que les instances gérées (MIG). Cloud DNS n'a pas besoin de connaître l'état de santé des backends individuels. L'équilibreur de charge s'en charge.

Pour les équilibreurs de charge réseau passthrough internes, Cloud DNS vérifie les informations d'état des instances backend individuelles de l'équilibreur de charge. Cloud DNS applique un seuil par défaut de 20 %. Si au moins 20 % des instances de backend sont opérationnelles, le point de terminaison de l'équilibreur de charge est considéré comme opérationnel. Les règles de routage DNS marquent le point de terminaison comme opérationnel ou non en fonction de ce seuil, et acheminent le trafic en conséquence.

Une seule adresse IP virtuelle (VIP) d'équilibreur de charge réseau passthrough interne peut être associée à plusieurs instances de backend. Si un équilibreur de charge réseau passthrough interne ne possède aucune instance backend, Cloud DNS le considère toujours comme sain. Pour que la vérification de l'état fonctionne correctement, spécifiez au moins une instance backend dans la configuration de l'équilibreur de charge.

Lorsque le point de terminaison est marqué comme non opérationnel, les conditions suivantes peuvent se produire:

  • Si plusieurs adresses IP virtuelles sont programmées sur une règle, seules les adresses IP virtuelles opérationnelles sont renvoyées.
  • Si toutes les adresses IP virtuelles programmées sur un bucket de stratégie ne sont pas opérationnelles, cette ligne de stratégie est défaillante. Le comportement suivant s'applique :

    • Pour une règle WRR, Cloud DNS répartit le trafic proportionnellement entre les points de terminaison opérationnels restants définis dans la règle.
    • Pour une règle de géolocalisation pour laquelle le cloisonnement n'est pas activé, le trafic bascule vers les points de terminaison situés dans la zone la plus proche la région Google Cloud source définie dans la règle.
    • Pour une règle de géolocalisation pour laquelle le géorepérage est activé, Cloud DNS Il répartit le trafic vers l'adresse IP virtuelle la plus proche la région Google Cloud source définie dans la règle.
    • Dans le cas d'une règle de basculement, Cloud DNS bascule le trafic les points de terminaison de sauvegarde définis dans la stratégie.
    • Si aucun bucket de la règle n'est opérationnel, Cloud DNS se comporte comme si tous les points de terminaison étaient opérationnels. Ce scénario pourrait conduire à le trafic est distribué aux points de terminaison qui ne répondent pas.

Pour en savoir plus sur les vérifications de l'état pour les équilibreurs de charge internes, consultez la section Présentation des vérifications de l'état.

Vérifications de l'état des points de terminaison externes (bêta)

Les vérifications de l'état des points de terminaison externes ne sont disponibles que dans les zones publiques. La les points de terminaison pour lesquels vous souhaitez effectuer une vérification de l'état doivent être accessibles à Internet. Le point de terminaison spécifié peut être n'importe quelle adresse IP et port externes, y compris une adresse VIP d'équilibreur de charge d'application externe global, une adresse VIP d'équilibreur de charge d'application externe régional, une adresse VIP d'équilibreur de charge réseau proxy externe global, des points de terminaison sur site ou tout autre point de terminaison accessible sur Internet public.

Utilisez des vérifications d'état pour les points de terminaison externes dans les scénarios suivants :

  • Pour rediriger le trafic vers un équilibreur de charge d'application externe régional si un backend d'équilibreur de charge d'application externe global ou un backend d'équilibreur de charge réseau proxy externe global devient défaillant.
  • Pour rediriger le trafic vers un autre équilibreur de charge d'application externe régional si le backend d'un équilibreur de charge d'application externe régional spécifique devient défaillant.
  • Pour surveiller l'état des points de terminaison sur site ou d'autres points de terminaison accessibles sur l'Internet public.

Lorsque vous créez une règle de routage DNS avec des vérifications de l'état pour des points de terminaison externes, Cloud DNS envoie des vérifications d'état à vos points de terminaison. Ces vérifications d'état proviennent de trois régions sources Google Cloud que vous spécifiez. Les sondes de vérification de l'état de chaque région s'exécutent indépendamment, et Cloud DNS agrège leurs résultats pour déterminer l'état global du point de terminaison. Dans chaque région, trois instances de vérificateur d'état vérifient chaque point de terminaison. Si une vérification échoue, Cloud DNS peut toujours déterminer l'état du point de terminaison à l'aide des vérifications restantes. Cela signifie que vous avez neuf les vérificateurs d'entrée au total pour chaque point de terminaison, à la fréquence que vous spécifiez dans l'intervalle entre deux vérification de l'état. D'après les paramètres de la règle de routage et des informations de santé, Cloud DNS sélectionne et achemine le trafic vers le point de terminaison sélectionné.

Cloud DNS est compatible avec les protocoles TCP, HTTP et HTTPS avec mises en garde suivantes:

  • Le champ de requête TCP n'est pas pris en charge.
  • Le champ proxyHeader pour HTTP, HTTPS et TCP n'est pas accepté.

Les protocoles SSL, HTTP/2 et gRPC ne sont pas compatibles.

Pour le protocole TCP, Cloud DNS tente de se connecter au point de terminaison. Pour les protocoles HTTP et HTTPS, Cloud DNS vérifie que le point de terminaison renvoie un code de réponse HTTP 200. Vous pouvez également configurer une vérification de l'état basée sur le contenu, où Cloud DNS vérifie que la réponse contient une chaîne spécifique.

Contrairement aux vérifications de l'état pour les équilibreurs de charge internes, les vérifications de l'état du DNS Cloud pour les points de terminaison externes ne proviennent pas de plages d'adresses IP fixes. Les plages d'adresses IP sources de la vérification sont susceptibles de changer au fil du temps.

Le protocole et le port que vous spécifiez lors de la création de la vérification de l'état déterminent la façon dont les vérifications de l'état sont effectuées. Si vous ne spécifiez pas de port, Cloud DNS utilise le port 80. Pour vous assurer que les vérifications d'état fonctionnent correctement, configurez vos règles de pare-feu pour autoriser les vérifications d'état à partir de n'importe quelle adresse IP source et sur le port spécifique configuré dans la vérification d'état.

Si vous n'avez pas configuré votre pare-feu pour autoriser les vérifications d'état, les vérifications échouent, Cloud DNS considère donc les points de terminaison bloqués comme non opérationnels. Si tous les points de terminaison sont renvoyés comme non opérationnels, Cloud DNS les fournit tous, même s'ils ne sont pas opérationnels.

Intervalle de vérification de l'état

Cloud DNS envoie régulièrement des vérifications de l'état en fonction des l'intervalle entre les vérification de l'état. Par exemple, si l'intervalle de vérification de l'état est de 30 secondes, Cloud DNS envoie une vérification de l'état toutes les 30 secondes.

Pour la vérification de l'état du point de terminaison externe Cloud DNS, la vérification de l'état l'intervalle doit être compris entre 30 et 300 secondes.

Règles de routage round robin (à tour de rôle) pondéré et vérifications d'état

Cloud DNS prend en charge des valeurs de pondérations allant de 0 à 1 000 (ces deux nombres compris). Lorsque les vérifications de l'état sont incluses, il se produit ce qui suit :

  • Si vous configurez plusieurs cibles avec une valeur de pondération de 0, le trafic est réparti de manière égale entre les cibles.
  • Si vous configurez une nouvelle cible dont la pondération n'est pas nulle, elle devient cible principale, et tout le trafic se dirige vers cette cible.
  • Au fur et à mesure que vous ajoutez des cibles avec des pondérations non nulles, Cloud DNS calcule de manière dynamique la répartition du trafic entre les cibles (à chaque requête envoyée) et distribue le trafic de manière appropriée. Si vous avez configuré trois cibles avec des pondérations de 0, 25 et 75, la cible configurée avec une valeur de pondération de 0 ne reçoit aucun trafic, la cible avec une pondération de 25 reçoit un quart du trafic, et la cible restante reçoit trois quarts du trafic entrant.
  • Si des vérifications de l'état sont uniquement associées à des cibles dont les valeurs de pondération sont non nulles, les cibles dont la valeur de pondération est nulle sont toujours considérées comme opérationnelles. Si tous les enregistrements non opérationnels ne sont pas opérationnels, Cloud DNS renvoie les enregistrements avec une pondération nulle.
  • Si les vérifications d'état sont associées à des valeurs de pondération non nulles et nulles et si tous les enregistrements échouent aux vérifications d'état, Cloud DNS renvoie toutes les cibles dont la pondération n'est pas nulle et ignore les valeurs les cibles pondérées à zéro.
  • Lorsque Cloud DNS choisit un bucket de pondération à renvoyer au demandeur (un seul élément de règle), seule l'adresse IP de ce bucket de pondération est renvoyé. Si vous n'indiquez qu'une seule adresse IP dans le bucket de pondération, seule cette adresse IP figure dans la réponse. Si le bucket de pondération contient plus d'une adresse IP, Cloud DNS renvoie toutes les adresses IP dans un ordre aléatoire.

Règles de routage avec géolocalisation et vérifications de l'état

Pour les règles de routage Géolocalisation pour lesquelles les vérifications d'état sont activées, voici ce qui se produit:

  • Lorsqu'une règle comporte plusieurs adresses IP configurées et toutes les adresses IP ne disposent que d'une vérification de l'état, seules les adresses IP opérationnelles sont renvoyées.
  • Lorsqu'un mélange d'adresses IP vérifiées et non vérifiées se produit, et que toutes les adresses IP vérifiées échouent, Cloud DNS renvoie toutes les adresses IP pour lesquelles la vérification de l'état n'était pas configurée. Dans ce scénario, le basculement automatique vers la géographie suivante la plus proche ne se produit pas.

Journalisation des vérifications d'état

Cloud DNS consigne les vérifications d'état et consigne l'état de fonctionnement les adresses IP pour lesquelles la vérification de l'état est activée lorsque vous interrogez le nom DNS qui fait référence à ces adresses IP.

La journalisation des vérifications d'état vous permet d'effectuer les opérations suivantes :

  • Vérifiez si les règles de routage fonctionnent comme prévu. Pour Exemple:
    • Pour les règles de géolocalisation, vous pouvez vérifier si elles détectent la bonne zone géographique et renvoient le bon ensemble de données de enregistrements de ressources.
    • Pour les règles WRR, cela vous permet de vérifier si elles renvoient les adresses IP avec la bonne pondération.
  • Identifiez les problèmes d'infrastructure avec des backends et des adresses IP spécifiques qui présentent des défaillances.
  • Déterminez pourquoi certains backends ne sont jamais inclus ou sont les seuls à être renvoyés.

Pour en savoir plus, consultez la section Informations relatives aux journaux des vérifications d'état.

Types d'enregistrements compatibles avec les règles de routage DNS

Les règles de routage DNS ne sont pas compatibles avec tous les types d'enregistrements acceptés par Cloud DNS.

Les types d'enregistrements suivants sont acceptés :

Type d'enregistrement Description
A Adresses IPv4 pour les vérifications d'état internes (zone privée) et externes (zone publique).
AAAA Adresses IPv6 pour les vérifications d'état externes (zone publique).
CNAME Noms canoniques Les vérifications d'état ne sont pas acceptées.
MX Enregistrements Mail Exchange Les vérifications d'état ne sont pas acceptées.
SRV Hôte/port (RFC 2782) Les vérifications d'état ne sont pas acceptées.
TXT Données textuelles. Les vérifications d'état ne sont pas acceptées.

Étape suivante