בדף הזה מוסבר איך להגדיר את סביבת הרשת כדי להשתמש במאגרי כתובות פרטיים ברשת VPC. אם אתם לא מכירים בריכות פרטיות, כדאי לקרוא את הסקירה הכללית על בריכות פרטיות.
הסבר על אפשרויות ההגדרה של הרשת
מאגרי כתובות IP פרטיות מאוחסנים ברשת של ענן וירטואלי פרטי (VPC) בבעלות Google שנקראת רשת בעלים של שירות מנוהל. כשמגדירים מאגר פרטי, אפשר לבחור להשתמש ברשת של בעלים של שירות מנוהל או להגדיר חיבור פרטי בין הרשת של בעלים של שירות מנוהל לבין רשת ה-VPC שמכילה את המשאבים שלכם.
בוחרים אחת מהאפשרויות הבאות להגדרת הרשת, בהתאם לצרכים של הארגון:
שימוש ברשת של יצרן השירות בלבד: כדאי להשתמש באפשרות הזו אם:
- אתם לא מחפשים גרסאות build כדי לגשת למשאבים ברשת הפרטית שלכם
- אתם רוצים סוגים וגדלים של מכונות שאפשר להגדיר
זוהי אפשרות ברירת המחדל לרשת ליצירת המאגר הפרטי, ולא נדרשת הגדרה של רשת. אם אתם מעוניינים באפשרות הזו, אתם יכולים להמשיך ליצירת המאגר הפרטי.
הגדרת חיבור פרטי בין הרשת של בעלים של שירות מנוהל לבין רשת ה-VPC שלכם: החיבור הפרטי מאפשר למכונות וירטואליות ברשת ה-VPC ובמאגרים פרטיים לתקשר באופן בלעדי באמצעות כתובות IP פנימיות. כדאי להשתמש באפשרות הזו אם:
- אתם רוצים שהגרסאות יגשו למשאבים ברשת ה-VPC
- אתם רוצים גדלים וסוגים של מכונות שאפשר להגדיר
הגדרת חיבור פרטי בין רשת ה-VPC שלכם לבין הרשת של בעלים של שירות מנוהל
צריך שיהיה לכם רשת VPC קיימת שבה תשתמשו כדי להתחבר לרשת של בעלים של שירות מנוהל.
כדי להשתמש בדוגמאות של שורת הפקודה במדריך הזה, צריך להתקין ולהגדיר את Google Cloud CLI.
הפעלת ה-API:
המסוף
מפעילים את Cloud Build API ואת Service Networking API, אם הם עדיין לא מופעלים.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud
מפעילים את Cloud Build API ואת Service Networking API:
gcloud services enable cloudbuild.googleapis.com servicenetworking.googleapis.com-
כדי לוודא שלחשבון המשתמש יש את ההרשאות שנדרשות להגדרת חיבור פרטי, צריך לבקש מהאדמין להקצות לחשבון המשתמש את תפקיד ה-IAM Compute Engine Network Admin (
roles/compute.networkAdmin) בחשבון השירות של הפרויקט Google Cloud שבו נמצאת רשת ה-VPC. להסבר על מתן תפקידים, קראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.יכול להיות שהאדמין גם יוכל לתת את ההרשאות שנדרשות באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
ברשת ה-VPC, מקצים טווח כתובות IP פנימיות עם שם:
טווח כתובות ה-IP שמציינים כאן יהיה כפוף לכללי חומת האש שמוגדרים ברשת ה-VPC.
Cloud Build שומר את טווחי כתובות ה-IP
192.168.10.0/24ו-172.17.0.0/16לרשת הגשר של Docker. כשמקצים טווחי כתובות IP למשאבים בפרויקטים, מומלץ לבחור טווח מחוץ ל-192.168.10.0/24ול-172.17.0.0/16במקרים שבהם כלי הבנייה של Cloud Build אמורים לגשת למשאבים האלה.לדוגמה, לא תהיה גישה לטווח הכתובות של מישור הבקרה של Google Kubernetes Engine
192.168.10.96/28מה-buildergke-deployשל Cloud Build בגלל החפיפה.המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
בוחרים את רשת ה-VPC שתתחבר לרשת ה-VPC של המאגר הפרטי.
לוחצים על הכרטיסייה גישה פרטית לשירות.
בכרטיסייה גישה פרטית לשירותים, בוחרים בכרטיסייה הקצאת טווחי כתובות IP לשירותים.
לוחצים על הקצאת טווח כתובות IP.
מזינים שם ותיאור לטווח שהוקצה.
מציינים טווח כתובות IP להקצאה:
- כדי לציין טווח של כתובות IP, בוחרים באפשרות בהתאמה אישית ומזינים בלוק CIDR.
- כדי לציין אורך קידומת ולאפשר ל-Google לבחור טווח זמין, בוחרים באפשרות אוטומטי ומזינים אורך קידומת. אורך הקידומת צריך להיות
/24או פחות, למשל/22,/21וכו'.
לוחצים על הקצאה כדי ליצור את הטווח המוקצה.
gcloud
כדי לציין טווח כתובות ואורך קידומת (מסכה של רשת משנה), משתמשים בדגלים
addressesו-prefix-length. אורך הקידומת צריך להיות /24 או פחות, למשל /22, /21 וכו'. לדוגמה, כדי להקצות את בלוק ה-CIDR192.168.0.0/16, מציינים192.168.0.0לכתובת ו-16לאורך הקידומת.gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --addresses=192.168.0.0 \ --prefix-length=16 \ --description=DESCRIPTION \ --network=VPC_NETWORKכדי לציין רק אורך קידומת (מסכה של רשת משנה), פשוט משתמשים בדגל
prefix-length. כשמשמיטים את טווח הכתובות, Google Cloudבוחר באופן אוטומטי טווח כתובות שלא נמצא בשימוש ברשת ה-VPC. בדוגמה הבאה נבחר טווח כתובות IP שלא נמצא בשימוש עם אורך קידומת של16ביטים.gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description=DESCRIPTION \ --network=VPC_NETWORKמחליפים את ערכי ה-placeholder בפקודה בערכים הבאים:
-
RESERVED_RANGE_NAME: שם לטווח שהוקצה, למשלmy-allocated-range. -
DESCRIPTION: תיאור הטווח, למשלallocated for my-service.
VPC_NETWORK: השם של רשת ה-VPC, למשלmy-vpc-network.
יוצרים חיבור פרטי בין הרשת של בעלים של שירות מנוהל לבין רשת ה-VPC שלכם:
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
בוחרים את רשת ה-VPC שתתחבר לרשת ה-VPC של המאגר הפרטי.
לוחצים על הכרטיסייה גישה פרטית לשירות.
בכרטיסייה גישה לשירותים פרטיים, בוחרים בכרטיסייה חיבורים פרטיים לשירותים.
לוחצים על Create connection (יצירת חיבור) כדי ליצור חיבור פרטי בין הרשת שלכם לבין הרשת של בעלים של שירות מנוהל.
בשדה הקצאה שהוקצתה, בוחרים את טווח ההקצאה שיצרתם בשלב הקודם.
לוחצים על Connect (קישור) כדי ליצור את הקישור.
gcloud
יצירת חיבור פרטי:
gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=ALLOCATED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_IDמחליפים את ערכי ה-placeholder בפקודה בערכים הבאים:
-
ALLOCATED_RANGE_NAME: השם של הטווח שהוקצה שיצרתם בשלב הקודם. -
VPC_NETWORK: השם של רשת ה-VPC -
PROJECT_ID: מזהה הפרויקט שמכיל את רשת ה-VPC.
הפקודה מפעילה פעולה ממושכת ומחזירה שם פעולה.
-
כדי לבדוק אם הפעולה הצליחה, מחליפים את
OPERATION_NAMEבשם הפעולה שהתקבל בשלב הקודם.gcloud services vpc-peerings operations describe \ --name=OPERATION_NAME
[אופציונלי: תרחיש של VPC משותף]. אם אתם משתמשים ב-VPC משותף, אתם צריכים ליצור את טווח כתובות ה-IP שהוקצה ואת החיבור הפרטי בפרויקט המארח. בדרך כלל, אדמין רשת בפרויקט המארח צריך לבצע את המשימות האלה. אחרי שמגדירים את הפרויקט המארח עם החיבור הפרטי, מכונות וירטואליות בפרויקטים של השירות יכולות להשתמש בחיבור הפרטי עם הרשת של בעלי השירות המנוהל. הפרויקט שמארח את חיבור ה-VPC והפרויקט שמכיל את המאגר הפרטי צריכים להיות חלק מאותו ארגון.
[אופציונלי: שימוש בכללי חומת אש]. אם יוצרים כלל חומת אש לתעבורת נתונים נכנסת ברשת ה-VPC, צריך לציין את אותו טווח כתובות IP שהקציתם כאן במסנן המקור של כלל הכניסה.