Tạo, sửa đổi và xoá vùng

Trang này hướng dẫn cách tạo, cập nhật, liệt kê và xoá các vùng do Cloud DNS quản lý. Trước khi sử dụng trang này, hãy làm quen với Tổng quan về Cloud DNSCác thuật ngữ chính.

Trước khi bạn bắt đầu

API Cloud DNS yêu cầu bạn tạo một dự án Cloud DNS và bật API Cloud DNS.

Nếu đang tạo một ứng dụng sử dụng API REST, bạn cũng phải tạo một mã ứng dụng khách OAuth 2.0.

  1. Hãy đăng ký Tài khoản Google nếu bạn chưa có.
  2. Bật Cloud DNS API trong Trusted Cloud bảng điều khiển. Bạn có thể chọn một dự án Compute Engine hoặc App Engine hiện có hoặc tạo một dự án mới.
  3. Nếu cần gửi yêu cầu đến API REST, bạn cần tạo một mã nhận dạng OAuth 2.0. Xem bài viết Thiết lập OAuth 2.0.
  4. Trong dự án, hãy lưu ý những thông tin sau đây mà bạn cần nhập trong các bước sau:
    • Mã ứng dụng khách (xxxxxx.apps.googleusercontent.com).
    • Mã dự án mà bạn muốn sử dụng. Bạn có thể tìm thấy mã này ở đầu trang Tổng quan trong bảng điều khiển Trusted Cloud . Bạn cũng có thể yêu cầu người dùng cung cấp tên dự án mà họ muốn sử dụng trong ứng dụng.

Nếu chưa chạy Google Cloud CLI trước đây, bạn phải chạy lệnh sau để chỉ định tên dự án và xác thực bằng bảng điều khiển Trusted Cloud :

gcloud auth login

Nếu bạn muốn chạy lệnh gcloud trên các tài nguyên Trusted Cloud by S3NS trong một dự án khác, hãy chỉ định tuỳ chọn --project cho lệnh này và cho các lệnh gcloud khác trên trang này.

Tạo vùng được quản lý

Mỗi vùng được quản lý mà bạn tạo sẽ được liên kết với một dự ánTrusted Cloud . Các phần sau đây mô tả cách tạo loại vùng được quản lý mà Cloud DNS hỗ trợ.

Tạo vùng riêng tư

Để tạo một vùng riêng được quản lý mới có các bản ghi DNS riêng do Cloud DNS quản lý, hãy hoàn tất các bước sau. Để biết thêm thông tin, hãy xem bài viết Các phương pháp hay nhất cho vùng riêng tư của Cloud DNS.

Bảng điều khiển

  1. Trong Trusted Cloud console, hãy chuyển đến trang Tạo vùng DNS.

    Chuyển đến phần Tạo vùng DNS

  2. Đối với Loại vùng, hãy chọn Riêng tư.

  3. Nhập Tên vùng, chẳng hạn như my-new-zone.

  4. Nhập hậu tố tên DNS cho vùng riêng tư. Tất cả bản ghi trong vùng đều có chung hậu tố này, ví dụ: example.private.

  5. Không bắt buộc: Thêm nội dung mô tả.

  6. Trong phần Tuỳ chọn, hãy chọn Mặc định (riêng tư).

  7. Chọn các mạng Virtual Private Cloud (VPC) mà bạn muốn hiển thị vùng riêng tư. Chỉ những mạng VPC mà bạn chọn mới được uỷ quyền truy vấn bản ghi trong vùng.

  8. Nhấp vào Tạo.

gcloud

Chạy lệnh dns managed-zones create:

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

Thay thế nội dung sau:

  • NAME: tên cho vùng của bạn
  • DESCRIPTION: nội dung mô tả cho vùng của bạn
  • DNS_SUFFIX: hậu tố DNS cho vùng của bạn, chẳng hạn như example.private
  • VPC_NETWORK_LIST: danh sách được phân tách bằng dấu phẩy gồm các mạng VPC được uỷ quyền để truy vấn vùng
  • LABELS: danh sách các cặp khoá-giá trị được phân tách bằng dấu phẩy (không bắt buộc) như dept=marketing hoặc project=project1; để biết thêm thông tin, hãy xem tài liệu về 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
}

Giao diện lập trình ứng dụng (API)

Gửi yêu cầu POST bằng phương thức 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"
      },
      ....
    ]
  }
}

Thay thế nội dung sau:

  • PROJECT_ID: mã nhận dạng của dự án nơi tạo vùng được quản lý
  • NAME: tên cho vùng của bạn
  • DESCRIPTION: nội dung mô tả cho vùng của bạn
  • DNS_NAME: hậu tố DNS cho vùng của bạn, chẳng hạn như example.private
  • VPC_NETWORK_1VPC_NETWORK_2: URL cho các mạng VPC trong cùng một dự án có thể truy vấn các bản ghi trong vùng này. Bạn có thể thêm nhiều mạng VPC như được chỉ định. Để xác định URL cho một mạng VPC, hãy sử dụng lệnh gcloud sau, thay thế VPC_NETWORK_NAME bằng tên của mạng:

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

Tạo một vùng có các quyền IAM cụ thể

Quyền Quản lý danh tính và quyền truy cập (IAM) cho từng vùng tài nguyên được quản lý cho phép bạn thiết lập quyền đọc, ghi hoặc quyền quản trị viên cụ thể cho các vùng được quản lý khác nhau trong cùng một dự án.

