Configurer des règles de routage DNS et des vérifications de l'état

Cette page explique comment configurer des règles de routage DNS et activer les vérifications de l'état à l'aide de Cloud DNS. Avant d'utiliser cette page, familiarisez-vous avec les règles de routage DNS et les vérifications d'état.

Pour utiliser les règles de routage DNS, créez un jeu d'enregistrements de ressources et choisissez l'une des règles de routage DNS suivantes à appliquer au jeu d'enregistrements de ressources:

Les règles de routage DNS acceptent également plusieurs adresses IP pour chaque emplacement géographique. Lorsqu'elles sont spécifiées pour un emplacement géographique donné, plusieurs adresses IP sont renvoyées en fonction d'une règle WRR de pondération égale. Il n'est pas possible de combiner une règle de routage basée sur la géolocalisation avec une règle WRR personnalisée pondérée.

Un seul type de règle de routage peut être appliqué à un jeu d'enregistrements de ressources à la fois. Vous ne pouvez pas combiner de règles de routage, sauf lorsque vous configurez une règle de routage avec basculement, auquel cas vous pouvez définir une règle de routage de géolocalisation comme sauvegarde. L'accès global doit être activé pour les équilibreurs de charge régionaux.

Créer des règles de routage DNS pour les zones privées

Avant de créer des stratégies de routage DNS pour des zones privées, procédez comme suit.

  1. Créez une zone privée.
  2. Configurez l'un des équilibreurs de charge internes suivants :
  3. Créez des règles de transfert pour l'équilibreur de charge interne.
  4. configuré la vérification d'état pour l'équilibreur de charge interne.

Pour créer des règles de routage DNS pour des zones privées, procédez comme suit.

Console

Démarrer la configuration

  1. Dans la console Google Cloud, accédez à la page Zones Cloud DNS.

    Accéder aux zones Cloud DNS

  2. Cliquez sur le nom de la zone gérée à laquelle vous souhaitez ajouter l'enregistrement.

  3. Sur la page Détails de la zone, cliquez sur Ajouter avec une règle de routage.

Données de base

  1. Facultatif: Sur la page Créer un jeu d'enregistrements avec une règle de routage, dans le champ Nom DNS, saisissez un sous-domaine du nom DNS (par exemple, mail). Le point final est automatiquement ajouté.

  2. Dans le champ Type d'enregistrement de ressource, sélectionnez une option.

  3. Pour TTL, saisissez une valeur numérique correspondant à la durée de vie (Time To Live) de l'enregistrement de la ressource, c'est-à-dire le délai pendant lequel il peut être mis en cache. Cette valeur doit être un entier positif.

  4. (Facultatif) Pour Unité TTL, sélectionnez l'unité de temps (par exemple, minutes). La valeur par défaut est minutes.

  5. Cliquez sur Suivant.

Type de règle de routage

  1. Pour Règle de routage, sélectionnez Round robin pondéré, Géolocalisation ou Basculement.
  2. Cliquez sur Suivant.

Données de règle de routage

WRR

  1. Pour Pondéré, saisissez la pondération correspondant à cette sous-section des données d'enregistrement de ressources (RR).

    Cette pondération doit être un nombre non négatif compris entre 0,0 et 1 000,0. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations. Par exemple, si la cible A a une pondération de 25 et la cible B de 75, avec une pondération totale de 100, Cloud DNS achemine 25/100 = 0,25 (25 %) du trafic total vers la cible A et 75/100= 0,75 (75 %) vers la cible B.

  2. Dans la section Cibles IPv4 dont l'état a été vérifié, procédez comme suit:

    1. Dans le champ Project (Projet), sélectionnez le projet dans lequel la règle de transfert existe.
    2. Pour Règle de transfert, sélectionnez une règle de transfert.

      La règle de transfert spécifie une adresse IP interne, un port et l'une des cibles suivantes:

  3. Cliquez sur OK.

  4. (Facultatif) Pour ajouter une autre cible dont l'état a été vérifié, cliquez sur Ajouter une cible.

  5. Facultatif: Pour autoriser les adresses IPv4 sans vérification d'état, procédez comme suit:

    1. Sélectionnez Autoriser les adresses IPv4 sans vérification de l'état.
    2. Dans Adresse IPv4, saisissez une adresse IPv4.
  6. Facultatif: Pour ajouter un autre ensemble de données de routage de stratégie WRR, cliquez sur Ajouter des données de routage.

  7. Cliquez sur Suivant.

Géolocalisation

  1. Pour l'option Géorepérage, sélectionnez Désactivé ou Activé.

    L'activation du géorepérage limite le trafic à une géolocalisation spécifique, même si tous les points de terminaison de cette géolocalisation sont non opérationnels.

  2. Dans Région source, sélectionnez une région source Google Cloud valide.

  3. Dans la section Cibles IPv4 dont l'état a été vérifié, procédez comme suit:

    1. Dans le champ Project (Projet), sélectionnez le projet dans lequel la règle de transfert existe.
    2. Pour Règle de transfert, sélectionnez une règle de transfert.

      La règle de transfert spécifie une adresse IP interne, un port et l'une des cibles suivantes:

  4. Cliquez sur OK.

  5. (Facultatif) Pour ajouter une autre cible dont l'état a été vérifié, cliquez sur Ajouter une cible.

  6. Facultatif: Pour autoriser les adresses IPv4 sans vérification d'état, procédez comme suit:

    1. Sélectionnez Autoriser les adresses IPv4 sans vérification de l'état.
    2. Dans Adresse IPv4, saisissez une adresse IPv4.
  7. Facultatif: Pour ajouter un ensemble d'autres données de routage de règles de géolocalisation, cliquez sur Ajouter des données de routage.

  8. Cliquez sur Suivant.

