סכימה של קובץ הגדרה של בריכה פרטית

קובץ תצורה של מאגר פרטי מכיל הוראות ל-Cloud Build ליצירת מאגר פרטי על סמך המפרט שלכם. קובץ ההגדרות של מאגר פרטי מכיל מידע כמו גודל הדיסק וסוג המכונה שרוצים להשתמש בהם במאגר הפרטי. קובץ ההגדרות של המאגר הפרטי נדרש כשיוצרים ומנהלים מאגרים פרטיים באמצעות הכלי gcloud או Cloud Build API.

המבנה של קובץ ההגדרות של מאגר פרטי

אפשר לכתוב את קובץ ההגדרות של המאגר הפרטי באמצעות תחביר YAML או JSON. כדי ליצור ולנהל מאגרי כתובות פרטיים באמצעות curl, צריך לכתוב את קובץ ההגדרות של מאגר הכתובות הפרטי בפורמט JSON. כדי ליצור ולנהל מאגרי כתובות פרטיים באמצעות הכלי gcloud, צריך לכתוב את קובץ ההגדרות של מאגר הכתובות הפרטי בפורמט YAML או JSON.

קובץ תצורה של מאגר פרטי בנוי כך:

YAML

privatePoolV1Config:
  networkConfig:
    egressOption: NO_PUBLIC_EGRESS
    peeredNetwork: PEERED_NETWORK,
    peeredNetworkIpRange: PEERED_NETWORK_IP_RANGE
  workerConfig:
    diskSizeGb: PRIVATE_POOL_DISK_SIZE,
    machineType: PRIVATE_POOL_MACHINE_TYPE,
    workerRelease: CHANNEL_OR_VERSION

JSON

{
  "privatePoolV1Config": {
    "networkConfig": {
      "egressOption": "NO_PUBLIC_EGRESS",
      "peeredNetwork": "PEERED_NETWORK",
      "peeredNetworkIpRange": "PEERED_NETWORK_IP_RANGE"
    },
    "workerConfig": {
      "diskSizeGb": "PRIVATE_POOL_DISK_SIZE",
      "machineType": "PRIVATE_POOL_MACHINE_TYPE",
      "workerRelease": "CHANNEL_OR_VERSION"
    }
  }
}

ההסבר על השדות בקובץ ההגדרות של המאגר הפרטי:

networkConfig

זהו שדה אופציונלי. מציינים את networkConfig רק אם מבצעים קישור בין רשת ה-VPC לרשת של בעלים של שירות מנוהל.

egressOption

זהו שדה אופציונלי. אם אתם יוצרים את המאגר הפרטי שלכם בתוך היקף של VPC Service Controls, צריך להגדיר את הערך של השדה הזה ל-NO_PUBLIC_EGRESS. אם לא כוללים את השדה הזה בקובץ התצורה של המאגר הפרטי, מופעלת תעבורת נתונים יוצאת (egress) ציבורית. מידע על הגדרת VPC Service Controls למאגרי כתובות פרטיים זמין במאמר בנושא שימוש ב-VPC Service Controls.

peeredNetwork

זהו שדה חובה אם קובץ ההגדרות של המאגר הפרטי מכיל את השדה networkConfig. מגדירים את הערך של השדה הזה לכתובת ה-URL של משאב הרשת של רשת ה-VPC שמקושרת לרשת של ספק השירות. כתובת ה-URL של משאב הרשת צריכה להיות בפורמט projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, כאשר NETWORK_PROJECT_ID הוא מזהה הפרויקט של פרויקט Google Cloud שמכיל את רשת ה-VPC, ו-NETWORK_NAME הוא השם של רשת ה-VPC. אם לא מציינים ערך, Cloud Build משתמש כברירת מחדל ברשת של יצרן השירות.

peeredNetworkIpRange

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

‫peeredNetworkIpRange מצוין באמצעות סימון Classless Inter-Domain Routing‏ (CIDR) בפורמט 'STARTING_IP/SUBNET_PREFIX_SIZE'. אם משתמשים בשדה הזה, חובה לציין את SUBNET_PREFIX_SIZE. המספר SUBNET_PREFIX_SIZE קובע את הגודל של טווח כתובות ה-IP. הוא חייב להתחיל בקו נטוי (/) והערך שלו צריך להיות קטן מ-29 או שווה לו.החלק STARTING_IP הוא אופציונלי ומציין את כתובת ההתחלה של הטווח. אם לא מציינים את STARTING_IP, מוקצה אוטומטית כתובת התחלה מתוך טווח החיבור הפרטי. אם לא מציינים ערך ל-peeredNetworkIpRange, נעשה שימוש בערך ברירת המחדל /24, שמקצה באופן אוטומטי כתובת IP התחלתית עם טווח של 256 כתובות IP.

הערך של SUBNET_PREFIX_SIZE לא יכול להיות גדול מ-29. מספר גדול יותר מציין קידומת גדולה יותר של רשת משנה, כך שיהיו פחות כתובות IP אפשריות וטווח כתובות ה-IP יהיה קטן יותר. כתובת IP היא 32 ביט, ולכן גודל הקידומת /24 מאפשר 256 כתובות IP אפשריות בטווח (שמונה ביט), בעוד שגודל הקידומת /29 מאפשר שמונה כתובות IP אפשריות (שלושה ביט). מספר המכונות הווירטואליות המקסימלי של ה-Builder מוגבל למספר כתובות ה-IP שניתן להשתמש בהן בטווח (המספר הכולל האפשרי של כתובות ה-IP בטווח פחות שתיים).

