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 Google Cloud . 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 Google Cloud . 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 Google Cloud :

gcloud auth login

Jika Anda ingin menjalankan perintah gcloud pada resource Google Cloud 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 projectGoogle Cloud . Bagian berikut menjelaskan cara membuat jenis zona terkelola yang didukung Cloud DNS.

Membuat zona publik

Untuk membuat zona terkelola baru, selesaikan langkah-langkah berikut.

Konsol

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

    Buka Create a DNS zone

  2. Untuk Zone type, pilih Public.

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

  4. Masukkan akhiran DNS name untuk zona menggunakan nama domain yang Anda miliki. Semua data di zona memiliki akhiran ini, misalnya: example.com.

  5. Di bagian DNSSEC, pilih Off, On, atau Transfer. Untuk mengetahui informasi selengkapnya, baca bagian Mengaktifkan DNSSEC untuk zona terkelola yang ada.

  6. Klik Create. Halaman Zone details akan ditampilkan.

gcloud

Jalankan perintah dns managed-zones create:

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

Ganti kode berikut:

  • NAME: nama zona Anda
  • DESCRIPTION: deskripsi zona Anda
  • DNS_SUFFIX: akhiran DNS untuk zona Anda, seperti example.com
  • 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" "example_zone" {
  name        = "example-zone"
  dns_name    = "example-${random_id.rnd.hex}.com."
  description = "Example DNS zone"
  labels = {
    name = "value"
  }
}

resource "random_id" "rnd" {
  byte_length = 4
}

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": "public"
}

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.com

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 Google Cloud , 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 Google Cloud 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