Basculement

  1. Dans la section Cibles principales dont l'état a été vérifié, procédez comme suit:

    1. Dans le champ Project (Projet), sélectionnez le projet dans lequel la règle de transfert existe.
    2. Pour Règle de transfert, sélectionnez une règle de transfert.

      La règle de transfert spécifie une adresse IP interne, un port et l'une des cibles suivantes:

  2. Dans la section Règle de géolocalisation des sauvegardes, procédez comme suit:

    1. Pour l'option Géorepérage, sélectionnez Désactivé ou Activé. L'activation du géorepérage limite le trafic à une géolocalisation spécifique, même si tous les points de terminaison de cette géolocalisation sont non opérationnels.
    2. Dans Région source, sélectionnez une région source Google Cloud valide.
    3. Dans la section Cibles IPv4 dont l'état a été vérifié, procédez comme suit:

      1. Dans le champ Project (Projet), sélectionnez le projet dans lequel la règle de transfert existe.
      2. Pour Règle de transfert, sélectionnez une règle de transfert.

        La règle de transfert spécifie l'une des options suivantes:

        • Une adresse IP interne, un port et un service de backend régional
        • Un proxy HTTP(S)
        • Un proxy TCP

    Lorsqu'aucune adresse IP principale n'est opérationnelle, le trafic est automatiquement géré conformément à la règle de géolocalisation de secours.

  3. Cliquez sur OK.

  4. (Facultatif) Pour ajouter une autre cible dont l'état a été vérifié, cliquez sur Ajouter une cible.

  5. Facultatif: Pour autoriser les adresses IPv4 sans vérification d'état, procédez comme suit:

    1. Sélectionnez Autoriser les adresses IPv4 sans vérification de l'état.
    2. Dans Adresse IPv4, saisissez une adresse IPv4.
  6. Facultatif: Pour ajouter un autre ensemble de données de routage de règles de géolocalisation de sauvegarde, cliquez sur Ajouter des données de routage.

  7. Dans le champ Trafic minime (%), saisissez le pourcentage de trafic envoyé aux cibles de basculement, quel que soit l'état de vérification de l'état des cibles principales.

  8. Cliquez sur Suivant.

Vérifier et créer

  1. Cliquez sur Vérifier.
  2. Vérifiez la configuration de la règle de routage de votre jeu d'enregistrements Cloud DNS.
  3. Cliquez sur Créer.

gcloud

Pour un jeu d'enregistrements de ressources, vous définissez une stratégie de routage (routingPolicy) ou des données DNS (rrdatas), mais pas les deux. Pour passer d'une stratégie de routage aux données DNS, mettez à jour l'ensemble d'enregistrements de ressources. Par exemple, pour remplacer les données DNS (rrdatas) d'un jeu d'enregistrements de ressources par une règle de routage (routingPolicy), supprimez rrdatas et ajoutez routingPolicy au même jeu d'enregistrements de ressources.

Pour créer des règles de routage DNS pour des zones privées, procédez comme suit.

Exécutez la commande gcloud dns record-sets create suivante :

WRR

gcloud dns record-sets create RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=WRR \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-health-checking

Remplacez les éléments suivants :

  • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
  • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A) Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Types d'enregistrements compatibles avec les règles de routage DNS.
  • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • ROUTING_POLICY_DATA: saisissez une liste au format ${weight_percent}:${rrdatas} délimitée par des points-virgules, telle que .8=203.0.113.1;.2=198.51.100.1. Spécifiez la pondération sous forme de nombre décimal non négatif. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
  • --enable-health-checking : l'option permettant d'activer la vérification d'état. Lorsque vous utilisez cette option, vous devez fournir le nom de la règle de transfert plutôt que l'adresse IP dans le champ --routing-policy-data.

Géolocalisation

gcloud dns record-sets create RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=GEO \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-health-checking

Remplacez les éléments suivants :

  • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
  • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A) Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Types d'enregistrements compatibles avec les règles de routage DNS.
  • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • ROUTING_POLICY_DATA: saisissez une liste au format ${region}=${IP_address} délimitée par des points-virgules, telle que asia-east1=198.51.100.1;us-central1=203.0.113.1. Vous pouvez spécifier plusieurs adresses IP pour une même région en ajoutant des adresses IP séparées par des virgules. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
  • --enable-health-checking : l'option permettant d'activer la vérification d'état. Lorsque vous utilisez cette option, vous devez fournir le nom de la règle de transfert plutôt que l'adresse IP dans le champ --routing-policy-data.

Géolocalisation avec géorepérage

gcloud dns record-sets create RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=GEO \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-geo-fencing \
  --enable-health-checking

Remplacez les éléments suivants :

  • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
  • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A) Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Types d'enregistrements compatibles avec les règles de routage DNS.
  • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • ROUTING_POLICY_DATA: saisissez une liste au format ${region}=${IP_address} délimitée par des points-virgules, telle que asia-east1=198.51.100.1;us-central1=203.0.113.1. Vous pouvez spécifier plusieurs adresses IP pour une même région en ajoutant des adresses IP séparées par des virgules. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
  • --enable-geo-fencing : pour les règles de routage GEO, cette option permet de déterminer si le trafic doit basculer sur plusieurs régions lorsque tous les points de terminaison d'une région sont marqués comme non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Utilisez --no-enable-geo-fencing pour désactiver le géorepérage. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • --enable-health-checking : l'option permettant d'activer la vérification d'état. Lorsque vous utilisez cette option, vous devez fournir le nom de la règle de transfert plutôt que l'adresse IP dans le champ --routing-policy-data.

Basculement

gcloud dns record-sets create RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=FAILOVER  \
  --routing-policy-primary-data=ROUTING_POLICY_PRIMARY_DATA \
  --routing-policy-backup-data-type=ROUTING_POLICY_BACKUP_DATA_TYPE \
  --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \
  --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \
  --enable-geo-fencing \
  --enable-health-checking

Remplacez les éléments suivants :

  • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
  • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A) Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Types d'enregistrements compatibles avec les règles de routage DNS.
  • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • ROUTING_POLICY_PRIMARY_DATA : cible principale à utiliser pour les règles de routage FAILOVER. Cette cible doit être une référence à une ou plusieurs règles de transfert (par exemple, forwarding-rule-1). Tant qu'au moins une de ces règles de transfert est opérationnelle, les adresses IP de toutes les règles de transfert opérationnelles sont utilisées pour répondre aux requêtes.
  • ROUTING_POLICY_BACKUP_DATA_TYPE : pour les règles de routage FAILOVER, c'est le type de règle de routage que les données de sauvegarde utilisent. Il doit s'agir de GEO.
  • ROUTING_POLICY_BACKUP_DATA : cible de sauvegarde à utiliser pour les règles de routage FAILOVER. Ces cibles sont utilisées quand toutes les règles de transfert spécifiées dans --routing-policy-primary-data sont non opérationnelles. Cloud DNS accepte uniquement les cibles de sauvegarde basées sur la géolocalisation. Le format de ce champ correspond à celui des --routing-policy-data lorsque --routing-policy-type = 'GEO' (par exemple asia-east1=forwarding-rule-2).
  • BACKUP_DATA_TRICKLE_RATIO : le ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être entre 0 et 1 (par exemple 0.1). La valeur par défaut est 0.
  • --enable-geo-fencing : pour les règles de routage GEO, cette option permet de déterminer si le trafic doit basculer sur plusieurs régions lorsque tous les points de terminaison d'une région sont marqués comme non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Utilisez --no-enable-geo-fencing pour désactiver le géorepérage. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • --enable-health-checking : l'option permettant d'activer la vérification d'état. Lorsque vous utilisez cette option, vous devez fournir le nom de la règle de transfert plutôt que l'adresse IP dans le champ --routing-policy-data.

