יצירה, שינוי ומחיקה של תחומים

בדף הזה מוסבר איך ליצור, לעדכן, להציג ולמחוק אזורים מנוהלים ב-Cloud DNS. לפני שמשתמשים בדף הזה, מומלץ לעיין בסקירה הכללית של Cloud DNS ובמונחים מרכזיים.

לפני שמתחילים

כדי להשתמש ב-Cloud DNS API, צריך ליצור פרויקט Cloud DNS ולהפעיל את Cloud DNS API.

אם אתם יוצרים אפליקציה שמשתמשת ב-API בארכיטקטורת REST, אתם צריכים גם ליצור מזהה לקוח OAuth 2.0.

  1. אם עדיין אין לכם חשבון, צריך להירשם לחשבון Google.
  2. מפעילים את Cloud DNS API ב Google Cloud מסוף. אפשר לבחור פרויקט קיים ב-Compute Engine או ב-App Engine, או ליצור פרויקט חדש.
  3. אם אתם צריכים לשלוח בקשות אל API בארכיטקטורת REST, אתם צריכים ליצור מזהה OAuth 2.0. מידע נוסף זמין במאמר בנושא הגדרת OAuth 2.0.
  4. בפרויקט, רושמים את הפרטים הבאים שצריך להזין בשלבים הבאים:
    • מזהה הלקוח (xxxxxx.apps.googleusercontent.com).
    • מזהה הפרויקט שבו רוצים להשתמש. המזהה מופיע בחלק העליון של הדף סקירה כללית במסוף Google Cloud . אפשר גם לבקש מהמשתמש לציין את שם הפרויקט שבו הוא רוצה להשתמש באפליקציה.

אם לא הפעלתם את Google Cloud CLI בעבר, אתם צריכים להריץ את הפקודה הבאה כדי לציין את שם הפרויקט ולאמת את עצמכם במסוף Google Cloud :

gcloud auth login

אם רוצים להריץ פקודה מסוג gcloud על משאבים Google Cloud בפרויקט אחר, צריך לציין את האפשרות --project בפקודה הזו ובפקודות אחרות מסוג gcloud שמופיעות בדף הזה.

יצירת אזורים מנוהלים

כל אזור מנוהל שיוצרים משויך לGoogle Cloud פרויקט. בקטעים הבאים מוסבר איך ליצור את סוג האזור המנוהל ש-Cloud DNS תומך בו.

יצירת אזור ציבורי

כדי ליצור אזור מנוהל חדש, מבצעים את השלבים הבאים.

המסוף

  1. במסוף Google Cloud , עוברים לדף יצירת תחום DNS.

    מעבר אל יצירת תחום DNS

  2. בסוג האזור, בוחרים באפשרות ציבורי.

  3. מזינים שם אזור, למשל my-new-zone.

  4. מזינים סיומת של שם DNS לאזור באמצעות שם דומיין שבבעלותכם. כל הרשומות באזור חולקות את הסיומת הזו, לדוגמה: example.com.

  5. בקטע DNSSEC, בוחרים באפשרות כבוי, מופעל או העברה. מידע נוסף זמין במאמר בנושא הפעלת DNSSEC לאזורים מנוהלים קיימים.

  6. לוחצים על יצירה. הדף Zone details מוצג.

gcloud

מריצים את הפקודה dns managed-zones create:

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

מחליפים את מה שכתוב בשדות הבאים:

  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • DNS_SUFFIX: סיומת ה-DNS של האזור, למשל example.com
  • LABELS: רשימה אופציונלית של זוגות של מפתח/ערך מופרדים בפסיקים, כמו dept=marketing או project=project1. מידע נוסף זמין במסמכי התיעוד של ה-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

שולחים בקשת POST באמצעות השיטה managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{
  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "public"
}

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט שבו נוצר האזור המנוהל
  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • DNS_NAME: סיומת ה-DNS של האזור, למשל example.com

יצירת אזור פרטי

כדי ליצור אזור פרטי מנוהל חדש עם רשומות DNS פרטיות שמנוהלות על ידי Cloud DNS, פועלים לפי השלבים הבאים. מידע נוסף זמין במאמר בנושא שיטות מומלצות לשימוש באזורים פרטיים ב-Cloud DNS.

המסוף

  1. במסוף Google Cloud , עוברים לדף יצירת תחום DNS.

    מעבר אל יצירת תחום DNS

  2. בשדה Zone type (סוג האזור), בוחרים באפשרות Private (פרטי).

  3. מזינים שם אזור, למשל my-new-zone.

  4. מזינים סיומת של שם DNS לאזור הפרטי. כל הרשומות באזור חולקות את הסיומת הזו, לדוגמה: example.private.

  5. אופציונלי: מוסיפים תיאור.

  6. בקטע אפשרויות, בוחרים באפשרות ברירת מחדל (פרטי).

  7. בוחרים את הרשתות של הענן הווירטואלי הפרטי (VPC) שבהן האזור הפרטי צריך להיות גלוי. רק רשתות ה-VPC שבוחרים מקבלות הרשאה לשלוח שאילתות לגבי רשומות באזור.

  8. לוחצים על יצירה.

