קובץ תצורה של מאגר פרטי (private pool config file) מכיל הוראות ל-Cloud Build ליצירת מאגר פרטי על סמך המפרט שלכם. קובץ ההגדרה של מאגר פרטי מכיל מידע כמו גודל הדיסק וסוג המכונה שרוצים להשתמש בהם במאגר הפרטי. קובץ ההגדרות של המאגר הפרטי נדרש כשיוצרים ומנהלים מאגרים פרטיים באמצעות הכלי gcloud או Cloud Build API.
המבנה של קובץ ההגדרות של מאגר פרטי
אפשר לכתוב את קובץ ההגדרות של המאגר הפרטי באמצעות תחביר YAML או JSON. כדי ליצור ולנהל מאגרי IP פרטיים באמצעות curl, צריך לכתוב את קובץ ההגדרות של מאגר ה-IP הפרטי בפורמט 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
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"
}
}
}
ההסבר על השדות בקובץ ההגדרות של המאגר הפרטי:
networkConfig
השדה הזה אופציונלי. מציינים את networkConfig רק אם יוצרים קישור בין רשת ה-VPC לרשת של בעלים של שירות מנוהל.
egressOption
השדה הזה אופציונלי. מגדירים את הערך של השדה הזה ל-NO_PUBLIC_EGRESS אם יוצרים את המאגר הפרטי בתוך גבולות גזרה של VPC Service Controls. אם לא כוללים את השדה הזה בקובץ ההגדרות של המאגר הפרטי, מופעלת יציאה ציבורית.
מידע על הגדרת 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, אתם יכולים להפעיל וירטואליזציה מקוננת כדי להריץ מופעים אחרים של מכונות וירטואליות בתוך המכונה הווירטואלית של המאגר הפרטי. מידע נוסף זמין במאמר בנושא וירטואליזציה מקוננת.