API

Utilisez la méthode resourceRecordSets.create.

WRR

POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
{
"name": "RRSET_NAME",
      "type": "RRSET_TYPE",
      "ttl": TTL,
"routingPolicy": {
  "wrr": {
    "items": [
      {
        "weight": WEIGHT,
        "healthCheckedTargets": {
          "internalLoadBalancers": [
            {
              "loadBalancerType": "LOAD_BALANCER_TYPE"
              "ipAddress": "IP_ADDRESS"
              "port" : "PORT_NUMBER"
              "ipProtocol": "IP_PROTOCOL"
              "networkUrl": "NETWORK_URL"
              "project": "PROJECT_ID"
              "region": "REGION"
            }
          ]
        }
      },
      {
        "weight": WEIGHT,
        "healthCheckedTargets": {
          "internalLoadBalancers": [
            {
              "loadBalancerType": "LOAD_BALANCER_TYPE"
              "ipAddress": "IP_ADDRESS"
              "port" : "PORT_NUMBER"
              "ipProtocol": "IP_PROTOCOL"
              "networkUrl": "NETWORK_URL"
              "project": "PROJECT_ID"
              "region": "REGION"
            }
          ]
        }
      },
    ]
  }
}
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
  • WEIGHT: pour les règles WRR, une liste délimitée par des points-virgules au format ${weight_percent}=${rrdatas} (par exemple .8=10.128.1.1;.2=10.130.1.1). Spécifiez la pondération sous forme de nombre décimal non négatif. Remarque: Vous devez spécifier la pondération sous forme de nombre non négatif. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations.
  • LOAD_BALANCER_TYPE: type d'équilibreur de charge, tel que regionalL4ilb, globalL7ilb ou regionalL7ilb. Ce paramètre est facultatif.
  • IP_ADDRESS : adresse IP utilisée par la règle de transfert
  • PORT_NUMBER : numéro de port
  • IP_PROTOCOL : définit le protocole utilisé pour la vérification d'état ; les options valides sont tcp et udp.
  • NETWORK_URL : URL de réseau à laquelle s'applique cette règle de transfert
  • REGION: région dans laquelle vous avez créé la règle de transfert

Géolocalisation

POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
{
          "name": "RRSET_NAME",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "routingPolicy": {
        "geo": {
            "items": [
            {
                "location": "LOCATION",
                "healthCheckedTargets": {
                  "internalLoadBalancers": [
                    {
                    "loadBalancerType": "LOAD_BALANCER_TYPE"
                    "ipAddress": "IP_ADDRESS"
                    "port" : "PORT_NUMBER"
                    "ipProtocol": "IP_PROTOCOL"
                    "networkUrl": "NETWORK_URL"
                    "project": "PROJECT_ID"
                    "region": "REGION"
                    }
                  ]
                }
            },
            {
                "location": "LOCATION",
                "healthCheckedTargets": {
                  "internalLoadBalancers": [
                    {
                    "loadBalancerType": "LOAD_BALANCING_TYPE"
                    "ipAddress": "IP_ADDRESS"
                    "port" : "PORT_NUMBER"
                    "ipProtocol": "IP_PROTOCOL"
                    "networkUrl": "NETWORK_URL"
                    "project": "PROJECT_ID"
                    "region": "REGION"
                    }
                  ]
                }
            },
            }
        ]

      }
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
  • LOCATION: pour les stratégies GEO, la géolocalisation pour laquelle vous devez créer la stratégie, par exemple asia-east1
  • LOAD_BALANCER_TYPE: type d'équilibreur de charge, tel que regionalL4ilb, globalL7ilb ou regionalL7ilb. Ce paramètre est facultatif.
  • IP_ADDRESS : adresse IP utilisée par la règle de transfert
  • PORT_NUMBER: numéro de port de l'équilibreur de charge interne
  • IP_PROTOCOL : définit le protocole utilisé pour la vérification d'état ; les options valides sont tcp et udp.
  • NETWORK_URL : URL de réseau à laquelle s'applique cette règle de transfert
  • REGION : région dans laquelle vous avez créé la règle de transfert

Basculement

Avec l'option de basculement, Cloud DNS accepte uniquement les règles GEO.

POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
{
"name": "RRSET_NAME",
      "type": "RRSET_TYPE",
      "ttl": TTL,
"routingPolicy": {
  "primaryBackup": {
    "trickleTraffic": TRICKLE_TRAFFIC,
    "primaryTargets": {
      "internalLoadBalancers": [
        {
          "ipAddress": "IP_ADDRESS"
          "ipProtocol": "IP_PROTOCOL"
          "loadBalancerType": "LOAD_BALANCER_TYPE"
          "networkUrl": "NETWORK_URL"
          "port": "PORT_NUMBER"
          "project": "PROJECT_ID"
          "region": "REGION"
        }
      ]
    },
    "backupGeoTargets": {
      "enableFencing": ENABLE_FENCING,
      "items": [
        {
          "location": "LOCATION",
          "rrdatas": [
            "RRDATA"
          ]
        },
        {
          "location": "LOCATION",
          "rrdatas": [
            "RRDATA"
          ]
        }
      ]
    }
  },
}
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
  • TRICKLE_TRAFFIC : le ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être entre 0 et 1 (par exemple 0.1).
  • IP_ADDRESS : adresse IP utilisée par la règle de transfert
  • PORT_NUMBER : numéro de port
  • IP_PROTOCOL : définit le protocole utilisé pour la vérification d'état ; les options valides sont tcp et udp.
  • NETWORK_URL : URL de réseau à laquelle s'applique cette règle de transfert
  • PORT_NUMBER: numéro de port de l'équilibreur de charge interne
  • REGION : région dans laquelle vous avez créé la règle de transfert
  • ENABLE_FENCING : pour les règles de routage GEO, cela permet de déterminer si le trafic doit basculer sur plusieurs régions si tous les points de terminaison d'une région sont non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • LOCATION: pour les stratégies GEO, la géolocalisation pour laquelle vous devez créer la stratégie, par exemple asia-east1
  • WEIGHT: pour les règles WRR, une liste délimitée par des points-virgules au format ${weight_percent}=${rrdatas} (par exemple .8=10.128.1.1;.2=10.130.1.1). Spécifiez la pondération sous forme de nombre décimal non négatif.
  • RRDATA: valeur arbitraire associée au jeu d'enregistrements de ressources, telle que198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1 rrdata2 rrdata3, comme198.51.100.1 à203.0.113.1...

Créer des règles de routage DNS pour les zones publiques (version Preview)

Pour créer des règles de routage DNS pour les zones publiques, procédez comme suit :

Console

Démarrer la configuration

  1. Dans la console Google Cloud, accédez à la page Zones Cloud DNS.

    Accéder aux zones Cloud DNS

  2. Cliquez sur le nom de la zone gérée à laquelle vous souhaitez ajouter l'enregistrement.

  3. Sur la page Détails de la zone, cliquez sur Ajouter avec une règle de routage.

Données de base

  1. Facultatif: sur la page Créer un jeu d'enregistrements avec une règle de routage, dans le champ Nom DNS, saisissez un sous-domaine du nom DNS prérempli (par exemple, mail). Le point final est automatiquement ajouté.

  2. Dans le champ Type d'enregistrement de ressource, sélectionnez une option.

  3. Pour TTL, saisissez une valeur numérique correspondant à la durée de vie (Time To Live) de l'enregistrement de la ressource, c'est-à-dire le délai pendant lequel il peut être mis en cache. Cette valeur doit être un entier positif.

  4. (Facultatif) Pour Unité TTL, sélectionnez l'unité de temps (par exemple, minutes). La valeur par défaut est minutes.

  5. Cliquez sur Suivant.

Type de règle de routage

  1. Pour Règle de routage, sélectionnez Round robin pondéré, Géolocalisation ou Basculement.
  2. Cliquez sur Suivant.

Données de règle de routage

WRR

  1. Pour Pondéré, saisissez la pondération correspondant à cette sous-section des données d'enregistrement de ressources (RR).

    Cette pondération doit être un nombre non négatif compris entre 0,0 et 1 000,0. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations. Par exemple, si la cible A a une pondération de 25 et la cible B de 75, avec une pondération totale de 100, Cloud DNS achemine 25/100 = 0,25 (25 %) du trafic total vers la cible A et 75/100= 0,75 (75 %) vers la cible B.

  2. Dans la section Adresses IP externes, procédez comme suit:

    1. Dans Adresse IP , saisissez une adresse IP externe.
    2. Facultatif: Pour sélectionner une adresse IP externe d'une ressource Google Cloud dans le projet en cours, cliquez sur Sélectionner.
    3. Pour activer les vérifications de l'état, sélectionnez Vérification de l'état 1.
    4. Facultatif: Pour ajouter une autre adresse IP externe, cliquez sur Ajouter une adresse IP.
    5. Cliquez sur OK.
  3. Si vous avez activé la vérification de l'état à l'étape précédente, dans la liste Vérification de l'état, sélectionnez une vérification de l'état ou créez-en une en suivant ces étapes.

    1. Cliquez sur Créer une vérification d'état.
    2. Dans le champ Nom, saisissez le nom de la vérification d'état.
    3. Facultatif: Dans le champ Description, saisissez une description de l'état de santé.
    4. Dans Régions sources, sélectionnez trois régions Google Cloud à partir desquelles vous souhaitez envoyer des vérifications d'état.
    5. Facultatif: Dans la liste Protocole, sélectionnez un protocole.
    6. Pour Port, saisissez un numéro de port.

      Le protocole et le numéro de port déterminent la manière dont Cloud DNS envoie les vérifications d'état.

    7. Facultatif: pour configurer la vérification de l'état basée sur le contenu, pour Response (Réponse), fournissez une chaîne de réponse attendue, chacune ayant une longueur maximale de 1 024 caractères ASCII (mono-octets).

    8. Facultatif: Pour activer les journaux de vérification de l'état;état, sélectionnez Activé pour Journaux.

    9. Dans Intervalle entre deux tests, saisissez l'intervalle de temps en secondes entre les vérifications d'état. L'intervalle entre deux tests correspond à la durée écoulée entre le début d'une vérification émise par un vérificateur donné et le début de la vérification suivante émise par le même vérificateur.

    10. Dans Délai avant expiration, saisissez la durée en secondes pendant laquelle Google Cloud doit attendre une réponse à une vérification.

    11. Pour Seuil sanitaire, saisissez le nombre de vérifications séquentielles réussies pour qu'un backend soit considéré comme opérationnel.

    12. Pour Seuil non opérationnel, saisissez le nombre de résultats de vérifications consécutifs ayant échoué pour qu'un backend soit considéré comme non opérationnel.

    13. Cliquez sur Créer.

  4. Cliquez sur Suivant.

Géolocalisation

  1. Pour l'option Géorepérage, sélectionnez Désactivé ou Activé. L'activation du géorepérage limite le trafic à une géolocalisation spécifique, même si tous les points de terminaison de cette géolocalisation sont non opérationnels.
  2. Dans Région source, sélectionnez une région source Google Cloud valide.
  3. Dans la section Adresses IP externes, procédez comme suit :
    1. Dans Adresse IP , saisissez une adresse IP externe.
    2. Facultatif: Pour sélectionner une adresse IP externe d'une ressource Google Cloud dans le projet en cours, cliquez sur Sélectionner.
    3. Pour activer les vérifications de l'état, sélectionnez Vérification de l'état 1.
    4. Facultatif: Pour ajouter une autre adresse IP externe, cliquez sur Ajouter une adresse IP.
    5. Cliquez sur OK.
  4. Si vous avez activé la vérification de l'état à l'étape précédente, dans la liste Vérification de l'état, sélectionnez une vérification de l'état ou créez-en une en suivant ces étapes.

    1. Cliquez sur Créer une vérification d'état.
    2. Dans le champ Nom, saisissez le nom de la vérification d'état.
    3. Facultatif: Dans le champ Description, saisissez une description de l'vérification de l'état.
    4. Dans Régions sources, sélectionnez trois régions Google Cloud à partir desquelles vous souhaitez envoyer des vérifications d'état.
    5. Facultatif: Dans la liste Protocole, sélectionnez un protocole.
    6. Pour Port, saisissez un numéro de port.

      Le protocole et le numéro de port déterminent la manière dont Cloud DNS envoie les vérifications d'état.

    7. Facultatif: pour configurer la vérification de l'état basée sur le contenu, pour Response (Réponse), fournissez une chaîne de réponse attendue, chacune ayant une longueur maximale de 1 024 caractères ASCII (mono-octets).

    8. Facultatif: Pour activer les journaux de vérification de l'état;état, sélectionnez Activé pour Journaux.

    9. Dans Intervalle entre deux tests, saisissez l'intervalle de temps en secondes entre les vérifications d'état. L'intervalle entre deux tests correspond à la durée écoulée entre le début d'une vérification émise par un vérificateur donné et le début de la vérification suivante émise par le même vérificateur.

    10. Dans Délai avant expiration, saisissez la durée en secondes pendant laquelle Google Cloud doit attendre une réponse à une vérification.

    11. Pour Seuil sanitaire, saisissez le nombre de vérifications séquentielles réussies pour qu'un backend soit considéré comme opérationnel.

    12. Pour Seuil non opérationnel, saisissez le nombre de résultats de vérifications consécutifs ayant échoué pour qu'un backend soit considéré comme non opérationnel.

    13. Cliquez sur Créer.

  5. Cliquez sur Suivant.

Basculement

  1. Dans la section Cible de l'adresse IP externe principale, pour Adresse IP, saisissez l'adresse IP externe principale qui est vérifiée pour cet enregistrement.
  2. Facultatif:Pour sélectionner une adresse IP externe principale d'une ressource Google Cloud dans le projet en cours, cliquez sur Sélectionner.
  3. Facultatif: Pour ajouter une autre adresse IP externe principale, cliquez sur Ajouter une cible. Lorsque DNSSEC est activé, vous ne pouvez ajouter qu'une seule cible d'adresse IP externe principale .
  4. Dans la section Règle de géolocalisation de la sauvegarde, procédez comme suit :
    1. Pour l'option Géorepérage, sélectionnez Désactivé ou Activé. L'activation du géorepérage limite le trafic à une géolocalisation spécifique, même si tous les points de terminaison de cette géolocalisation sont non opérationnels.
    2. Dans Région source, sélectionnez une région source Google Cloud valide.
    3. Dans la section Adresses IP externes, procédez comme suit :
      1. Dans Adresse IP , saisissez une adresse IP externe.
      2. Facultatif: Pour sélectionner une adresse IP externe d'une ressource Google Cloud dans le projet en cours, cliquez sur Sélectionner.
      3. Pour activer les vérifications de l'état, sélectionnez Vérification de l'état 1.
      4. Facultatif: Pour ajouter une autre adresse IP externe, cliquez sur Ajouter une adresse IP.
    4. Cliquez sur OK.
  5. Si vous avez activé la vérification de l'état à l'étape précédente, sélectionnez une vérification de l'état'état dans la liste Vérification de l'état.

    Si vous ne disposez pas d'une vérification de l'état'état, créez-en une.

    1. Cliquez sur Créer une vérification d'état.
    2. Dans le champ Nom, saisissez le nom de la vérification d'état.
    3. Facultatif: Dans le champ Description, saisissez une description de l'état de santé.
    4. Dans Régions sources, sélectionnez trois régions Google Cloud à partir desquelles vous souhaitez envoyer des vérifications d'état.
    5. Facultatif: Dans la liste Protocole, sélectionnez un protocole.
    6. Pour Port, saisissez un numéro de port.

    Le protocole et le numéro de port déterminent la manière dont Cloud DNS envoie les vérifications d'état.

    1. Facultatif: pour configurer la vérification de l'état basée sur le contenu, pour Response (Réponse), fournissez une chaîne de réponse attendue, chacune ayant une longueur maximale de 1 024 caractères ASCII (mono-octets).
    2. Facultatif: Pour activer les journaux de vérification de l'état;état, sélectionnez Activé pour Journaux.
    3. Dans Intervalle entre deux tests, saisissez l'intervalle de temps en secondes entre les vérifications d'état. L'intervalle entre deux tests correspond à la durée écoulée entre le début d'une vérification émise par un vérificateur donné et le début de la vérification suivante émise par le même vérificateur.
    4. Dans Délai avant expiration, saisissez la durée en secondes pendant laquelle Google Cloud doit attendre une réponse à une vérification.
    5. Pour Seuil sanitaire, saisissez le nombre de vérifications séquentielles réussies pour qu'un backend soit considéré comme opérationnel.
    6. Pour Seuil non opérationnel, saisissez le nombre de résultats de vérifications consécutifs ayant échoué pour qu'un backend soit considéré comme non opérationnel.
    7. Cliquez sur Créer.
  6. Dans le champ Trafic minime (%), saisissez le pourcentage de trafic envoyé aux cibles de basculement, quel que soit l'état de vérification de l'état des cibles principales.

  7. Dans la liste Vérification de l'état, sélectionnez une vérification de l'état.

  8. Cliquez sur Suivant.

Vérifier et créer

  1. Cliquez sur Vérifier.
  2. Vérifiez la configuration de la règle de routage de votre jeu d'enregistrements Cloud DNS.
  3. Cliquez sur Créer.

gcloud

Pour créer des règles de routage DNS pour les zones publiques, procédez comme suit :

  1. Pour activer la vérification de l'état dans les règles de routage DNS pour les zones publiques, créez une vérification de l'état'état pour les points de terminaison externes.

    Exécutez la commande gcloud beta compute health-checks create :

    gcloud beta compute health-checks create PROTOCOL HEALTH_CHECK_NAME \
        --global \
        --check-interval=CHECK_INTERVAL \
        --source-regions=SOURCE_REGIONS \
        --port=PORT_NUMBER
    

    Remplacez les éléments suivants :

    • PROTOCOL: protocole utilisé pour la vérification de l'état. Les options valides sont http, https, ssl ou tcp.
    • HEALTH_CHECK_NAME : nom de la vérification d'état.
    • CHECK_INTERVAL: durée écoulée entre le début d'une connexion du système de test de vérification d'état et le début de la connexion suivante. Cette valeur est exprimée en secondes. La valeur CHECK_INTERVAL doit être comprise entre 30 et 300 secondes.
    • SOURCE_REGIONS: liste de régions Google Cloud, séparées par une virgule, à partir desquelles vous souhaitez envoyer des sondes de vérification de l'état;état.
    • PORT_NUMBER: numéro de port pour les requêtes de vérification de l'état.
  2. Pour créer un ResourceRecordSet et lui appliquer une règle de routage, exécutez la commande gcloud beta dns record-sets create.

    WRR

    gcloud beta dns record-sets create RRSET_NAME \
        --ttl=TTL \
        --type=RRSET_TYPE \
        --zone=MANAGED_ZONE \
        --routing-policy-type=WRR \
        --routing-policy-data=ROUTING_POLICY_DATA \
        --health-check=HEALTH_CHECK_NAME
    

    Remplacez les éléments suivants :

    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30).
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • ROUTING_POLICY_DATA: données de la règle de routage. Saisissez une liste au format ${weight_percent}:${rrdatas} délimitée par des points-virgules, telle que .8=203.0.113.1;.2=198.51.100.1. Spécifiez la pondération sous forme de nombre décimal non négatif. La pondération doit être un nombre non négatif compris entre 0 et 1000.
    • HEALTH_CHECK_NAME: nom de la vérification de l'état que vous avez créée à l'étape précédente.

    Géolocalisation

    gcloud beta dns record-sets create RRSET_NAME \
        --ttl=TTL \
        --type=RRSET_TYPE \
        --zone=MANAGED_ZONE \
        --routing-policy-type=GEO \
        --routing-policy-data=ROUTING_POLICY_DATA \
        --health-check=HEALTH_CHECK_NAME
    

    Remplacez les éléments suivants :

    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30).
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • ROUTING_POLICY_DATA: données de la règle de routage. Saisissez une liste au format ${region}=${IP_address},${IP_address} délimitée par des points-virgules, telle que asia-east1=198.51.100.1;us-central1=203.0.113.1, 203.0.113.2. Vous pouvez spécifier plusieurs adresses IP pour une même région en ajoutant des adresses IP séparées par des virgules. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
    • HEALTH_CHECK_NAME: nom de la vérification de l'état que vous avez créée à l'étape précédente.

    Géolocalisation avec géorepérage

    gcloud beta dns record-sets create RRSET_NAME \
        --ttl=TTL \
        --type=RRSET_TYPE \
        --zone=MANAGED_ZONE \
        --routing-policy-type=GEO \
        --routing-policy-data=ROUTING_POLICY_DATA \
        --health-check=HEALTH_CHECK_NAME \
        --enable-geo-fencing
    

    Remplacez les éléments suivants :

    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30).
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • ROUTING_POLICY_DATA: données de la règle de routage. Saisissez une liste au format ${region}=${IP_address} délimitée par des points-virgules, telle que asia-east1=198.51.100.1;us-central1=203.0.113.1. Vous pouvez spécifier plusieurs adresses IP pour une même région en ajoutant des adresses IP séparées par des virgules. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
    • HEALTH_CHECK_NAME: nom de la vérification de l'état que vous avez créée à l'étape précédente.

      --enable-geo-fencing : pour les règles de routage GEO, cela permet de déterminer si le trafic doit basculer sur plusieurs régions si tous les points de terminaison d'une région sont non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Utilisez --no-enable-geo-fencing pour désactiver le géorepérage. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.

    Basculement

    gcloud beta dns record-sets create RRSET_NAME \
        --ttl=TTL \
        --type=RRSET_TYPE \
        --zone=MANAGED_ZONE \
        --routing-policy-type=FAILOVER \
        --routing-policy-primary-data=ROUTING_POLICY_PRIMARY_DATA \
        --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \
        --routing-policy-backup-data-type=ROUTING_POLICY_BACKUP_DATA_TYPE \
        --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \
        --health-check=HEALTH_CHECK_NAME
    

    Remplacez les éléments suivants :

    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • ROUTING_POLICY_PRIMARY_DATA: cible principale à utiliser pour les règles de routage FAILOVER. Cette cible doit être une référence à une ou plusieurs règles de transfert (par exemple, forwarding-rule-1). Tant qu'au moins une de ces règles de transfert est opérationnelle, les adresses IP de toutes les règles de transfert opérationnelles sont utilisées pour répondre aux requêtes.
    • ROUTING_POLICY_BACKUP_DATA: cible de sauvegarde à utiliser pour les règles de routage FAILOVER. Ces cibles sont utilisées quand toutes les règles de transfert spécifiées dans --routing-policy-primary-data sont non opérationnelles. Cloud DNS accepte uniquement les cibles de sauvegarde basées sur la géolocalisation. Le format de ce champ correspond à celui des --routing-policy-data lorsque --routing-policy-type = 'GEO' (par exemple asia-east1=forwarding-rule-2).
    • ROUTING_POLICY_BACKUP_DATA_TYPE: pour les règles de routage FAILOVER, c'est le type de règle de routage que les données de sauvegarde utilisent. Cette valeur doit être GEO.
    • BACKUP_DATA_TRICKLE_RATIO: ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être compris entre 0 et 1 (par exemple, 0.1). La valeur par défaut est 0.
    • HEALTH_CHECK_NAME: nom de la vérification de l'état que vous avez créée à l'étape précédente.

