Membuat, mengubah, dan menghapus zona

Halaman ini berisi petunjuk untuk membuat, memperbarui, mencantumkan, dan menghapus zona terkelola Cloud DNS. Sebelum menggunakan halaman ini, pahami ringkasan Cloud DNS dan Istilah utama.

Sebelum memulai

Cloud DNS API mengharuskan Anda membuat project Cloud DNS dan mengaktifkan Cloud DNS API.

Jika Anda akan membuat aplikasi yang menggunakan REST API, Anda juga harus membuat client ID OAuth 2.0.

  1. Jika Anda belum memilikinya, daftar untuk membuat Akun Google.
  2. Aktifkan Cloud DNS API di konsol Cloud de Confiance . Anda dapat memilih project Compute Engine atau App Engine yang sudah ada, atau Anda dapat membuat project baru.
  3. Jika perlu membuat permintaan ke REST API, Anda harus membuat ID OAuth 2.0. Lihat Menyiapkan OAuth 2.0.
  4. Dalam project, catat informasi berikut yang perlu Anda masukkan di langkah-langkah selanjutnya:
    • Client ID (xxxxxx.apps.googleusercontent.com).
    • Project ID yang ingin Anda gunakan. Anda dapat menemukan ID di bagian atas halaman Overview di konsol Cloud de Confiance . Anda juga dapat meminta pengguna mencantumkan nama project yang ingin ia gunakan di aplikasi Anda.

Jika belum pernah menjalankan Google Cloud CLI, Anda harus menjalankan perintah berikut untuk menentukan nama project dan melakukan autentikasi dengan konsol Cloud de Confiance :

gcloud auth login

Jika Anda ingin menjalankan perintah gcloud pada resource Cloud de Confiance by S3NS di project lain, tentukan opsi --project untuk perintah ini dan untuk perintah gcloud lainnya di sepanjang halaman ini.

Membuat zona terkelola

Tiap zona terkelola yang Anda buat dikaitkan dengan projectCloud de Confiance . Bagian berikut menjelaskan cara membuat jenis zona terkelola yang didukung Cloud DNS.

Membuat zona pribadi

Untuk membuat zona pribadi terkelola baru dengan data DNS pribadi yang dikelola oleh Cloud DNS, selesaikan langkah-langkah berikut. Untuk mengetahui informasi selengkapnya, baca Praktik terbaik untuk zona pribadi Cloud DNS.

Konsol

  1. Di konsol Cloud de Confiance , buka halaman Create a DNS zone.

    Buka Create a DNS zone

  2. Untuk Zone type, pilih Private.

  3. Masukkan Zone name seperti my-new-zone.

  4. Masukkan akhiran DNS name untuk zona pribadi. Semua data di zona memiliki akhiran ini, misalnya: example.private.

  5. Opsional: Tambahkan deskripsi.

  6. Di bagian Options, pilih Default (private).

  7. Pilih jaringan Virtual Private Cloud (VPC) yang zona pribadinya harus terlihat. Hanya jaringan VPC yang Anda pilih yang diberi otorisasi untuk mengkueri data di zona.

  8. Klik Create.

gcloud

Jalankan perintah dns managed-zones create:

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --networks=VPC_NETWORK_LIST \
    --labels=LABELS \
    --visibility=private

Ganti kode berikut:

  • NAME: nama zona Anda
  • DESCRIPTION: deskripsi zona Anda
  • DNS_SUFFIX: akhiran DNS untuk zona Anda, seperti example.private
  • VPC_NETWORK_LIST: daftar jaringan VPC yang dipisahkan koma yang diizinkan untuk mengkueri zona
  • LABELS: daftar pasangan nilai kunci yang dipisahkan koma opsional seperti dept=marketing atau project=project1. Untuk mengetahui informasi selengkapnya, baca dokumentasi SDK

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

API

Kirim permintaan POST menggunakan metode managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "private",
  "privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "networks": [
      {
        "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
        "networkUrl": "VPC_NETWORK_1"
      },
      {
        "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
        "networkUrl": "VPC_NETWORK_2"
      },
      ....
    ]
  }
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat zona terkelola dibuat
  • NAME: nama zona Anda
  • DESCRIPTION: deskripsi zona Anda
  • DNS_NAME: akhiran DNS untuk zona Anda, seperti example.private
  • VPC_NETWORK_1 dan VPC_NETWORK_2: URL untuk jaringan VPC dalam project yang sama yang dapat mengkueri data dalam zona ini. Anda dapat menambahkan beberapa jaringan VPC seperti yang ditunjukkan. Untuk menentukan URL jaringan VPC, gunakan perintah gcloud berikut, dengan mengganti VPC_NETWORK_NAME dengan nama jaringan:

    gcloud compute networks describe VPC_NETWORK_NAME \
     --format="get(selfLink)"
    

Membuat zona dengan izin IAM khusus

Izin Identity and Access Management (IAM) untuk zona yang dikelola resource individual dapat Anda manfaatkan untuk menyiapkan izin baca, tulis, atau administrator khusus untuk zona terkelola yang berbeda dalam project yang sama.