gcloud

מריצים את הפקודה dns managed-zones create:

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

מחליפים את מה שכתוב בשדות הבאים:

  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • DNS_SUFFIX: סיומת ה-DNS של האזור, למשל example.private
  • VPC_NETWORK_LIST: רשימה מופרדת בפסיקים של רשתות VPC שמורשות לשלוח שאילתות לאזור
  • LABELS: רשימה אופציונלית של זוגות של מפתח/ערך מופרדים בפסיקים, כמו dept=marketing או project=project1. מידע נוסף זמין במסמכי התיעוד של ה-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

שולחים בקשת POST באמצעות השיטה 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"
      },
      ....
    ]
  }
}

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט שבו נוצר האזור המנוהל
  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • DNS_NAME: סיומת ה-DNS של האזור, למשל example.private
  • VPC_NETWORK_1 ו-VPC_NETWORK_2: כתובות URL של רשתות VPC באותו פרויקט שיכולות לשלוח שאילתות לרשומות באזור הזה. אפשר להוסיף כמה רשתות VPC, כמו שמוסבר. כדי לקבוע את כתובת ה-URL של רשת VPC, משתמשים בפקודה gcloud הבאה ומחליפים את VPC_NETWORK_NAME בשם הרשת:

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

יצירת אזור עם הרשאות IAM ספציפיות

ההרשאה לניהול זהויות והרשאות גישה (IAM) לאזור מנוהל של משאב ספציפי מאפשרת להגדיר הרשאות קריאה, כתיבה או אדמין ספציפיות לאזורים מנוהלים שונים באותו פרויקט.

הוראות ליצירת אזור עם הרשאות ספציפיות לניהול זהויות והרשאות גישה (IAM) מפורטות במאמר יצירת אזור עם הרשאות ספציפיות ל-IAM.

יצירת תחום DNS בספריית השירותים

אתם יכולים ליצור אזור Service Directory שמאפשר לשירותים מבוססי Google Cloudלבצע שאילתות במרחב השמות של Service Directory באמצעות DNS.

הוראות מפורטות ליצירת אזור DNS של Service Directory זמינות במאמר הגדרת אזור DNS של Service Directory.

הוראות לשימוש ב-DNS כדי לשלוח שאילתות ל-Service Directory מפורטות במאמר שליחת שאילתות באמצעות 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
}

יצירת אזור פרטי של חיפוש הפוך מנוהל

אזור מנוהל של חיפוש הפוך הוא אזור פרטי עם מאפיין מיוחד שמורה ל-Cloud DNS לבצע חיפוש PTR מול נתוני ה-DNS של Compute Engine. כדי לפתור נכון רשומות PTR שאינן RFC 1918 עבור מופעים של מכונות וירטואליות, צריך להגדיר אזורים מנוהלים של בדיקת DNS הפוכה ב-Cloud DNS.

הוראות ליצירת אזור פרטי חדש לחיפוש הפוך מנוהל מופיעות במאמר יצירת אזור מנוהל לחיפוש הפוך.

יצירת אזור העברה

אזורי הפניה מאפשרים לכם לטרגט שרתי שמות לאזורים פרטיים ספציפיים. הוראות ליצירת אזור העברה פרטי מנוהל חדש זמינות במאמר יצירת אזור העברה.

יצירת אזור שותפות

שירות DNS peering מאפשר לשלוח בקשות לרשומות שמגיעות ממרחב שמות של אזור אחד לרשת VPC אחרת. הוראות ליצירת אזור peering מפורטות במאמר יצירת אזור peering.

יצירת אזור שיוך חוצה-פרויקטים

יצירת אזור פרטי מנוהל שאפשר לקשר לרשת שנמצאת בבעלות של פרויקט אחר באותו ארגון. הוראות ליצירת אזור קשירה בין פרויקטים זמינות במאמר אזורי קשירה בין פרויקטים.

עדכון אזורים מנוהלים

‫Cloud DNS מאפשר לכם לשנות מאפיינים מסוימים שלתחום ציבורי או תחום פרטי מנוהל.

עדכון אזורים ציבוריים

אפשר לשנות את התיאור או את ההגדרה של DNSSEC של אזור ציבורי.

המסוף

  1. נכנסים לדף Cloud DNS zones במסוף Google Cloud .

    מעבר לאזורי Cloud DNS

  2. לוחצים על האזור הציבורי שרוצים לעדכן.

  3. לוחצים על עריכה.

  4. כדי לשנות את הגדרות DNSSEC, בקטע DNSSEC, בוחרים באפשרות מושבת, מופעל או העברה. מידע נוסף זמין במאמר בנושא הפעלת DNSSEC לאזורים מנוהלים קיימים.

  5. אופציונלי: מעדכנים את התיאור.

  6. לוחצים על Save.