API

  1. Pour activer la vérification de l'état dans les règles de routage DNS pour les zones publiques, utilisez la méthode healthChecks.insert.

  2. Pour créer un ResourceRecordSet et lui appliquer une règle de routage, utilisez la méthode resourceRecordSets.create.

    WRR

        POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
        {
            "name": "RRSET_NAME",
            "type": "RRSET_TYPE",
            "ttl": TTL,
            "routingPolicy": {
                "healthCheck": "https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/healthChecks/HEALTH_CHECK_NAME"
                "wrr": {
                    "items": [{
                        "weight": WEIGHT,
                        "healthCheckedTargets": {
                            "rrdata": ["RRDATA"]
                        }
                    }, {
                        "weight": 1.0,
                        "healthCheckedTargets": {
                            "rrdata": ["RRDATA", "RRDATA"]
                        }
                    }]
                }
            }
        }
      

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié, tel que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • HEALTH_CHECK_NAME : nom de la vérification d'état.
    • WEIGHT: pour les règles WRR, une liste délimitée par des points-virgules au format ${weight_percent}=${rrdatas} (par exemple .8=10.128.1.1;.2=10.130.1.1). Spécifiez la pondération sous forme de nombre décimal non négatif. Remarque: Vous devez spécifier la pondération sous forme de nombre non négatif. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations.
    • RRDATA: valeur arbitraire associée au jeu d'enregistrements de ressources, telle que 198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1,rrdata2,rrdata3, comme 198.51.100.1,203.0.113.1.

    Géolocalisation

        POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
        {
            "name": "RRSET_NAME",
            "type": "RRSET_TYPE",
            "ttl": TTL,
            "routingPolicy": {
                "healthCheck": "https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/healthChecks/HEALTH_CHECK_NAME"
                "geo": {
              "enableFencing": ENABLE_FENCING
                    "items": [{
                        "location": "LOCATION",
                        "healthCheckedTargets": {
                            "rrdata": ["RRDATA"]
                        }
                    }, {
                        "location": "LOCATION",
                        "healthCheckedTargets": {
                            "rrdata": ["RRDATA", "RRDATA"]
                        }
                    }]
                }
            }
        }
      

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié, tel que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
    • HEALTH_CHECK_NAME : nom de la vérification d'état.
    • ENABLE_FENCING : pour les règles de routage GEO, cela permet de déterminer si le trafic doit basculer sur plusieurs régions si tous les points de terminaison d'une région sont non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. Les options valides sont true et false. Le paramètre par défaut est false.
    • LOCATION: pour les règles GEO, la géolocalisation pour laquelle vous devez créer la règle (par exemple asia-east1).
    • RRDATA: valeur arbitraire associée au jeu d'enregistrements de ressources, telle que 198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1,rrdata2,rrdata3, comme 198.51.100.1,203.0.113.1.

    Basculement

    Avec l'option de basculement, Cloud DNS accepte uniquement les règles GEO.

        POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
        {
            "name": "RRSET_NAME",
            "type": "RRSET_TYPE",
            "ttl": TTL,
            "routingPolicy": {
                "healthCheck": "https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/healthChecks/HEALTH_CHECK_NAME"
                "primaryBackup": {
                    "trickleTraffic": TRICKLE_TRAFFIC,
                    "primaryTargets": {
                        "rrdata": ["RRDATA"]
                    }
                    "backupGeoTargets": {
                        "enableFencing": ENABLE_FENCING,
                        "items": [{
                            "location": "LOCATION",
                            "rrdatas": ["RRDATA]
                        }, {
                            "location": "LOCATION",
                            "rrdatas": ["RRDATA", "RRDATA"]
                        }]
                    }
                }
            }
        }
      

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet
    • MANAGED_ZONE: zone gérée avec laquelle ce ResourceRecordSet est affilié, tel que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
    • RRSET_NAME: nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
    • RRSET_TYPE: type d'enregistrement de ressources de ce ResourceRecordSet (par exemple A)
    • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple 30).
    • HEALTH_CHECK_NAME : nom de la vérification d'état.
    • TRICKLE_TRAFFIC: le ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être compris entre 0 et 1 (par exemple 0.1).
    • RRDATA: valeur arbitraire associée au jeu d'enregistrements de ressources, telle que 198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1,rrdata2,rrdata3, comme 198.51.100.1,203.0.113.1.
    • ENABLE_FENCING: pour les règles de routage GEO, cela permet de déterminer si le trafic doit basculer sur plusieurs régions si tous les points de terminaison d'une région sont non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. Le paramètre par défaut est false.
    • LOCATION: pour les règles GEO, la géolocalisation pour laquelle vous devez créer la règle (par exemple asia-east1).

