I criteri di routing del DNS indirizzano il traffico in base al tipo di query (ad esempio, Round Robin ponderato o geolocalizzazione). Puoi configurare questi criteri creando set di record di risorse che contengono valori specifici dei criteri di routing. Questi valori determinano il modo in cui il traffico viene instradato. Ad esempio, in un criterio round robin ponderato, ogni set di record di risorse ha una ponderazione assegnata che influisce sulla distribuzione del traffico.
Questa pagina fornisce informazioni su come creare, modificare ed eliminare i criteri di routing DNS e abilitare il controllo di integrità tramite Cloud DNS. Prima di utilizzare questa pagina, leggi la panoramica dei criteri DNS.
Per utilizzare i criteri di routing DNS, crea un set di record di risorse e scegli uno dei seguenti criteri di routing DNS da applicare al set di record di risorse:
Criterio di routing WRR (round robin) ponderato: utilizza WRR per specificare ponderazioni diverse per set di record di risorse per il nome DNS. I criteri di routing del DNS assicurano che il traffico venga distribuito in base ai pesi configurati. La combinazione di un criterio di routing WRR con un criterio di routing di geolocalizzazione non è supportata.
Criterio di routing di geolocalizzazione (GEO): utilizza GEO per specificare la geolocalizzazione di origine e per fornire risposte corrispondenti a queste aree geografiche. Il criterio di routing di geolocalizzazione applica la corrispondenza più vicina alla località di origine quando la sorgente del traffico non corrisponde esattamente a nessun elemento del criterio.
L'impostazione GEO mappa l'origine per i DNS pubblici e privati nei seguenti modi:
- Per il DNS pubblico: viene utilizzato l'indirizzo IP di origine o il meccanismo di estensione per il DNS (EDNS) nella subnet client della query.
- Per il DNS privato, non viene utilizzata la subnet client EDNS. La posizione della query è invece la posizione del sistema che invia i pacchetti per la query:
- Per le query da un'istanza di una macchina virtuale (VM) con un'interfaccia di rete in una rete VPC, la località della query è la regione che contiene la VM.
- Per le query ricevute da un punto di ingresso dei criteri del server in entrata, la località della query è la regione del tunnel Cloud VPN, del collegamento VLAN di Cloud Interconnect o dell'appliance router che ha ricevuto i pacchetti per la query. La regione dell'indirizzo IP del punto di ingresso non è pertinente. Per ulteriori informazioni, consulta Rete e regione per le query in entrata nella pagina "Criteri del server DNS".
Criterio di routing in geofencing: utilizza il geofencing per limitare il traffico a una specifica geolocalizzazione, anche se tutti gli endpoint in quella geolocalizzazione sono in stato non integro. Per informazioni dettagliate sul geofencing, consulta i criteri di routing in geofencing.
Criterio di routing del failover: utilizza il failover per configurare le configurazioni di backup attive. Per maggiori dettagli, consulta Criteri di routing del failover.
I criteri di routing del DNS supportano anche più indirizzi IP per ogni località geografica. Se specificati per una determinata posizione geografica, vengono restituiti più indirizzi IP in base a un criterio WRR di ponderazione uguale. Non è supportata la combinazione di un criterio di routing basato su dati geografici con un criterio WRR ponderato in modo personalizzato.
Controlli di integrità
Cloud DNS supporta i controlli di integrità per i bilanciatori del carico di rete passthrough interni e i bilanciatori del carico delle applicazioni interni con accesso globale abilitato e i bilanciatori del carico delle applicazioni interni tra regioni.
Dopo aver configurato un bilanciatore del carico di rete passthrough interno, configura il criterio di routing appropriato all'interno di Cloud DNS utilizzando la console Google Cloud, gcloud CLI o l'API, specificando il bilanciatore del carico di rete passthrough interno. Questo passaggio
prevede la configurazione di più bucket WRR
o GEO
e ciascun bucket può
contenere più bilanciatori del carico di rete passthrough interni.
Per i bilanciatori del carico di rete passthrough interni, Cloud DNS controlla le informazioni di integrità sulle singole istanze di backend del bilanciatore del carico per determinare se il bilanciatore del carico è integro o non integro. Cloud DNS applica una soglia predefinita del 20% e, se almeno il 20% delle istanze di backend è integro, l'endpoint del bilanciatore del carico viene considerato integro. I criteri di routing DNS contrassegnano l'endpoint come integro o non integro in base a questa soglia, instradando il traffico di conseguenza.
Per i bilanciatori del carico delle applicazioni interni e i bilanciatori del carico delle applicazioni interni tra regioni, Cloud DNS controlla l'integrità complessiva dell'Application Load Balancer interno e consente al bilanciatore del carico delle applicazioni interno di verificare l'integrità delle istanze di backend.
Quando l'endpoint è contrassegnato come non integro, possono verificarsi le seguenti condizioni:
- Se sono presenti più indirizzi VIP programmati in base a un criterio, vengono restituiti solo indirizzi VIP integri.
Se tutti gli indirizzi VIP programmati in un bucket di criteri non sono integri, la riga del criterio non funziona. Si applica il seguente comportamento:
- Per un criterio
WRR
, Cloud DNS distribuisce il traffico al bucket di peso integro successivo. - Per un criterio
GEO
in cui la recinzione non è attivata, il traffico passa all'area geografica più vicina successiva. - Per un criterio di recinzione geografica in cui è abilitata la fencing, gli indirizzi VIP nel bucket geografico più vicino vengono restituiti così come sono.
- Per un criterio di failover, Cloud DNS trasferisce il traffico al bucket di failover.
- Se tutti i bucket di criteri non sono integri, Cloud DNS si comporta come se tutti gli endpoint fossero integri.
- Per un criterio
Prima di iniziare
Questa procedura presuppone che tu abbia completato quanto segue:
- Hai creato una zona gestita e hai completato i prerequisiti per la creazione di una zona.
- Configura uno dei seguenti bilanciatori del carico interni:
- Sono state create regole di forwarding per il bilanciatore del carico interno.
- Configura il controllo di integrità per il bilanciatore del carico interno.
Crea criteri di routing DNS
Per creare un set di record di risorse e applicarvi un criterio di routing, segui questi passaggi.
Console
Avvia la configurazione
Nella console Google Cloud, vai alla pagina Zone Cloud DNS.
Fai clic sul nome della zona gestita a cui vuoi aggiungere il record.
Nella pagina Dettagli zona, fai clic su Aggiungi con criterio di routing.
Dati di base
Nella pagina Crea set di record con criterio di routing, inserisci il sottodominio della zona DNS nel campo Nome DNS, ad esempio
mail
. Il punto finale viene aggiunto automaticamente alla fine.Seleziona il Tipo di record di risorse, ad esempio
A
.Nel campo TTL, inserisci un valore numerico per la durata del record di risorse, ovvero per quanto tempo può essere memorizzato nella cache. Questo valore deve essere un numero intero positivo.
Nel menu Unità TTL, seleziona l'unità di tempo, ad esempio
30 minutes
.Fai clic su Avanti.
Tipo di criterio di routing
- Nell'elenco Criterio di routing, seleziona Round robin ponderato, Geolocalizzazione o Failover.
- Fai clic su Avanti.
Dati dei criteri di routing
Se hai selezionato Round robin ponderato, nella sezione Dati di routing del criterio round robin ponderato:
- Nel campo Weight (Peso), inserisci il peso corrispondente a questa sottosezione dei dati dei record di risorse (RR). Questo peso deve essere un numero non negativo compreso tra 0,0 e 1000,0. Il rapporto del traffico indirizzato al target viene calcolato dal rapporto della singola ponderazione sul totale in tutte le ponderazioni.
Nella sezione Aggiungi target sottoposto a controllo di integrità, segui questi passaggi:
- Nell'elenco Progetto, seleziona il progetto in cui esiste la regola di forwarding.
- Nell'elenco Tipo, seleziona Bilanciatore del carico di rete passthrough interno, Bilanciatore del carico delle applicazioni interno o Bilanciatore del carico delle applicazioni interno tra regioni.
Nell'elenco Regola di forwarding, selezionane una.
La regola di forwarding specifica un indirizzo IP interno, una porta e un servizio di backend regionale o un proxy HTTP(S). Affinché Cloud DNS funzioni con i controlli di integrità, devi abilitare l'accesso globale per il bilanciatore del carico interno.
Per consentire gli indirizzi IPv4 senza controllo di integrità, seleziona Consenti indirizzi IPv4 senza controllo di integrità.
Nel campo Indirizzo IPv4, inserisci un indirizzo IPv4.
Se hai selezionato Geolocalizzazione, segui questi passaggi:
- Per Geofencing, seleziona Disattivato o Attivato. L'abilitazione del geofencing limita il traffico a una specifica geolocalizzazione, anche se tutti gli endpoint in quella geolocalizzazione sono in stato non integro.
- Nel menu Regione di origine, seleziona una regione di origine Google Cloud valida, ad esempio
asia-east1
. Nella sezione Aggiungi target sottoposto a controllo di integrità, segui questi passaggi:
- Nell'elenco Progetto, seleziona il progetto in cui esiste la regola di forwarding.
- Nell'elenco Tipo, seleziona Bilanciatore del carico di rete passthrough interno, Bilanciatore del carico delle applicazioni interno o Bilanciatore del carico delle applicazioni interno tra regioni.
Nell'elenco Regola di forwarding, selezionane una.
La regola di forwarding specifica un indirizzo IP interno, una porta e un servizio di backend regionale o un proxy HTTP(S). Affinché Cloud DNS funzioni con i controlli di integrità, devi abilitare l'accesso globale per il bilanciatore del carico interno.
Per consentire gli indirizzi IPv4 senza controllo di integrità, seleziona Consenti indirizzi IPv4 senza controllo di integrità.
Nel campo Indirizzo IPv4, inserisci un indirizzo IPv4.
Se hai selezionato Failover:
- Nel campo Traffico lento (%), inserisci la percentuale di traffico inviato alle destinazioni di failover, indipendentemente dallo stato del controllo di integrità delle destinazioni primarie.
Nella sezione Target principali, procedi nel seguente modo:
- Nell'elenco Progetto, seleziona il progetto in cui esiste la regola di forwarding.
- Nell'elenco Tipo, seleziona Bilanciatore del carico di rete passthrough interno, Bilanciatore del carico delle applicazioni interno o Bilanciatore del carico delle applicazioni interno tra regioni.
Nell'elenco Regola di forwarding, selezionane una.
La regola di forwarding specifica un indirizzo IP interno, una porta e un servizio di backend regionale o un proxy HTTP(S). Affinché Cloud DNS funzioni con i controlli di integrità, devi abilitare l'accesso globale per il bilanciatore del carico interno.
Nella sezione Criterio di geolocalizzazione per il backup, segui questi passaggi:
- Per Geofencing, seleziona Disattivato o Attivato. L'abilitazione del geofencing limita il traffico a una specifica geolocalizzazione, anche se tutti gli endpoint in quella geolocalizzazione sono in stato non integro.
- Nel menu Regione di origine, seleziona una regione di origine Google Cloud valida, ad esempio
asia-east1
. Nella sezione Aggiungi target sottoposto a controllo di integrità, segui questi passaggi:
- Nell'elenco Progetto, seleziona il progetto in cui esiste la regola di forwarding.
- Nell'elenco Tipo, seleziona Bilanciatore del carico di rete passthrough interno, Bilanciatore del carico delle applicazioni interno o Bilanciatore del carico delle applicazioni interno tra regioni.
- Nell'elenco Regola di forwarding, selezionane una.
Se tutti gli indirizzi IP principali non sono integri, il traffico viene gestito automaticamente in base al criterio di geolocalizzazione di backup.
Per consentire gli indirizzi IPv4 senza controllo di integrità, seleziona Consenti indirizzi IPv4 senza controllo di integrità.
Nel campo Indirizzo IPv4, inserisci un indirizzo IPv4.
Fai clic su Avanti.
Rivedi e crea
- Fai clic su Esamina.
- Rivedi il set di record Cloud DNS con la configurazione dei criteri di routing.
- (Facoltativo) Fai clic su Riga di commento equivalente per visualizzare il comando gcloud CLI per creare questo set di record con il criterio di routing.
- Fai clic su Crea.
gcloud
Un ResourceRecordSet
può contenere routingPolicy
o rrdatas
, ma non entrambi. Il passaggio da rrdatas
a routingPolicy
è supportato durante l'aggiornamento di ResourceRecordSets
. Ad esempio, se vuoi aggiornare un elemento ResourceRecordSet
che contiene rrdatas
, puoi eliminare rrdatas
e aggiungere un routingPolicy
allo stesso ResourceRecordSet
.
Per creare un ResourceRecordSet
e applicarvi un criterio di routing, segui questi
passaggi.
Esegui il comando gcloud dns record-sets create
.
Per le norme relative all'area geografica
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
Per i criteri WRR (round robin pesato)
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
Per i criteri relativi a recinti virtuali
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
Per i criteri di failover
gcloud dns record-sets create 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-type=ROUTING_POLICY_BACKUP_DATA_TYPE \ --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \ --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \ --enable-health-checking
Sostituisci quanto segue:
RRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempioservice.example.com
TTL
: il TTL in secondi in cui il resolver memorizza nella cache questoResourceRecordSet
, ad esempio30
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
Per un elenco dei tipi di record supportati, vedi Selezionare i tipi di record di risorse.
MANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempioservice-zone
. Il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffissoROUTING_POLICY_TYPE
: il tipo di criterio di routingInserisci
WRR
per il round robin ponderato,GEO
per la geolocalizzazione oFAILOVER
per i criteri di failover. Non puoi modificare questo campo dopo che un criterio ha un tipo scelto; puoi solo eliminare il criterio e aggiungerne uno nuovo di tipo diverso.ROUTING_POLICY_DATA
: i dati del criterio di routing- Per
--routing-policy-type=WRR
, inserisci un elenco delimitato da punti e virgola nel formato${weight_percent}:${rrdatas}
, ad esempio.8=203.0.113.1;.2=198.51.100.1
. Specifica la ponderazione come decimale non negativo. Il rapporto del traffico indirizzato al target viene calcolato dal rapporto della singola ponderazione sul totale di tutte le ponderazioni. I nomi delle regole di forwarding sono valori accettabili e comportano il controllo di integrità. - Per
--routing-policy-type=GEO
, inserisci un elenco delimitato da punti e virgola nel formato${region}=${IP_address}
, ad esempioasia-east1=198.51.100.1;us-central1=203.0.113.1
. Puoi specificare più indirizzi IP per una singola regione aggiungendo indirizzi IP separati da una virgola. I nomi delle regole di forwarding sono valori accettabili e comportano il controllo di integrità. Per
--routing-policy-type=FAILOVER
, inserisci il nome della regola di forwarding che hai creato nel formato${region}=${Forwarding rule name}
.
Devi specificare sia il tipo di criterio di routing sia i relativi dati. Se ne specifichi uno, non puoi lasciare vuoto l'altro.
- Per
--enable-geo-fencing
: per i criteri di routingGEO
, determina se il traffico deve eseguire il failover tra regioni se tutti gli endpoint in una regione non sono integro. Se impostato, Cloud DNS indirizza sempre le query alla regione più vicina, anche se tutti gli endpoint in quella regione sono in stato non integro. Usa--no-enable-geo-fencing
per disattivare il geofencing. Se il criterio non è configurato, Cloud DNS indirizza le query alla regione successiva più vicina quando tutti gli endpoint in una regione non sono integro. Il valore predefinito èfalse
.ROUTING_POLICY_PRIMARY_DATA
: il target principale da utilizzare perFAILOVER
criteri di routing. Questa destinazione deve essere un riferimento a una o più regole di forwarding, comeforwarding-rule-1
. Finché una di queste regole di forwarding è integro, gli indirizzi IP di tutte le regole di forwarding in stato integro vengono utilizzati per rispondere alle query relative a questo nome.ROUTING_POLICY_BACKUP_DATA
: la destinazione di backup da utilizzare per i criteri di routingFAILOVER
. Queste destinazioni vengono utilizzate quando tutte le regole di forwarding specificate in--routing-policy-primary-data
sono in stato non integro. Cloud DNS supporta solo i target di backup basati su dati geografici. Il formato di questo campo corrisponde a quello di--routing-policy-data
quando--routing-policy-type = 'GEO'
, ad esempioasia-east1=forwarding-rule-2
.ROUTING_POLICY_BACKUP_DATA_TYPE
: per i criteri di routingFAILOVER
, il tipo di criterio di routing utilizzato dai dati di backup. Deve essereGEO
.BACKUP_DATA_TRICKLE_RATIO
: il rapporto del traffico da inviare ai target di backup, anche quando le istanze principali sono integre. Il rapporto deve essere compreso tra 0 e 1, ad esempio0.1
. Il valore predefinito è 0.--enable-health-checking
: il flag per abilitare il controllo di integrità. Quando utilizzi questo flag, devi fornire il nome della regola di forwarding anziché l'indirizzo IP nel campo--routing-policy-data
.
API
Utilizza il metodo resourceRecordSets.create
.
Per le norme relative all'area geografica
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" "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" } ] } }, } ] } } }
Per i criteri WRR (round robin pesato)
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" "region": "REGION" } ] } }, { "weight": WEIGHT, "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCER_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT" "region": "REGION" } ] } }, ] } } }
Per le norme relative a FAILOVER for GEO
Nell'opzione di failover, Cloud DNS supporta solo i criteri 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" "region": "REGION" } ] }, "backupGeoTargets": { "enableFencing": ENABLE_FENCING, "items": [ { "location": "LOCATION", "rrdatas": [ "RRDATA" ] }, { "location": "LOCATION", "rrdatas": [ "RRDATA" ] } ] } }, } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progettoMANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempioservice-zone
; il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffissoRRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempioservice.example.com
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
TTL
: il TTL in secondi in cui il resolver memorizza nella cache questoResourceRecordSet
, ad esempio30
TRICKLE_TRAFFIC
: il rapporto del traffico da inviare ai target di backup anche quando le istanze principali sono integre; il rapporto deve essere compreso tra 0 e 1, ad esempio0.1
ENABLE_FENCING
: perGEO
criteri di routing, determina se il traffico debba eseguire il failover tra regioni se tutti gli endpoint in una regione non sono integro. Se impostato, Cloud DNS indirizza sempre le query alla regione più vicina, anche se tutti gli endpoint in quella regione sono in stato non integro. Se il criterio non è configurato, Cloud DNS indirizza le query alla regione successiva più vicina quando tutti gli endpoint in una regione non sono integro. Il valore predefinito èfalse
.LOCATION
: per i criteriGEO
, la geolocalizzazione per cui devi creare il criterio, ad esempioasia-east1
WEIGHT
: per i criteriWRR
, un elenco delimitato da punti e virgola nel formato${weight_percent}=${rrdatas}
, ad esempio.8=10.128.1.1;.2=10.130.1.1
; specifica la ponderazione come qualsiasi numero decimale non negativoRR_DATA
: un valore arbitrario associato al set di record di risorse, come198.51.100.5
; puoi anche inserire più valori,rrdata1
rrdata2
rrdata3
, ad esempio198.51.100.1
203.0.113.1
...LOAD_BALANCER_TYPE
: il tipo di bilanciatore del carico, ad esempioregionalL4ilb
IP_ADDRESS
: l'indirizzo IP pubblicato dalla regola di forwardingPORT_NUMBER
: il numero di portaIP_PROTOCOL
: definisce il protocollo utilizzato per il controllo di integrità; le opzioni valide sonotcp
eudp
NETWORK_URL
: l'URL di rete a cui si applica questa regola di forwardingREGION
: la regione in cui hai creato la regola di forwarding
Aggiorna i criteri di routing del DNS
Per aggiornare il criterio di routing di un set di record di risorse, segui questi passaggi.
Console
Nella console Google Cloud, vai alla pagina Zone Cloud DNS.
Fai clic sulla zona per cui vuoi aggiornare il criterio di routing del set di record di risorse.
Nella pagina Dettagli zona, fai clic su editModifica accanto al set di record di risorse che vuoi aggiornare.
Dopo aver apportato gli aggiornamenti necessari, fai clic su Salva.
gcloud
Esegui il comando gcloud dns record-sets update
:
Per le norme relative all'area geografica
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
Per i criteri WRR (round robin pesato)
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
Per i criteri relativi a recinti virtuali
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
Per i criteri di failover
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
Sostituisci quanto segue:
RRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempioservice.example.com
TTL
: il TTL in secondi in cui il resolver memorizza nella cache questoResourceRecordSet
, ad esempio30
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
Per un elenco dei tipi di record supportati, vedi Selezionare i tipi di record di risorse.
MANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempioservice-zone
. Il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffissoROUTING_POLICY_TYPE
: il tipo di criterio di routingInserisci
WRR
per il round robin ponderato,GEO
per la geolocalizzazione oFAILOVER
per i criteri di failover. Non puoi modificare questo campo dopo che un criterio ha un tipo scelto; puoi solo eliminare il criterio e aggiungerne uno nuovo di tipo diverso.ROUTING_POLICY_DATA
: i dati del criterio di routing- Per
--routing-policy-type=WRR
, inserisci un elenco delimitato da punti e virgola nel formato${weight_percent}:${rrdatas}
, ad esempio.8=203.0.113.1;.2=198.51.100.1
. Specifica la ponderazione come decimale non negativo. Il rapporto del traffico indirizzato al target viene calcolato dal rapporto della singola ponderazione sul totale di tutte le ponderazioni. I nomi delle regole di forwarding sono valori accettabili e comportano il controllo di integrità. - Per
--routing-policy-type=GEO
, inserisci un elenco delimitato da punti e virgola nel formato${region}=${IP_address}
, ad esempioasia-east1=198.51.100.1;us-central1=203.0.113.1
. Puoi specificare più indirizzi IP per una singola regione aggiungendo indirizzi IP separati da una virgola. I nomi delle regole di forwarding sono valori accettabili e comportano il controllo di integrità. Per
--routing-policy-type=FAILOVER
, inserisci il nome della regola di forwarding che hai creato nel formato${region}=${Forwarding rule name}
.
Devi specificare sia il tipo di criterio di routing sia i relativi dati. Se ne specifichi uno, non puoi lasciare vuoto l'altro.
- Per
--enable-geo-fencing
: per i criteri di routingGEO
, determina se il traffico deve eseguire il failover tra regioni se tutti gli endpoint in una regione non sono integro. Se impostato, Cloud DNS indirizza sempre le query alla regione più vicina, anche se tutti gli endpoint in quella regione sono in stato non integro. Usa--no-enable-geo-fencing
per disattivare il geofencing. Se il criterio non è configurato, Cloud DNS indirizza le query alla regione successiva più vicina quando tutti gli endpoint in una regione non sono integro. Il valore predefinito èfalse
.ROUTING_POLICY_PRIMARY_DATA
: il target principale da utilizzare perFAILOVER
criteri di routing. Questa destinazione deve essere un riferimento a una o più regole di forwarding, comeforwarding-rule-1
. Finché una di queste regole di forwarding è integro, gli indirizzi IP di tutte le regole di forwarding in stato integro vengono utilizzati per rispondere alle query relative a questo nome.ROUTING_POLICY_BACKUP_DATA
: la destinazione di backup da utilizzare per i criteri di routingFAILOVER
. Queste destinazioni vengono utilizzate quando tutte le regole di forwarding specificate in--routing-policy-primary-data
sono in stato non integro. Cloud DNS supporta solo i target di backup basati su dati geografici. Il formato di questo campo corrisponde a quello di--routing-policy-data
quando--routing-policy-type = 'GEO'
, ad esempioasia-east1=forwarding-rule-2
.BACKUP_DATA_TRICKLE_RATIO
: il rapporto del traffico da inviare ai target di backup anche quando le istanze principali sono integre. Il rapporto deve essere compreso tra 0 e 1, ad esempio0.1
. Il valore predefinito è 0.--enable-health-checking
: abilita il controllo di integrità delle regole di forwarding fornite come rrdata a--routing-policy-data
.
API
Utilizza il metodo resourceRecordSets.patch
. Specifica un solo valore tra rrset.rrdatas
o rrset.routingPolicy
. Se
specifica routingPolicy
, devi specificare il nuovo campo routingPolicy
nella sua interezza.
Per i criteri GEO
, utilizza il metodo seguente:
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" } ] } }, } ] } } }
Per i criteri WRR
, utilizza il metodo seguente:
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": ["RR_DATA"] }, { "weight": WEIGHT, "rrdatas": ["RR_DATA"] } ], } } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progettoMANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempioservice-zone
; il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffissoRRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempioservice.example.com
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
TTL
: il TTL in secondi in cui il resolver memorizza nella cache questoResourceRecordSet
, ad esempio30
TRICKLE_TRAFFIC
: il rapporto del traffico da inviare ai target di backup anche quando le istanze principali sono integre; il rapporto deve essere compreso tra 0 e 1, ad esempio0.1
ENABLE_FENCING
: perGEO
criteri di routing, determina se il traffico debba eseguire il failover tra regioni se tutti gli endpoint in una regione non sono integro. Se impostato, Cloud DNS indirizza sempre le query alla regione più vicina, anche se tutti gli endpoint in quella regione sono in stato non integro. Se il criterio non è configurato, Cloud DNS indirizza le query alla regione successiva più vicina quando tutti gli endpoint in una regione non sono integro. Il valore predefinito èfalse
.LOCATION
: per i criteriGEO
, la geolocalizzazione per cui devi aggiornare il criterio, ad esempioasia-east1
WEIGHT
: per i criteriWRR
, un elenco delimitato da punti e virgola nel formato${weight_percent}=${rrdatas}
, ad esempio.8=10.128.1.1;.2=10.130.1.1
; specifica la ponderazione come qualsiasi numero decimale non negativoRR_DATA
: un valore arbitrario associato al set di record di risorse, come198.51.100.5
; puoi anche inserire più valori,rrdata1
rrdata2
rrdata3
, ad esempio198.51.100.1
203.0.113.1
...LOAD_BALANCER_TYPE
: il tipo di bilanciatore del carico, ad esempioregionalL4ilb
IP_ADDRESS
: l'indirizzo IP pubblicato dalla regola di forwardingPORT_NUMBER
: il numero di portaIP_PROTOCOL
: definisce il protocollo utilizzato per il controllo di integrità; le opzioni valide sonotcp
eudp
NETWORK_URL
: l'URL di rete a cui si applica questa regola di forwardingREGION
: la regione in cui hai creato la regola di forwarding
Elimina criteri di routing DNS
Per eliminare un criterio di routing, è necessario eliminare il set di record di risorse che contiene il criterio di routing. Per farlo, segui questi passaggi.
Console
Nella console Google Cloud, vai alla pagina Zone Cloud DNS.
Fai clic sulla zona per cui vuoi eliminare il set di record di risorse.
Nella pagina Dettagli zona, seleziona la casella di controllo accanto al nome DNS del set di record di risorse che vuoi eliminare.
Fai clic su Elimina set di record.
gcloud
Esegui il comando gcloud dns record-sets delete
:
gcloud dns record-sets delete RRSET_NAME \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \
Sostituisci quanto segue:
RRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempioservice.example.com
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
Per un elenco dei tipi di record supportati, vedi Selezionare i tipi di record di risorse.
MANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempioservice-zone
; il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffisso
API
Utilizza il metodo resourceRecordSets.delete
:
DELETE https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets/RRSET_NAME/RRSET_TYPE
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progettoMANAGED_ZONE
: la zona gestita a cui è affiliato questoResourceRecordSet
, ad esempiomy-zone-name
; il nome di questoResourceRecordSet
deve avere il nome DNS della zona gestita come suffissoRRSET_NAME
: il nome DNS che corrisponde alle query in entrata con il nome DNS di questa zona come suffisso, ad esempiotest.example.com
RRSET_TYPE
: il tipo di record di risorse di questoResourceRecordSet
, ad esempioA
Passaggi successivi
- Per utilizzare le zone gestite, consulta Creare, modificare ed eliminare zone.
- Per trovare soluzioni ai problemi comuni che potresti riscontrare durante l'utilizzo di Cloud DNS, consulta Risoluzione dei problemi.
- Per una panoramica di Cloud DNS, consulta Panoramica di Cloud DNS.