gcloud

מריצים את הפקודה dns managed-zones update:

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --dnssec-state=STATE

מחליפים את מה שכתוב בשדות הבאים:

  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • STATE: הגדרת DNSSEC כמו Off, On או Transfer

עדכון אזורים פרטיים

אפשר לשנות את רשתות ה-VPC שבהן אזור פרטי גלוי.

המסוף

  1. נכנסים לדף Cloud DNS zones במסוף Google Cloud .

    מעבר לאזורי Cloud DNS

  2. לוחצים על האזור הפרטי שרוצים לעדכן.

  3. לוחצים על עריכה.

  4. בוחרים את רשתות ה-VPC שבהן האזור הפרטי צריך להיות גלוי. רק רשתות ה-VPC שנבחרו מורשות לשלוח שאילתות לגבי רשומות באזור.

  5. לוחצים על Save.

gcloud

מריצים את הפקודה dns managed-zones update:

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST

מחליפים את מה שכתוב בשדות הבאים:

  • NAME: שם לאזור
  • DESCRIPTION: תיאור של האזור
  • VPC_NETWORK_LIST: רשימה מופרדת בפסיקים של רשתות VPC שמורשות לשלוח שאילתות לאזור

עדכון התוויות

כדי להוסיף תוויות חדשות, לשנות תוויות קיימות, להסיר תוויות נבחרות או לנקות את כל התוויות באזור מנוהל, מבצעים את השלבים הבאים.

gcloud

מריצים את הפקודה 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

מחליפים את מה שכתוב בשדות הבאים:

  • NAME: שם לאזור
  • LABELS: רשימה אופציונלית של זוגות של מפתח/ערך מופרדים בפסיקים, כמו dept=marketing או project=project1. מידע נוסף זמין במסמכי התיעוד של ה-SDK.

רשימה ותיאור של תחומים מנוהלים

בקטעים הבאים מוסבר איך להציג רשימה של אזור מנוהל או לתאר אותו.

הצגת רשימה של אזורים מנוהלים

כדי להציג ברשימה את כל האזורים המנוהלים בפרויקט, מבצעים את השלבים הבאים.

המסוף

  1. נכנסים לדף Cloud DNS zones במסוף Google Cloud .

    מעבר לאזורי Cloud DNS

  2. בחלונית השמאלית אפשר לראות את האזורים המנוהלים.

gcloud

מריצים את הפקודה dns managed-zones list:

gcloud dns managed-zones list

כדי להציג רשימה של כל האזורים המנוהלים, משנים את הפקודה באופן הבא:

gcloud dns managed-zones list --filter="visibility=public"
כדי להציג רשימה של כל האזורים הפרטיים המנוהלים, משנים את הפקודה כך:

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

תיאור של אזור מנוהל

כדי לראות את המאפיינים של אזור מנוהל, פועלים לפי השלבים הבאים.

המסוף

  1. נכנסים לדף Cloud DNS zones במסוף Google Cloud .

    מעבר לאזורי Cloud DNS

  2. לוחצים על האזור שרוצים לבדוק.

gcloud

מריצים את הפקודה dns managed-zones describe:

gcloud dns managed-zones describe NAME

מחליפים את NAME בשם האזור.

מחיקת אזור מנוהל

כשמוחקים אזור, רשומות ה-DNS שלו מוסרות באופן סופי ואי אפשר לשחזר אותן. כדי למנוע אובדן של רשומות ה-DNS, כדאי לייצא את נתוני האזור לפני המחיקה. מידע על ייצוא נתוני אזורים זמין במאמר ייבוא וייצוא של קבוצות רשומות של משאבים.

כדי למחוק אזור מנוהל, פועלים לפי השלבים הבאים.

המסוף

  1. נכנסים לדף Cloud DNS zones במסוף Google Cloud .

    מעבר לאזורי Cloud DNS

  2. לוחצים על האזור המנוהל שרוצים למחוק.

  3. לוחצים על מחיקת האזור.

gcloud

  1. מסירים את כל הרשומות באזור, חוץ מרשומות SOA ו-NS. מידע נוסף מופיע במאמר בנושא הסרת רשומה. אפשר לרוקן במהירות אזור שלם על ידי ייבוא קובץ ריק למערכת רשומות. מידע נוסף זמין במאמר בנושא ייבוא וייצוא של קבוצות רשומות. לדוגמה:

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

    מחליפים את NAME בשם האזור.

  2. כדי למחוק אזור פרטי מנוהל חדש, מריצים את הפקודה dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    מחליפים את NAME בשם האזור.

המאמרים הבאים