Mettre à jour les règles de routage DNS

Pour mettre à jour la stratégie de routage d'un jeu d'enregistrements de ressources, procédez comme suit.

Console

  1. Dans la console Google Cloud, accédez à la page Zones Cloud DNS.

    Accéder aux zones Cloud DNS

  2. Cliquez sur la zone pour laquelle vous souhaitez mettre à jour la règle de routage du jeu d'enregistrements de ressources.

  3. Sur la page Détails de la zone, à côté du jeu d'enregistrements de ressources que vous souhaitez mettre à jour, cliquez sur Modifier.

  4. Une fois les modifications effectuées, cliquez sur Enregistrer.

gcloud

Exécutez la commande gcloud dns record-sets update suivante :

WRR

gcloud dns record-sets update RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=WRR \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-health-checking

Géolocalisation

gcloud dns record-sets update RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=GEO \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-health-checking

Géolocalisation avec géorepérage

gcloud dns record-sets update RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=GEO \
  --routing-policy-data=ROUTING_POLICY_DATA \
  --enable-geo-fencing
  --enable-health-checking

Basculement

gcloud dns record-sets update RRSET_NAME \
  --ttl=TTL \
  --type=RRSET_TYPE \
  --zone=MANAGED_ZONE \
  --routing-policy-type=FAILOVER \
  --enable-geo-fencing \
  --routing-policy-primary-data=ROUTING_POLICY_PRIMARY_DATA \
  --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \
  --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \
  --enable-health-checking

