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

בדף הזה מוסבר איך ליצור אזור פירינג. מידע מפורט על הרקע זמין במאמר בנושא Peering zones.

צריך להיכנס למסוף Google Cloud כחבר ב-Identity and Access Management (IAM) עם תפקיד DNS Peer ‏ (roles/dns.peer) בפרויקט שמכיל את רשת ה-VPC של הספק.

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

המסוף

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

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

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

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

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

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

  6. בקטע אפשרויות, בוחרים באפשרות קישור DNS בין רשתות שכנות (peering).

  7. בוחרים את הרשתות שבהן האזור הפרטי צריך להיות גלוי.

  8. בקטע Peer project, בוחרים פרויקט עמית.

  9. בקטע רשת עמיתים, בוחרים רשת עמיתים.

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

gcloud

  1. בפרויקט שמכיל את רשת ה-VPC של הצרכן, מאתרים או יוצרים חשבון שירות.

  2. מקצים לחשבון השירות (מהשלב הקודם) את התפקיד DNS Peer ‏ (roles/dns.peer) בפרויקט שמכיל את רשת ה-VPC של הספק.

    gcloud projects add-iam-policy-binding PRODUCER_PROJECT_ID \
       --member=SERVICE_ACCOUNT \
       --role=roles/dns.peer
    

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

    • PRODUCER_PROJECT_ID: מזהה הפרויקט שמכיל את רשת ה-VPC של הספק
    • SERVICE_ACCOUNT: חשבון השירות בפרויקט שמכיל את רשת ה-VPC של הצרכן שזוהתה או נוצרה בשלב 1
  3. בפרויקט שמכיל את רשת ה-VPC של הצרכן, צריך להעניק לחשבון השירות את התפקיד DNS Administrator ‏(roles/dns.admin) וליצור אזור חדש של שכפול פרטי מנוהל על ידי הרצת הפקודה dns managed-zones create:

    gcloud dns managed-zones create NAME \
      --description=DESCRIPTION \
      --dns-name=DNS_SUFFIX \
      --networks=CONSUMER_VPC_NETWORK \
      --account=SERVICE_ACCOUNT \
      --target-network=PRODUCER_VPC_NETWORK \
      --target-project=PRODUCER_PROJECT_ID \
      --visibility=private
    

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

    • NAME: שם לאזור
    • DESCRIPTION: תיאור של האזור
    • DNS_SUFFIX: סיומת ה-DNS של האזור, למשל example.com
    • CONSUMER_VPC_NETWORK: השם של רשת ה-VPC של הצרכן
    • SERVICE_ACCOUNT: חשבון השירות בפרויקט שמכיל את רשת ה-VPC של הלקוח, שצוין בשלב 1.
    • PRODUCER_VPC_NETWORK: השם של רשת ה-VPC של הספק
    • PRODUCER_PROJECT_ID: מזהה הפרויקט שמכיל את רשת ה-VPC של הספק

Terraform

resource "random_id" "zone_suffix" {
  byte_length = 8
}

resource "google_dns_managed_zone" "peering_zone" {
  name        = "peering-zone-${random_id.zone_suffix.hex}"
  dns_name    = "peering.example.com."
  description = "Example private DNS peering zone"

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_source.id
    }
  }

  peering_config {
    target_network {
      network_url = google_compute_network.network_target.id
    }
  }
}

resource "google_compute_network" "network_source" {
  name                    = "network-source"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_target" {
  name                    = "network-target"
  auto_create_subnetworks = false
}

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