Kebijakan perutean DNS mengarahkan traffic berdasarkan jenis kueri (misalnya, round robin atau geolokasi berbobot). Anda dapat mengonfigurasi kebijakan ini dengan membuat kumpulan data resource yang berisi nilai kebijakan perutean tertentu. Nilai ini menentukan cara lalu lintas dirutekan. Misalnya, dalam kebijakan round robin berbobot, setiap kumpulan data resource memiliki bobot yang ditetapkan yang memengaruhi distribusi traffic.
Halaman ini memberikan informasi tentang cara membuat, mengedit, dan menghapus kebijakan perutean DNS, serta mengaktifkan health check menggunakan Cloud DNS. Sebelum menggunakan halaman ini, pahami ringkasan kebijakan DNS.
Untuk menggunakan kebijakan perutean DNS, buat kumpulan data resource dan pilih salah satu kebijakan perutean DNS berikut yang akan diterapkan ke kumpulan data resource:
Kebijakan perutean round robin (WRR) berbobot: Gunakan WRR untuk menentukan bobot yang berbeda per kumpulan data resource untuk nama DNS. Kebijakan perutean DNS memastikan traffic didistribusikan sesuai dengan bobot yang dikonfigurasi. Menggabungkan kebijakan perutean WRR dengan kebijakan perutean geolokasi tidak didukung.
Kebijakan pemilihan rute geolokasi (GEO): Gunakan GEO untuk menentukan geolokasi sumber dan untuk memberikan jawaban yang sesuai dengan geografi tersebut. Kebijakan perutean geolokasi menerapkan kecocokan terdekat untuk lokasi sumber jika sumber traffic tidak sama persis dengan item kebijakan apa pun.
GEO memetakan sumber untuk DNS publik dan pribadi dengan cara berikut:
- Untuk DNS publik: alamat IP sumber atau subnet klien Extension for DNS (EDNS) dari kueri digunakan.
- Untuk DNS pribadi, subnet klien EDNS tidak digunakan. Lokasi
kueri adalah lokasi sistem yang mengirimkan paket untuk
kueri tersebut:
- Untuk kueri dari instance virtual machine (VM) dengan antarmuka jaringan di jaringan VPC, lokasi kueri adalah region yang berisi VM.
- Untuk kueri yang diterima oleh titik entri kebijakan server masuk, lokasi kueri adalah region tunnel Cloud VPN, lampiran VLAN Cloud Interconnect, atau perangkat Router yang menerima paket untuk kueri. Region alamat IP titik masuk tidak relevan. Untuk informasi selengkapnya, lihat Jaringan dan region untuk kueri masuk di halaman "Kebijakan server DNS".
Kebijakan pemilihan rute yang dibatasi wilayah: Gunakan pembatasan wilayah untuk membatasi traffic ke geolokasi tertentu meskipun semua endpoint di geolokasi tersebut tidak responsif. Untuk informasi selengkapnya tentang pembatasan wilayah, lihat Kebijakan pemilihan rute yang dibatasi wilayah.
Kebijakan perutean failover: Gunakan failover untuk menyiapkan konfigurasi pencadangan aktif. Untuk mengetahui detailnya, lihat Kebijakan pemilihan rute failover.
Kebijakan perutean DNS juga mendukung banyak alamat IP untuk setiap lokasi geografis. Jika ditentukan untuk lokasi geografis tertentu, beberapa alamat IP akan ditampilkan sesuai dengan kebijakan WRR dengan bobot yang sama. Menggabungkan kebijakan perutean berbasis geografis dengan kebijakan WRR berbobot khusus tidak didukung.
Health check
Cloud DNS mendukung health check untuk Load Balancer Jaringan passthrough internal dan Load Balancer Aplikasi internal yang mengaktifkan akses global, serta Load Balancer Aplikasi internal lintas region.
Setelah menyiapkan Load Balancer Jaringan passthrough internal, siapkan kebijakan perutean yang sesuai dalam Cloud DNS menggunakan Konsol Google Cloud,gcloud CLI, atau API, yang menentukan Load Balancer Jaringan passthrough internal. Langkah ini meliputi penyiapan beberapa bucket WRR
atau GEO
, dan setiap bucket dapat berisi beberapa Load Balancer Jaringan passthrough internal.
Untuk Load Balancer Jaringan passthrough internal, Cloud DNS memeriksa informasi respons pada setiap backend instance load balancer untuk menentukan apakah load balancer responsif atau tidak responsif. Cloud DNS menerapkan batas default sebesar 20%, dan jika setidaknya 20% instance backend responsif, endpoint load balancer dianggap responsif. Kebijakan perutean DNS menandai endpoint sebagai responsif atau tidak responsif berdasarkan batas ini, lalu merutekan traffic sebagaimana mestinya.
Untuk Load Balancer Aplikasi internal dan Load Balancer Aplikasi internal lintas region, Cloud DNS memeriksa kondisi keseluruhan Load Balancer Aplikasi internal, dan memungkinkan Load Balancer Aplikasi internal memeriksa sendiri kondisi backend instance.
Jika endpoint ditandai tidak responsif, kondisi berikut dapat terjadi:
- Jika ada beberapa alamat VIP yang diprogram untuk melanggar kebijakan, hanya alamat VIP sehat yang akan ditampilkan.
Jika semua alamat VIP yang diprogram terhadap bucket kebijakan tidak responsif, baris kebijakan tersebut telah gagal. Perilaku berikut berlaku:
- Untuk kebijakan
WRR
, Cloud DNS mendistribusikan traffic ke bucket berat sehat berikutnya. - Untuk kebijakan
GEO
yang tidak mengaktifkan pagar, lalu lintas akan beralih ke geografi terdekat berikutnya. - Untuk kebijakan dengan pembatasan wilayah yang mengaktifkan pagar, alamat VIP di bucket geografis terdekat akan ditampilkan sebagaimana adanya.
- Untuk kebijakan failover, Cloud DNS mengalihkan traffic ke bucket failover.
- Jika semua bucket kebijakan tidak responsif, Cloud DNS akan berperilaku seolah-olah semua endpoint responsif.
- Untuk kebijakan
Sebelum memulai
Prosedur ini mengasumsikan bahwa Anda telah menyelesaikan langkah berikut:
- Membuat zona terkelola dan menyelesaikan prasyarat untuk membuat zona.
- Siapkan salah satu load balancer internal berikut:
- Membuat aturan penerusan untuk load balancer internal.
- Menyiapkan health check untuk load balancer internal.
Membuat kebijakan perutean DNS
Untuk membuat kumpulan data resource dan menerapkan kebijakan perutean ke kumpulan data tersebut, ikuti langkah-langkah berikut.
Konsol
Memulai konfigurasi
Di Konsol Google Cloud, buka halaman Cloud DNS zones.
Klik nama zona terkelola yang ingin Anda tambahi data.
Di halaman Zone details, klik Add with routing policy.
Data dasar
Di halaman Create record set with routing policy, di kolom DNS name, masukkan subdomain zona DNS, misalnya,
mail
. Tanda titik di akhir akan otomatis ditambahkan.Pilih Jenis data resource—misalnya,
A
.Di kolom TTL, masukkan nilai numerik untuk waktu aktif data resource, yang merupakan jumlah waktu yang dapat di-cache. Nilai ini harus berupa bilangan bulat positif.
Di menu Unit TTL, pilih satuan waktu—misalnya,
30 minutes
.Klik Next.
Jenis kebijakan pemilihan rute
- Dalam daftar Routing policy, pilih Weighted round robin, Geolocation, atau Failover.
- Klik Next.
Data kebijakan pemilihan rute
Jika Anda memilih Weighted round robin, di bagian Data perutean kebijakan round robin berbobot, lakukan tindakan berikut:
- Di kolom Weight, masukkan bobot yang sesuai dengan subbagian data resource record (RR) ini. Bobot ini harus berupa angka yang tidak negatif dari 0,0 hingga 1000,0. Rasio traffic yang diarahkan ke target dihitung dari rasio berat individu terhadap total di semua bobot.
Di bagian Add health check target, lakukan hal berikut:
- Dalam daftar Project, pilih project tempat aturan penerusan berada.
- Dalam daftar Type, pilih internal passthrough Network Load Balancer, internal Application Load Balancer, atau Cross-region internal Application Load Balancer.
Dalam daftar Aturan penerusan, pilih aturan penerusan.
Aturan penerusan menentukan alamat IP internal, port, dan layanan backend regional atau proxy HTTP(S). Agar Cloud DNS dapat berfungsi dengan health check, Anda harus mengaktifkan akses global untuk load balancer internal.
Untuk mengizinkan alamat IPv4 tanpa health check, pilih Allow IPv4 addresses without health check.
Di kolom Alamat IPv4, masukkan alamat IPv4.
Jika Anda memilih Geolocation, lakukan hal berikut:
- Untuk Pembatasan wilayah, pilih Dinonaktifkan atau Diaktifkan. Mengaktifkan pembatasan wilayah akan membatasi traffic ke geolokasi tertentu meskipun semua endpoint di geolokasi tersebut tidak responsif.
- Di menu Source region, pilih region sumber Google Cloud yang valid, seperti
asia-east1
. Di bagian Add health check target, lakukan hal berikut:
- Dalam daftar Project, pilih project tempat aturan penerusan berada.
- Dalam daftar Type, pilih internal passthrough Network Load Balancer, internal Application Load Balancer, atau Cross-region internal Application Load Balancer.
Dalam daftar Aturan penerusan, pilih aturan penerusan.
Aturan penerusan menentukan alamat IP internal, port, dan layanan backend regional atau proxy HTTP(S). Agar Cloud DNS dapat berfungsi dengan health check, Anda harus mengaktifkan akses global untuk load balancer internal.
Untuk mengizinkan alamat IPv4 tanpa health check, pilih Allow IPv4 addresses without health check.
Di kolom Alamat IPv4, masukkan alamat IPv4.
Jika Anda memilih Failover, lakukan tindakan berikut:
- Di kolom Trickle traffic (%), masukkan persentase traffic yang dikirim ke target failover, terlepas dari status health check target utama.
Di bagian Target utama, lakukan hal berikut:
- Dalam daftar Project, pilih project tempat aturan penerusan berada.
- Dalam daftar Type, pilih internal passthrough Network Load Balancer, internal Application Load Balancer, atau Cross-region internal Application Load Balancer.
Dalam daftar Aturan penerusan, pilih aturan penerusan.
Aturan penerusan menentukan alamat IP internal, port, dan layanan backend regional atau proxy HTTP(S). Agar Cloud DNS dapat berfungsi dengan health check, Anda harus mengaktifkan akses global untuk load balancer internal.
Di bagian Kebijakan geolokasi cadangan, lakukan hal berikut:
- Untuk Pembatasan wilayah, pilih Dinonaktifkan atau Diaktifkan. Mengaktifkan pembatasan wilayah akan membatasi traffic ke geolokasi tertentu meskipun semua endpoint di geolokasi tersebut tidak responsif.
- Di menu Source region, pilih region sumber Google Cloud yang valid, seperti
asia-east1
. Di bagian Add health check target, lakukan hal berikut:
- Dalam daftar Project, pilih project tempat aturan penerusan berada.
- Dalam daftar Type, pilih internal passthrough Network Load Balancer, internal Application Load Balancer, atau Cross-region internal Application Load Balancer.
- Dalam daftar Aturan penerusan, pilih aturan penerusan.
Jika semua alamat IP utama tidak responsif, traffic akan otomatis ditangani sesuai dengan kebijakan geolokasi cadangan.
Untuk mengizinkan alamat IPv4 tanpa health check, pilih Allow IPv4 addresses without health check.
Di kolom Alamat IPv4, masukkan alamat IPv4.
Klik Next.
Tinjau dan buat
- Klik Tinjau.
- Tinjau kumpulan data Cloud DNS Anda dengan konfigurasi kebijakan perutean.
- Opsional: Klik Equivalent comment line untuk melihat perintah gcloud CLI untuk membuat kumpulan data ini dengan kebijakan perutean.
- Klik Create.
gcloud
ResourceRecordSet
dapat berisi routingPolicy
atau rrdatas
, tetapi tidak
keduanya. Mengubah antara rrdatas
atau routingPolicy
didukung saat mengupdate
ResourceRecordSets
. Misalnya, jika Anda ingin mengupdate ResourceRecordSet
yang berisi rrdatas
, Anda dapat menghapus rrdatas
dan menambahkan routingPolicy
ke ResourceRecordSet
yang sama.
Untuk membuat ResourceRecordSet
dan menerapkan kebijakan pemilihan rute ke ResourceRecordSet
, ikuti langkah-langkah berikut.
Jalankan
perintah
gcloud dns record-sets create
.
Untuk kebijakan Geografi
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
Untuk kebijakan 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
Untuk kebijakan pembatasan wilayah
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
Untuk kebijakan 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
Ganti kode berikut:
RRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertiservice.example.com
TTL
: TTL dalam hitungan detik saat resolver men-cacheResourceRecordSet
ini, seperti30
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
Untuk daftar jenis data yang didukung, lihat Memilih jenis data resource.
MANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertiservice-zone
. NamaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannyaROUTING_POLICY_TYPE
: jenis kebijakan peruteanMasukkan
WRR
untuk round robin berbobot,GEO
untuk lokasi geografis, atauFAILOVER
untuk kebijakan failover. Anda tidak dapat mengubah kolom ini setelah kebijakan memiliki jenis yang dipilih. Anda hanya dapat menghapus kebijakan dan menambahkan kebijakan baru dengan jenis yang berbeda.ROUTING_POLICY_DATA
: data kebijakan perutean- Untuk
--routing-policy-type=WRR
, masukkan daftar yang dipisahkan titik koma dalam format${weight_percent}:${rrdatas}
, seperti.8=203.0.113.1;.2=198.51.100.1
. Tentukan bobot sebagai desimal non-negatif. Rasio traffic yang diarahkan ke target dihitung dari rasio setiap bobot terhadap total di semua bobot. Nama aturan penerusan adalah nilai yang dapat diterima dan menghasilkan health check. - Untuk
--routing-policy-type=GEO
, masukkan daftar yang dipisahkan titik koma dalam format${region}=${IP_address}
, sepertiasia-east1=198.51.100.1;us-central1=203.0.113.1
. Anda dapat menentukan beberapa alamat IP untuk satu wilayah dengan menambahkan alamat IP yang dipisahkan dengan koma. Nama aturan penerusan adalah nilai yang dapat diterima dan menghasilkan health check. Untuk
--routing-policy-type=FAILOVER
, masukkan nama aturan penerusan yang Anda buat dalam format${region}=${Forwarding rule name}
.
Anda harus menentukan jenis kebijakan perutean dan data kebijakan perutean. Jika menentukan satu, Anda tidak boleh membiarkan tanda lain kosong.
- Untuk
--enable-geo-fencing
: untuk kebijakan peruteanGEO
, hal ini menentukan apakah traffic harus failover lintas region jika semua endpoint di suatu region tidak responsif. Jika ditetapkan, Cloud DNS selalu mengarahkan kueri ke region terdekat, meskipun semua endpoint di region tersebut tidak responsif. Gunakan--no-enable-geo-fencing
untuk menonaktifkan pembatasan wilayah. Jika tidak disetel, Cloud DNS akan mengarahkan kueri ke region terdekat berikutnya saat semua endpoint di suatu region tidak responsif. Setelan default-nya adalahfalse
.ROUTING_POLICY_PRIMARY_DATA
: target utama yang digunakan untuk kebijakan peruteanFAILOVER
. Target ini harus berupa referensi ke satu atau beberapa aturan penerusan, sepertiforwarding-rule-1
. Asalkan setidaknya salah satu dari aturan penerusan ini responsif, alamat IP dari semua aturan penerusan yang baik akan digunakan untuk menjawab kueri untuk nama ini.ROUTING_POLICY_BACKUP_DATA
: target cadangan yang digunakan untuk kebijakan peruteanFAILOVER
. Target ini digunakan saat semua aturan penerusan yang ditentukan di--routing-policy-primary-data
tidak responsif. Cloud DNS hanya mendukung target pencadangan berbasis geografis. Format kolom ini cocok dengan--routing-policy-data
saat--routing-policy-type = 'GEO'
, sepertiasia-east1=forwarding-rule-2
.ROUTING_POLICY_BACKUP_DATA_TYPE
: untuk kebijakan peruteanFAILOVER
, jenis kebijakan perutean yang digunakan data cadangan. Nilai ini harusGEO
.BACKUP_DATA_TRICKLE_RATIO
: rasio traffic yang akan dikirim ke target cadangan, meskipun setelan primernya responsif. Rasio harus antara 0 dan 1, seperti0.1
. Defaultnya ditetapkan ke 0.--enable-health-checking
: flag untuk mengaktifkan health check. Saat menggunakan flag ini, Anda harus memberikan nama aturan penerusan, bukan alamat IP di kolom--routing-policy-data
.
API
Gunakan
metode
resourceRecordSets.create
.
Untuk kebijakan Geografi
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" } ] } }, } ] } } }
Untuk kebijakan 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" "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" } ] } }, ] } } }
Untuk kebijakan GAGAL untuk Geografi
Dalam opsi failover, Cloud DNS hanya mendukung kebijakan 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" ] } ] } }, } }
Ganti kode berikut:
PROJECT_ID
: ID projectMANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertiservice-zone
; namaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannyaRRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertiservice.example.com
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
TTL
: TTL dalam hitungan detik saat resolver men-cacheResourceRecordSet
ini, seperti30
TRICKLE_TRAFFIC
: rasio traffic yang akan dikirim ke target cadangan meskipun setelan primernya responsif; rasio harus antara 0 dan 1, seperti0.1
ENABLE_FENCING
: untuk kebijakan peruteanGEO
, hal ini menentukan apakah traffic akan melakukan failover di seluruh region jika semua endpoint di suatu region tidak responsif. Jika ditetapkan, Cloud DNS selalu mengarahkan kueri ke region terdekat, meskipun semua endpoint di region tersebut tidak responsif. Jika tidak disetel, Cloud DNS akan mengarahkan kueri ke region terdekat berikutnya saat semua endpoint di suatu region tidak responsif. Nilai defaultnya adalahfalse
.LOCATION
: untuk kebijakanGEO
, geolokasi tempat Anda perlu membuat kebijakan, sepertiasia-east1
WEIGHT
: untuk kebijakanWRR
, daftar yang dipisahkan titik koma dalam format${weight_percent}=${rrdatas}
, seperti.8=10.128.1.1;.2=10.130.1.1
; tentukan bobot sebagai desimal non-negatifRR_DATA
: nilai arbitrer yang terkait dengan kumpulan data resource, seperti198.51.100.5
; Anda juga dapat memasukkan beberapa nilai,rrdata1
rrdata2
rrdata3
, seperti198.51.100.1
203.0.113.1
...LOAD_BALANCER_TYPE
: jenis load balancer, sepertiregionalL4ilb
IP_ADDRESS
: alamat IP yang dilayani aturan penerusanPORT_NUMBER
: nomor portIP_PROTOCOL
: menentukan protokol yang digunakan untuk health check; opsi yang valid adalahtcp
danudp
NETWORK_URL
: URL jaringan tempat aturan penerusan ini diterapkanREGION
: region tempat Anda membuat aturan penerusan
Memperbarui kebijakan perutean DNS
Untuk memperbarui kebijakan perutean kumpulan data resource, ikuti langkah-langkah berikut.
Konsol
Di konsol Google Cloud, buka halaman Cloud DNS zone.
Klik zona yang ingin Anda perbarui kebijakan perutean kumpulan data resource-nya.
Di halaman Zone details, di samping kumpulan data resource yang ingin Anda perbarui, klik editEdit.
Setelah melakukan pembaruan yang diperlukan, klik Simpan.
gcloud
Jalankan perintah
gcloud dns record-sets update
:
Untuk kebijakan Geografi
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
Untuk kebijakan 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
Untuk kebijakan pembatasan wilayah
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
Untuk kebijakan 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
Ganti kode berikut:
RRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertiservice.example.com
TTL
: TTL dalam hitungan detik saat resolver men-cacheResourceRecordSet
ini, seperti30
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
Untuk daftar jenis data yang didukung, lihat Memilih jenis data resource.
MANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertiservice-zone
. NamaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannyaROUTING_POLICY_TYPE
: jenis kebijakan peruteanMasukkan
WRR
untuk round robin berbobot,GEO
untuk lokasi geografis, atauFAILOVER
untuk kebijakan failover. Anda tidak dapat mengubah kolom ini setelah kebijakan memiliki jenis yang dipilih. Anda hanya dapat menghapus kebijakan dan menambahkan kebijakan baru dengan jenis yang berbeda.ROUTING_POLICY_DATA
: data kebijakan perutean- Untuk
--routing-policy-type=WRR
, masukkan daftar yang dipisahkan titik koma dalam format${weight_percent}:${rrdatas}
, seperti.8=203.0.113.1;.2=198.51.100.1
. Tentukan bobot sebagai desimal non-negatif. Rasio traffic yang diarahkan ke target dihitung dari rasio setiap bobot terhadap total di semua bobot. Nama aturan penerusan adalah nilai yang dapat diterima dan menghasilkan health check. - Untuk
--routing-policy-type=GEO
, masukkan daftar yang dipisahkan titik koma dalam format${region}=${IP_address}
, sepertiasia-east1=198.51.100.1;us-central1=203.0.113.1
. Anda dapat menentukan beberapa alamat IP untuk satu wilayah dengan menambahkan alamat IP yang dipisahkan dengan koma. Nama aturan penerusan adalah nilai yang dapat diterima dan menghasilkan health check. Untuk
--routing-policy-type=FAILOVER
, masukkan nama aturan penerusan yang Anda buat dalam format${region}=${Forwarding rule name}
.
Anda harus menentukan jenis kebijakan perutean dan data kebijakan perutean. Jika menentukan satu, Anda tidak boleh membiarkan tanda lain kosong.
- Untuk
--enable-geo-fencing
: untuk kebijakan peruteanGEO
, hal ini menentukan apakah traffic harus failover lintas region jika semua endpoint di suatu region tidak responsif. Jika ditetapkan, Cloud DNS selalu mengarahkan kueri ke region terdekat, meskipun semua endpoint di region tersebut tidak responsif. Gunakan--no-enable-geo-fencing
untuk menonaktifkan pembatasan wilayah. Jika tidak disetel, Cloud DNS akan mengarahkan kueri ke region terdekat berikutnya saat semua endpoint di suatu region tidak responsif. Setelan default-nya adalahfalse
.ROUTING_POLICY_PRIMARY_DATA
: target utama yang digunakan untuk kebijakan peruteanFAILOVER
. Target ini harus berupa referensi ke satu atau beberapa aturan penerusan, sepertiforwarding-rule-1
. Asalkan setidaknya salah satu dari aturan penerusan ini responsif, alamat IP dari semua aturan penerusan yang baik akan digunakan untuk menjawab kueri untuk nama ini.ROUTING_POLICY_BACKUP_DATA
: target cadangan yang digunakan untuk kebijakan peruteanFAILOVER
. Target ini digunakan saat semua aturan penerusan yang ditentukan di--routing-policy-primary-data
tidak responsif. Cloud DNS hanya mendukung target pencadangan berbasis geografis. Format kolom ini cocok dengan--routing-policy-data
saat--routing-policy-type = 'GEO'
, sepertiasia-east1=forwarding-rule-2
.BACKUP_DATA_TRICKLE_RATIO
: rasio traffic yang akan dikirim ke target cadangan meskipun setelan primernya responsif. Rasio harus antara 0 dan 1, seperti0.1
. Defaultnya ditetapkan ke 0.--enable-health-checking
: Mengaktifkan health check aturan penerusan yang disediakan sebagai rrdata ke--routing-policy-data
.
API
Gunakan
metode
resourceRecordSets.patch
. Tentukan hanya salah satu dari rrset.rrdatas
atau rrset.routingPolicy
. Jika menentukan routingPolicy
, Anda harus menentukan kolom routingPolicy
baru secara keseluruhan.
Untuk kebijakan GEO
, gunakan metode berikut:
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" } ] } }, } ] } } }
Untuk kebijakan WRR
, gunakan metode berikut:
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"] } ], } } }
Ganti kode berikut:
PROJECT_ID
: ID projectMANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertiservice-zone
; namaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannyaRRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertiservice.example.com
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
TTL
: TTL dalam hitungan detik saat resolver men-cacheResourceRecordSet
ini, seperti30
TRICKLE_TRAFFIC
: rasio traffic yang akan dikirim ke target cadangan meskipun setelan primernya responsif; rasio harus antara 0 dan 1, seperti0.1
ENABLE_FENCING
: untuk kebijakan peruteanGEO
, hal ini menentukan apakah traffic akan melakukan failover di seluruh region jika semua endpoint di suatu region tidak responsif. Jika ditetapkan, Cloud DNS selalu mengarahkan kueri ke region terdekat, meskipun semua endpoint di region tersebut tidak responsif. Jika tidak disetel, Cloud DNS akan mengarahkan kueri ke region terdekat berikutnya saat semua endpoint di suatu region tidak responsif. Nilai defaultnya adalahfalse
.LOCATION
: untuk kebijakanGEO
, geolokasi tempat Anda perlu memperbarui kebijakan, sepertiasia-east1
WEIGHT
: untuk kebijakanWRR
, daftar yang dipisahkan titik koma dalam format${weight_percent}=${rrdatas}
, seperti.8=10.128.1.1;.2=10.130.1.1
; tentukan bobot sebagai desimal non-negatifRR_DATA
: nilai arbitrer yang terkait dengan kumpulan data resource, seperti198.51.100.5
; Anda juga dapat memasukkan beberapa nilai,rrdata1
rrdata2
rrdata3
, seperti198.51.100.1
203.0.113.1
...LOAD_BALANCER_TYPE
: jenis load balancer, sepertiregionalL4ilb
IP_ADDRESS
: alamat IP yang dilayani aturan penerusanPORT_NUMBER
: nomor portIP_PROTOCOL
: menentukan protokol yang digunakan untuk health check; opsi yang valid adalahtcp
danudp
NETWORK_URL
: URL jaringan tempat aturan penerusan ini diterapkanREGION
: region tempat Anda membuat aturan penerusan
Hapus kebijakan perutean DNS
Untuk menghapus kebijakan perutean, Anda harus menghapus kumpulan data resource yang berisi kebijakan perutean. Untuk melakukannya, ikuti langkah-langkah berikut.
Konsol
Di Konsol Google Cloud, buka halaman Cloud DNS zones.
Klik zona yang kumpulan data resource-nya ingin Anda hapus.
Di halaman Zone details, di samping nama DNS kumpulan data resource yang ingin Anda hapus, pilih kotak centangnya.
Klik Hapus kumpulan data.
gcloud
Jalankan perintah
gcloud dns record-sets delete
:
gcloud dns record-sets delete RRSET_NAME \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \
Ganti kode berikut:
RRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertiservice.example.com
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
Untuk daftar jenis data yang didukung, lihat Memilih jenis data resource.
MANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertiservice-zone
; namaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannya
API
Gunakan
resourceRecordSets.delete
metode:
DELETE https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets/RRSET_NAME/RRSET_TYPE
Ganti kode berikut:
PROJECT_ID
: ID projectMANAGED_ZONE
: zona terkelola yang berafiliasi denganResourceRecordSet
ini, sepertimy-zone-name
; namaResourceRecordSet
ini harus memiliki nama DNS zona terkelola sebagai akhirannyaRRSET_NAME
: nama DNS yang cocok dengan kueri yang masuk dengan nama DNS zona ini sebagai akhirannya, sepertitest.example.com
RRSET_TYPE
: jenis data resourceResourceRecordSet
ini, sepertiA
Langkah selanjutnya
- Untuk menangani zona terkelola, lihat Membuat, mengubah, dan menghapus zona.
- Untuk menemukan solusi atas masalah umum yang mungkin Anda alami saat menggunakan Cloud DNS, lihat Pemecahan masalah.
- Untuk mendapatkan ringkasan Cloud DNS, lihat ringkasan Cloud DNS.