Remplacez les éléments suivants :

  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A

    Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Sélectionner des types d'enregistrements de ressources.

  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié (par exemple service-zone). Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.

  • ROUTING_POLICY_TYPE: type de règle de routage.

    Saisissez WRR pour la règle de routage round robin pondéré, GEO pour la règle de géolocalisation et FAILOVER pour la règle de basculement. Vous ne pouvez pas modifier ce champ une fois qu'un type de règle a été choisi. Vous pouvez uniquement supprimer la règle et ajouter une règle de type différent.

  • ROUTING_POLICY_DATA : données de la règle de routage

    • Pour --routing-policy-type=WRR, saisissez une liste au format ${weight_percent}:${rrdatas} délimitée par des points-virgules, telle que .8=203.0.113.1;.2=198.51.100.1. Spécifiez la pondération sous forme de nombre décimal non négatif. Le ratio du trafic acheminé vers la cible est calculé à partir du ratio du poids individuel sur le total pour toutes les pondérations. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
    • Pour --routing-policy-type=GEO, saisissez une liste au format ${region}=${IP_address} délimitée par des points-virgules, telle que asia-east1=198.51.100.1;us-central1=203.0.113.1. Vous pouvez spécifier plusieurs adresses IP pour une même région en ajoutant des adresses IP séparées par des virgules. Les noms de règles de transfert sont des valeurs acceptées et entraînent l'activation de la vérification d'état.
    • Pour --routing-policy-type=FAILOVER, saisissez le nom de la règle de transfert que vous avez créé au format ${region}=${Forwarding rule name}.

  • --enable-geo-fencing: pour les règles de routage GEO, cette option permet de déterminer si le trafic doit basculer sur plusieurs régions lorsque tous les points de terminaison d'une région sont marqués comme non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Utilisez --no-enable-geo-fencing pour désactiver le géorepérage. Si elle n'est pas définie, tous les points de terminaison d'une région sont non opérationnels et Cloud DNS dirige les requêtes vers la région la plus proche. Le paramètre par défaut est false.

  • ROUTING_POLICY_PRIMARY_DATA : cible principale à utiliser pour les règles de routage FAILOVER. Cette cible doit être une référence à une ou plusieurs règles de transfert (par exemple, forwarding-rule-1). Tant qu'au moins une de ces règles de transfert est opérationnelle, les adresses IP de toutes les règles de transfert opérationnelles sont utilisées pour répondre aux requêtes.

  • ROUTING_POLICY_BACKUP_DATA : cible de sauvegarde à utiliser pour les règles de routage FAILOVER. Ces cibles sont utilisées quand toutes les règles de transfert spécifiées dans --routing-policy-primary-data sont non opérationnelles. Cloud DNS accepte uniquement les cibles de sauvegarde basées sur la géolocalisation. Le format de ce champ correspond à celui des --routing-policy-data lorsque --routing-policy-type = 'GEO' (par exemple asia-east1=forwarding-rule-2).

  • BACKUP_DATA_TRICKLE_RATIO : le ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être entre 0 et 1 (par exemple 0.1). La valeur par défaut est 0.

  • --enable-health-checking : active la vérification de l'état des règles de transfert qui sont fournies en tant que rrdata aux --routing-policy-data.