Để biết hướng dẫn về cách tạo một vùng có các quyền Quản lý danh tính và quyền truy cập (IAM) cụ thể, hãy xem bài viết Tạo một vùng có các quyền IAM cụ thể.

Tạo vùng DNS của Thư mục dịch vụ

Bạn có thể tạo một vùng Danh mục dịch vụ cho phép các dịch vụ dựa trên Trusted Cloudtruy vấn không gian tên Danh mục dịch vụ thông qua DNS.

Để biết hướng dẫn chi tiết về cách tạo vùng DNS của Danh mục dịch vụ, hãy xem bài viết Định cấu hình vùng DNS của Danh mục dịch vụ.

Để biết hướng dẫn về cách sử dụng DNS để truy vấn Thư mục dịch vụ, hãy xem phần Truy vấn bằng 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
}

Tạo vùng chuyển tiếp

Vùng chuyển tiếp cho phép bạn nhắm đến máy chủ định danh cho các vùng riêng tư cụ thể. Để biết hướng dẫn về cách tạo một vùng chuyển tiếp riêng tư mới được quản lý, hãy xem bài viết Tạo vùng chuyển tiếp.

Tạo vùng peering

Tính năng liên kết DNS cho phép bạn gửi yêu cầu về các bản ghi đến từ không gian tên của một vùng đến một mạng VPC khác. Để biết hướng dẫn về cách tạo vùng liên kết ngang, hãy xem bài viết Tạo vùng liên kết ngang.

Tạo vùng liên kết giữa các dự án

Tạo một vùng riêng tư được quản lý có thể liên kết với một mạng do một dự án khác sở hữu trong cùng một tổ chức. Để biết hướng dẫn về cách tạo vùng liên kết giữa các dự án, hãy xem phần Vùng liên kết giữa các dự án.

Cập nhật các vùng được quản lý

Cloud DNS cho phép bạn sửa đổi một số thuộc tính nhất định của vùng vùng riêng tư được quản lý.

Cập nhật nhãn

Để thêm nhãn mới, thay đổi nhãn hiện có, xoá nhãn đã chọn hoặc xoá tất cả nhãn trên một vùng được quản lý, hãy hoàn tất các bước sau.

gcloud

Chạy lệnh 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

Thay thế nội dung sau:

  • NAME: tên cho vùng của bạn
  • LABELS: danh sách các cặp khoá-giá trị được phân tách bằng dấu phẩy (không bắt buộc) như dept=marketing hoặc project=project1; để biết thêm thông tin, hãy xem tài liệu về SDK

Liệt kê và mô tả các vùng được quản lý

Các phần sau đây cho biết cách liệt kê hoặc mô tả một vùng được quản lý.

Liệt kê các vùng được quản lý

Để liệt kê tất cả các vùng được quản lý trong một dự án, hãy hoàn tất các bước sau.

Bảng điều khiển

  1. Trong bảng điều khiển Trusted Cloud , hãy chuyển đến trang Cloud DNS zones (Vùng Cloud DNS).

    Chuyển đến các vùng Cloud DNS

  2. Xem các vùng được quản lý trong ngăn bên phải.

gcloud

Chạy lệnh dns managed-zones list:

gcloud dns managed-zones list

Để liệt kê tất cả các vùng được quản lý, hãy sửa đổi lệnh như sau: Để liệt kê tất cả các vùng riêng tư được quản lý, hãy sửa đổi lệnh như sau:

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

Mô tả vùng được quản lý

Để xem các thuộc tính của một vùng được quản lý, hãy hoàn tất các bước sau.

Bảng điều khiển

  1. Trong bảng điều khiển Trusted Cloud , hãy chuyển đến trang Cloud DNS zones (Vùng Cloud DNS).

    Chuyển đến các vùng Cloud DNS

  2. Nhấp vào vùng mà bạn muốn kiểm tra.

gcloud

Chạy lệnh dns managed-zones describe:

gcloud dns managed-zones describe NAME

Thay thế NAME bằng tên của vùng.

Xoá một vùng được quản lý

Khi bạn xoá một vùng, các bản ghi DNS của vùng đó sẽ bị xoá vĩnh viễn; bạn không thể khôi phục các bản ghi này. Để tránh mất bản ghi DNS, hãy xuất dữ liệu vùng trước khi xoá. Để biết thông tin về cách xuất dữ liệu vùng, hãy xem bài viết Nhập và xuất tập hợp bản ghi tài nguyên.

Để xoá một vùng được quản lý, hãy hoàn tất các bước sau.

Bảng điều khiển

  1. Trong bảng điều khiển Trusted Cloud , hãy chuyển đến trang Cloud DNS zones (Vùng Cloud DNS).

    Chuyển đến các vùng Cloud DNS

  2. Nhấp vào vùng được quản lý mà bạn muốn xoá.

  3. Nhấp vào Xoá vùng.

gcloud

  1. Xoá tất cả bản ghi trong vùng, ngoại trừ bản ghi SOANS. Để biết thêm thông tin, hãy xem bài viết Xoá bản ghi. Bạn có thể nhanh chóng làm trống toàn bộ một vùng bằng cách nhập một tệp trống vào một tập hợp bản ghi. Để biết thêm thông tin, hãy xem phần Nhập và xuất tập hợp bản ghi. Ví dụ:

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

    Thay thế NAME bằng tên của vùng.

  2. Để xoá một vùng riêng tư mới được quản lý, hãy chạy lệnh dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    Thay thế NAME bằng tên của vùng.

Bước tiếp theo