דוגמאות לשדה peeredNetworkIpRange:

  • ‫192.168.0.0/24 מציין טווח כתובות IP שמתחיל ב-192.168.0.0 עם גודל קידומת של רשת משנה של 24 (256 כתובות IP, מתוכן 254 כתובות IP שניתנות לשימוש).
  • ‫/29 מציין טווח עם כתובת IP התחלתית שנקבעת באופן אוטומטי וגודל קידומת של תת-רשת של 29 (שמונה כתובות IP, עם שש כתובות IP שניתן להשתמש בהן).

workerConfig

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

diskSizeGb

זהו שדה אופציונלי. בשדה הזה מציינים את גודל הדיסק של מופע המאגר הפרטי ב-GB. מציינים ערך שגדול מ-100 או שווה לו, וקטן מ-4,000 או שווה לו. אם לא כוללים את השדה הזה בקובץ ההגדרות של המאגר הפרטי, או אם מציינים את הערך 0 בשדה הזה, Cloud Build משתמש בערך ברירת המחדל 100.

machineType

זהו שדה אופציונלי. בשדה הזה מציינים את סוג המכונה של Compute Engine עבור המכונה במאגר הפרטי. אם לא מציינים ערך, Cloud Build משתמש בערך ברירת המחדל e2-medium. אחרת, מציינים אחד מסוגי המכונות הבאים:

סוגי מכונות

e2 n2d c3
e2-medium n2d-standard-2 c3-standard-4
e2-standard-2 n2d-standard-4 c3-standard-8
e2-standard-4 n2d-standard-8 c3-standard-22
e2-standard-8 n2d-standard-16 c3-standard-44
e2-standard-16 n2d-standard-32 c3-standard-88
e2-standard-32 n2d-standard-48 c3-standard-176
e2-highmem-2 n2d-standard-64 c3-highcpu-4
e2-highmem-4 n2d-standard-80 c3-highcpu-8
e2-highmem-8 n2d-standard-96 c3-highcpu-22
e2-highmem-16 n2d-standard-128 c3-highcpu-44
e2-highcpu-2 n2d-standard-224 c3-highcpu-88
e2-highcpu-4 n2d-highmem-2 c3-highcpu-176
e2-highcpu-8 n2d-highmem-4 c3-highmem-4
e2-highcpu-16 n2d-highmem-8 c3-highmem-8
e2-highcpu-32 n2d-highmem-16 c3-highmem-22
n2d-highmem-32 c3-highmem-44
n2d-highmem-48 c3-highmem-88
n2d-highmem-64 c3-highmem-176
n2d-highmem-80
n2d-highmem-96
n2d-highcpu-2
n2d-highcpu-4
n2d-highcpu-8
n2d-highcpu-16
n2d-highcpu-32
n2d-highcpu-48
n2d-highcpu-64
n2d-highcpu-80
n2d-highcpu-96
n2d-highcpu-128
n2d-highcpu-224

בטבלה הבאה מוצגת הזמינות של סוגי מכונות לפי אזור:

זמינות של סוגי מכונות לפי אזור

c3-standard-* c3-highcpu-* c3-highmem-* e2-* n2d-*
‫asia-northeast1 asia-southeast1 asia-southeast1 africa-south1 africa-south1
asia-southeast1 europe-west1 europe-west1 asia-east1 asia-east1
‫australia-southeast1 europe-west3 europe-west2 ‫asia-east2 ‫asia-east2
europe-west1 europe-west4 europe-west3 ‫asia-northeast1 ‫asia-northeast1
europe-west2 me-central2 europe-west4 asia-northeast2 asia-northeast2
europe-west3 us-central1 us-central1 asia-northeast3 asia-northeast3
europe-west4 us-east1 us-east1 ‫asia-south1 ‫asia-south1
europe-west9 us-east4 us-east4 asia-south2 asia-south2
me-central2 us-east5 us-east5 asia-southeast1 asia-southeast1
me-west1 us-west2 us-west1 ‫asia-southeast2 ‫asia-southeast2
northamerica-northeast1 us-west3 us-west2 ‫australia-southeast1 ‫australia-southeast1
southamerica-east1 us-west4 ‫australia-southeast2 ‫australia-southeast2
us-central1 europe-central2 europe-central2
us-east1 europe-north1 europe-north1
us-east4 europe-north2 europe-southwest1
us-east5 europe-southwest1 europe-west1
us-west1 europe-west1 europe-west10
us-west2 europe-west2 europe-west12
us-west3 europe-west3 europe-west2
us-west4 europe-west4 europe-west3
europe-west6 europe-west4
europe-west8 europe-west6
europe-west9 europe-west8
europe-west10 europe-west9
europe-west12 me-central1
me-central1 me-central2
me-central2 me-west1
me-west1 northamerica-northeast1
northamerica-northeast1 northamerica-northeast2
northamerica-northeast2 southamerica-east1
northamerica-south1 southamerica-west1
southamerica-east1 us-central1
southamerica-west1 us-east1
us-central1 us-east4
us-east1 us-east5
us-east4 us-south1
us-east5 us-west1
us-south1 us-west2
us-west1 us-west3
us-west2 us-west4
us-west3
us-west4

enableNestedVirtualization

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

workerRelease

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

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