API

Utilisez la méthode resourceRecordSets.patch. Spécifiez une seule des options rrset.rrdatas ou rrset.routingPolicy. Si vous spécifiez routingPolicy, vous devez spécifier le nouveau champ routingPolicy dans son intégralité.

WRR

Pour les règles WRR, utilisez la méthode suivante:

PATCH https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
{
      "name": "RRSET_NAME.",
      "type": "RRSET_TYPE",
      "ttl": TTL,
      "routingPolicy": {
        "wrrPolicy": {
            "item": [
                  {
                      "weight": WEIGHT,
                      "rrdatas": ["RRDATA"]
                  },
                  {
                      "weight": WEIGHT,
                      "rrdatas": ["RRDATA"]
                  }
            ],
          }
    }
}

Géolocalisation

Utilisez la méthode suivante:

PATCH https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets
{
          "name": "RRSET_NAME",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "routingPolicy": {
        "geo": {
            "items": [
            {
                "location": "LOCATION",
                "healthCheckedTargets": {
                  "internalLoadBalancers": [
                    {
                    "loadBalancerType": "LOAD_BALANCER_TYPE"
                    "ipAddress": "IP_ADDRESS"
                    "port" : "PORT_NUMBER"
                    "ipProtocol": "IP_PROTOCOL"
                    "networkUrl": "NETWORK_URL"
                    "project": "PROJECT"
                    "region": "REGION"
                    }
                  ]
                }
            },
            {
                "location": "LOCATION",
                "healthCheckedTargets": {
                  "internalLoadBalancers": [
                    {
                    "loadBalancerType": "LOAD_BALANCING_TYPE"
                    "ipAddress": "IP_ADDRESS"
                    "port" : "PORT_NUMBER"
                    "ipProtocol": "IP_PROTOCOL"
                    "networkUrl": "NETWORK_URL"
                    "project": "PROJECT"
                    "region": "REGION"
                    }
                  ]
                }
            },
            }
        ]

      }
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A
  • TTL: valeur TTL (Time To Live) exprimée en secondes que le résolveur met en cache pour ce ResourceRecordSet (par exemple, 30)
  • TRICKLE_TRAFFIC : le ratio de trafic à envoyer aux cibles de sauvegarde, même si les cibles principales sont opérationnelles. Le ratio doit être entre 0 et 1 (par exemple 0.1).
  • ENABLE_FENCING : pour les règles de routage GEO, cela permet de déterminer si le trafic doit basculer sur plusieurs régions si tous les points de terminaison d'une région sont non opérationnels. Lorsque cette option est définie, Cloud DNS dirige toujours les requêtes vers la région la plus proche, même si tous les points de terminaison de cette région sont non opérationnels. Si elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche lorsque tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • LOCATION : pour les règles GEO, la géolocalisation pour laquelle vous devez mettre à jour la règle (par exemple asia-east1).
  • WEIGHT: pour les règles WRR, une liste délimitée par des points-virgules au format ${weight_percent}=${rrdatas} (par exemple .8=10.128.1.1;.2=10.130.1.1). Spécifiez la pondération sous forme de nombre décimal non négatif.
  • RRDATA: valeur arbitraire associée au jeu d'enregistrements de ressources, telle que198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1 rrdata2 rrdata3, comme198.51.100.1 à203.0.113.1...
  • LOAD_BALANCER_TYPE: type d'équilibreur de charge, tel que regionalL4ilb, globalL7ilb ou regionalL7ilb. Ce paramètre est facultatif.
  • IP_ADDRESS : adresse IP utilisée par la règle de transfert
  • PORT_NUMBER : numéro de port
  • IP_PROTOCOL : définit le protocole utilisé pour la vérification d'état ; les options valides sont tcp et udp.
  • NETWORK_URL : URL de réseau à laquelle s'applique cette règle de transfert
  • REGION : région dans laquelle vous avez créé la règle de transfert

Supprimer des règles de routage DNS

Pour supprimer une règle de routage, vous devez supprimer le jeu d'enregistrements de ressources qui la contient. Pour cela, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Zones Cloud DNS.

    Accéder aux zones Cloud DNS

  2. Cliquez sur la zone pour laquelle vous souhaitez supprimer le jeu d'enregistrements de ressources.

  3. Sur la page Détails de la zone, cochez la case à côté du nom DNS du jeu d'enregistrements de ressources que vous souhaitez supprimer.

  4. Cliquez sur Supprimer les jeux d'enregistrements.

gcloud

Exécutez la commande gcloud dns record-sets delete suivante :

gcloud dns record-sets delete RRSET_NAME \
    --type=RRSET_TYPE \
    --zone=MANAGED_ZONE \

Remplacez les éléments suivants :

  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, service.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A

    Pour obtenir la liste des types d'enregistrements compatibles, consultez la section Sélectionner des types d'enregistrements de ressources.

  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que service-zone. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.

API

Exécutez la méthode resourceRecordSets.delete :

DELETE https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets/RRSET_NAME/RRSET_TYPE

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • MANAGED_ZONE : zone gérée avec laquelle ce ResourceRecordSet est affilié, telle que my-zone-name. Le nom de ce ResourceRecordSet doit avoir le nom DNS de la zone gérée comme suffixe.
  • RRSET_NAME : nom DNS correspondant aux requêtes entrantes avec le nom DNS de cette zone en tant que suffixe (par exemple, test.example.com)
  • RRSET_TYPE: type d'enregistrement de ressource de ce ResourceRecordSet, tel que A

Étapes suivantes