Untuk mengetahui petunjuk tentang cara membuat zona dengan izin Identity and Access Management (IAM) khusus, baca bagian Membuat zona dengan izin IAM khusus.

Membuat zona DNS Direktori Layanan

Anda dapat membuat zona Direktori Layanan yang memungkinkan layanan berbasis Cloud de Confiance mengkueri namespace Direktori Layanan Anda melalui DNS.

Untuk mengetahui petunjuk mendetail tentang cara membuat zona DNS Direktori Layanan, baca bagian Mengonfigurasi zona DNS Direktori Layanan.

Untuk mengetahui petunjuk tentang cara menggunakan DNS untuk mengkueri Direktori Layanan, baca bagian Membuat kueri menggunakan DNS.

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

Membuat zona penerusan

Dengan zona penerusan, Anda dapat menarget server nama untuk zona pribadi tertentu. Untuk mengetahui petunjuk tentang cara membuat zona penerusan pribadi terkelola baru, baca bagian Membuat zona penerusan.

Membuat zona peering

Peering DNS dapat Anda gunakan guna mengirim permintaan untuk data yang berasal dari namespace satu zona ke jaringan VPC lain. Untuk mengetahui petunjuk tentang cara membuat zona peering, baca bagian Membuat zona peering.

Membuat zona binding lintas project

Buat zona pribadi terkelola yang dapat dihubungkan ke jaringan yang dimiliki oleh project lain dalam organisasi yang sama. Untuk mengetahui petunjuk tentang cara membuat zona binding lintas project, baca bagian Zona binding lintas project.

Memperbarui zona terkelola

Cloud DNS dapat Anda gunakan untuk mengubah atribut tertentu dari zona publik .

Memperbarui label

Untuk menambahkan label baru, mengubah label yang ada, menghapus label yang dipilih, atau menghapus semua label di zona terkelola, selesaikan langkah-langkah berikut.

gcloud

Jalankan perintah dns managed-zones update:

gcloud dns managed-zones update NAME \
    --update-labels=LABELS
gcloud dns managed-zones update NAME \
    --remove-labels=LABELS
gcloud dns managed-zones update NAME \
    --clear-labels

Ganti kode berikut:

  • NAME: nama zona Anda
  • LABELS: daftar pasangan nilai kunci yang dipisahkan koma opsional seperti dept=marketing atau project=project1. Untuk mengetahui informasi selengkapnya, baca dokumentasi SDK

Membuat daftar dan mendeskripsikan zona terkelola

Bagian berikut menunjukkan cara mencantumkan atau mendeskripsikan zona terkelola.

Mencantumkan zona terkelola

Untuk mencantumkan semua zona terkelola Anda dalam sebuah project, selesaikan langkah-langkah berikut.

Konsol

  1. Di konsol Cloud de Confiance , buka halaman Cloud DNS zones.

    Buka Cloud DNS zones

  2. Lihat zona terkelola di panel kanan.

gcloud

Jalankan perintah dns managed-zones list:

gcloud dns managed-zones list

Untuk mencantumkan semua zona terkelola, ubah perintah sebagai berikut: Untuk mencantumkan semua zona pribadi terkelola, ubah perintah sebagai berikut:

gcloud dns managed-zones list \
   --filter="visibility=private"

Mendeskripsikan zona terkelola

Untuk melihat atribut zona terkelola, selesaikan langkah-langkah berikut.

Konsol

  1. Di konsol Cloud de Confiance , buka halaman Cloud DNS zones.

    Buka Cloud DNS zones

  2. Klik zona yang ingin Anda periksa.

gcloud

Jalankan perintah dns managed-zones describe:

gcloud dns managed-zones describe NAME

Ganti NAME dengan nama zona Anda.

Menghapus zona terkelola

Jika Anda menghapus zona, data DNS-nya akan dihapus secara permanen dan tidak dapat dipulihkan. Untuk mencegah kehilangan data DNS, ekspor data zona Anda sebelum penghapusan. Untuk mengetahui informasi tentang cara mengekspor data zona, baca bagian Mengimpor dan mengekspor kumpulan data resource.

Untuk menghapus zona terkelola, selesaikan langkah-langkah berikut.

Konsol

  1. Di konsol Cloud de Confiance , buka halaman Cloud DNS zones.

    Buka Cloud DNS zones

  2. Klik zona terkelola yang ingin Anda hapus.

  3. Klik Delete zone.

gcloud

  1. Hapus semua data di zona, kecuali data SOA dan NS. Untuk mengetahui informasi selengkapnya, baca bagian Menghapus data. Anda dapat mengosongkan seluruh zona dengan cepat dengan mengimpor file kosong ke dalam kumpulan data. Untuk mengetahui informasi selengkapnya, baca bagian Mengimpor dan mengekspor kumpulan data. Contoh:

    touch empty-file
    gcloud dns record-sets import -z NAME \
       --delete-all-existing \
       empty-file
    rm empty-file
    

    Ganti NAME dengan nama zona Anda.

  2. Untuk menghapus zona pribadi terkelola yang baru, jalankan perintah dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    Ganti NAME dengan nama zona Anda.

Langkah berikutnya