Configurer les règles de routage DNS et les 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 de l'état.

Avant de commencer

  • Pour configurer des règles de routage DNS, créez un jeu d'enregistrements de ressources et choisissez l'une des règles de routage DNS suivantes à y appliquer.

  • Les règles de routage DNS acceptent plusieurs adresses IP par emplacement géographique dans la règle de routage de géolocalisation. Lorsque vous spécifiez plusieurs adresses IP pour un emplacement géographique, Cloud DNS renvoie toutes les adresses IP spécifiées pour cet emplacement. Vous ne pouvez pas combiner une règle de routage de géolocalisation avec une règle WRR personnalisée pondérée.

  • N'appliquez qu'un seul type de règle de routage à un jeu d'enregistrements de ressources à la fois.

  • Assurez-vous d'activer l'accès mondial pour les équilibreurs de charge régionaux.

  • Avant de configurer des règles de routage DNS pour les zones publiques, désactivez la contrainte de règle d'administration constraints/compute.disableInternetNetworkEndpointGroup. Pour en savoir plus, consultez Contraintes liées aux règles d'administration.

  • Assurez-vous de disposer des autorisations requises pour configurer des règles de routage DNS.

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

Avant de créer des règles de routage DNS pour les 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. Configurez la vérification d'état pour l'équilibreur de charge interne.

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

Console

Démarrer la configuration

  1. Dans la console Trusted 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, saisissez un sous-domaine du nom DNS (par exemple, mail) dans le champ Nom DNS. Le point final est ajouté automatiquement.

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

  3. Dans le champ TTL, saisissez une valeur numérique correspondant à la valeur TTL (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ération, 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 de la pondération individuelle sur le total de toutes les pondérations. Par exemple, si la cible A a une pondération de 25 et la cible B une pondération 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. Pour 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 ainsi que 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 le champ Adresse IPv4, saisissez une adresse IPv4.
  6. Facultatif : pour ajouter un autre ensemble de données de routage de règles 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. Pour Région source, sélectionnez une région source Trusted Cloudvalide.

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

    1. Pour 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 ainsi que 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 le champ Adresse IPv4, saisissez une adresse IPv4.
  7. Facultatif : pour ajouter un autre ensemble de 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. Pour 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 ainsi que l'une des cibles suivantes :

  2. Dans la section Règle de géolocalisation de secours, 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. Pour Région source, sélectionnez une région source Trusted Cloudvalide.
    3. Dans la section Cibles IPv4 dont l'état a été vérifié, procédez comme suit :

      1. Pour 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 le champ 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 secours, 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 santé 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 règle de routage (routingPolicy) ou des données DNS (rrdatas), mais pas les deux. Pour passer d'une règle de routage à des données DNS, mettez à jour le jeu d'enregistrements de ressources. Par exemple, pour remplacer un jeu d'enregistrements de ressources contenant des données DNS (rrdatas) par un jeu contenant 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 les 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, en secondes, pendant laquelle le résolveur met en cache 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 Types d'enregistrements compatibles avec les règles de routage DNS.
  • 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.
  • 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 : 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, en secondes, pendant laquelle le résolveur met en cache 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 Types d'enregistrements compatibles avec les règles de routage DNS.
  • 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.
  • 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 : 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 à base de zone de 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, en secondes, pendant laquelle le résolveur met en cache 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 Types d'enregistrements compatibles avec les règles de routage DNS.
  • 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.
  • 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. Lorsque cette règle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche si tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • --enable-health-checking : 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, en secondes, pendant laquelle le résolveur met en cache 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 Types d'enregistrements compatibles avec les règles de routage DNS.
  • 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.
  • 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. Lorsque cette règle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche si tous les points de terminaison d'une région sont non opérationnels. La valeur par défaut est false.
  • --enable-health-checking : 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

Exécutez 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 ressources de ce ResourceRecordSet (par exemple A)
  • TTL : valeur TTL, en secondes, pendant laquelle le résolveur met en cache 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 ressources de ce ResourceRecordSet (par exemple A)
  • TTL : valeur TTL, en secondes, pendant laquelle le résolveur met en cache ce ResourceRecordSet (par exemple, 30).
  • LOCATION : pour les règles GEO, la géolocalisation pour laquelle vous devez créer la règle (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 ressources de ce ResourceRecordSet (par exemple A)
  • TTL : valeur TTL, en secondes, pendant laquelle le résolveur met en cache 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. Lorsqu'elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche si 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 créer 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 que 198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1 rrdata2 rrdata3 (par exemple 198.51.100.1 203.0.113.1…).

Mettre à jour les règles de routage DNS

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

Console

  1. Dans la console Trusted 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 mises à jour 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 à base de zone de 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, en secondes, pendant laquelle le résolveur met en cache 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 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

Exécutez la méthode resourceRecordSets.patch. Spécifiez une seule des 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 ressources de ce ResourceRecordSet (par exemple A)
  • TTL : valeur TTL, en secondes, pendant laquelle le résolveur met en cache 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. Lorsqu'elle n'est pas définie, Cloud DNS dirige les requêtes vers la région la plus proche si 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 que 198.51.100.5 ; vous pouvez également saisir plusieurs valeurs, rrdata1 rrdata2 rrdata3 (par exemple 198.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 contient la règle de routage. Pour cela, procédez comme suit.

Console

  1. Dans la console Trusted Cloud , 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 ressources de ce ResourceRecordSet (par exemple 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

Utilisez 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 ressources de ce ResourceRecordSet (par exemple A)

Étapes suivantes