בדף הזה מוסבר איך להגדיר גישה לרשת פרטית ולנתב תנועה בתוך Google Cloud רשת.
כדי להגדיר גישה לרשת פרטית, צריך להגדיר שלושה פרויקטים:
- פרויקט שמכיל רשת של ענן וירטואלי פרטי (VPC) שבה ישתמשו מכונת היעד הווירטואלית (VM) או מאזן העומסים הפנימי של היעד.
- פרויקט שמשמש כפרויקט שירות של Service Directory.
- פרויקט של מוצר עם ההגדרה שמפעילה גישה לרשת פרטית. Google Cloud דוגמה ל Google Cloud מוצר שיכול להתקשר לנקודות קצה באמצעות גישה לרשת פרטית היא Dialogflow CX.
הארטיפקטים של הפרויקטים יכולים להיות באותו פרויקט או בפרויקטים שונים.
לפני שמתחילים
לפני שמגדירים גישה לרשת פרטית, צריך לבצע את השלבים הבאים:
במסוף, בדף APIs & Services, לוחצים על Enable APIs and services כדי להפעיל את ממשקי ה-API שרוצים להשתמש בהם, כולל Service Directory API. Google Cloud
כדי לקשר את רשת ה-VPC למארחים מקומיים, יוצרים מנהרת Cloud VPN או חיבור Cloud Interconnect.
חשוב לוודא שפרויקט Google Cloud נמצא בגבולות הגזרה של VPC Service Controls של פרויקט הרשת ושל פרויקט Service Directory עבור
servicedirectory.googleapis.com.
הגדרת הפרויקט לרשת ה-VPC
כדי להגדיר את הפרויקט לרשת ה-VPC, מבצעים את השלבים הבאים:
יוצרים רשת VPC או בוחרים רשת VPC קיימת שיש לה תת-רשת IPv4 בלבד או תת-רשת עם מחסנית כפולה באזור שבו רוצים להשתמש. אין תמיכה ברשתות מדור קודם.
יוצרים את הכללים הנדרשים בחומת האש כדי לאפשר תעבורת נתונים נכנסת (ingress).
אם היעד הוא מכונה וירטואלית או מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי, כללי חומת האש צריכים לאפשר תעבורת TCP מטווח הכתובות
35.199.192.0/19ליציאות שבהן משתמשת התוכנה שפועלת במכונות הווירטואליות של היעד.אם היעד הוא מאזן עומסים פנימי של אפליקציות או מאזן עומסים פנימי של רשת לשרת proxy, כללי חומת אש של VPC ומדיניות חומת אש היררכית לא שולטים בפרוטוקולים ובפורטים שמאזן העומסים מקבל. במאזן עומסים פנימי של אפליקציות (ALB), אפשר להשתמש במדיניות אבטחה של Google Cloud Armor כדי להגביל את הגישה למאזן העומסים.
מידע נוסף על טווח
35.199.192.0/19זמין במאמר נתיבים ל-Cloud DNS ול-Service Directory.מקצים לסוכן השירות של מוצר Google Cloud שמבצע קריאה לנקודת הקצה את התפקיד 'שירות מורשה של Private Service Connect' (
roles/servicedirectory.pscAuthorizedService) בניהול זהויות והרשאות גישה (IAM).מידע נוסף על תפקידים והרשאות זמין במאמר הרשאות ותפקידים ב-Service Directory.
הגדרת הפרויקט של Service Directory
כדי להגדיר את הפרויקט של Service Directory, מבצעים את השלבים הבאים:
ברשת ה-VPC, יוצרים מכונה וירטואלית או מאזן עומסים פנימי.
מקצים לסוכן השירות של מוצרGoogle Cloud שיקרא לנקודת הקצה את התפקיד 'צפייה בספריית השירותים' (
roles/servicedirectory.viewer) ב-IAM.יצירה של מרחב שמות ושירות ב-Service Directory. לאחר מכן, יוצרים נקודת קצה לשירות הזה לפי השלבים שמפורטים בקטע הבא.
יצירת נקודת קצה עם גישה לרשת פרטית
כדי ליצור נקודת קצה עם גישה לרשת פרטית, פועלים לפי השלבים הבאים:
המסוף
- נכנסים לדף Service Directory namespaces במסוף Google Cloud . מעבר למרחבי שמות של Service Directory
- לוחצים על מרחב שמות.
- לוחצים על שירות.
- לוחצים על הוספת נקודת קצה.
- בשדה Endpoint name, מזינים שם לנקודת הקצה.
- בשדה IP address, מזינים כתובת IPv4, כמו
192.0.2.0. - בשדה יציאה, מזינים מספר יציאה, כמו
443או80. - כדי להפעיל גישה לרשת פרטית, בוחרים באפשרות הרצויה ברשת VPC משויכת:
- כדי לבחור מתוך רשימת הרשתות הזמינות, לוחצים על בחירה מתוך הרשימה ואז בוחרים את הרשת.
- כדי לציין פרויקט ורשת, לוחצים על Specify by a project and network name (ציון לפי שם הפרויקט ושם הרשת), ואז מזינים את מספר הפרויקט ואת שם הרשת.
- לוחצים על יצירה.
gcloud
משתמשים בפקודה gcloud service-directory endpoints create עם מזהה הפרויקט ונתיב הרשת שצוינו.
gcloud service-directory endpoints create ENDPOINT_NAME \ --project=PROJECT_ID \ --location=REGION \ --namespace=NAMESPACE_NAME \ --service=SERVICE_ID \ --address=IP_ADDRESS \ --port=PORT_NUMBER \ --network=NETWORK_PATH
מחליפים את מה שכתוב בשדות הבאים:
-
ENDPOINT_NAME: שם לנקודת הקצה שיוצרים בשירות, למשלmy-endpoint -
PROJECT_ID: מזהה הפרויקט -
REGION: האזור Google Cloud שמכיל את מרחב השמות -
NAMESPACE_NAME: השם שנתתם למרחב השמות, למשלmy-namespace -
SERVICE_ID: המזהה של השירות -
IP_ADDRESS: כתובת ה-IP של נקודת הקצה, למשל192.0.2.0 -
PORT_NUMBER: היציאות שבהן נקודות הקצה פועלות, בדרך כלל443או80 -
NETWORK_PATH: כתובת ה-URL של הרשת, כמוprojects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
הגדרת פרויקט המוצר Google Cloud
כדי להגדיר את Google Cloud פרויקט המוצר, מבצעים את השלבים הבאים:
מגדירים את המוצר Google Cloud כדי לקרוא לשירות Service Directory שיצרתם. השלבים הנדרשים תלויים בGoogle Cloud מוצר הספציפי.
תרחישים לדוגמה
בקטע הזה מפורטים תרחישים לדוגמה להגדרת גישה לרשת פרטית.
קריאה לנקודת קצה של HTTP כש-רשת VPC, מכונה וירטואלית ו-Service Directory נמצאים באותו פרויקט
בתרחיש השימוש הזה, אתם מגדירים את Dialogflow CX, שהוא Google Cloud מוצר לעיבוד שפה טבעית, כדי להתקשר לנקודת קצה של HTTP במכונת ה-VM. במהלך הקריאה לנקודת הקצה, מוודאים שהתנועה לא עוברת דרך האינטרנט הציבורי.
בתרחיש השימוש הזה, יוצרים את הארטיפקטים הבאים באותו פרויקט:
- רשת VPC
- מכונה וירטואלית
- שירות Service Directory
- Dialogflow CX
באיור 1 מוצג איך אפשר לאפשר לתצורת שירות Google של פרויקט לצאת למכונה וירטואלית. המכונה הווירטואלית נמצאת ברשת VPC של הפרויקט.
הגדרת הרשת ורשת היעד
- יוצרים פרויקט, כמו
myproject. יוצרים רשת VPC, למשל
vpc-1.במהלך יצירת רשת ה-VPC, במצב יצירת תת-רשת, בוחרים באפשרות אוטומטי.
יוצרים כלל לחומת האש, כמו
firewall-1.במהלך יצירת הכלל לחומת האש, מזינים או בוחרים את הערכים הבאים:
- בשדה רשת, בוחרים באפשרות
vpc-1. - בשדה Source IPv4 ranges (טווחים של כתובות IPv4 של המקור), מזינים
35.199.192.0/19. - בקטע פרוטוקולים ויציאות, בוחרים באפשרות TCP ומזינים
443או80.
- בשדה רשת, בוחרים באפשרות
באזור
us-central1, יוצרים מכונה וירטואלית, כמוvm-1.במהלך יצירת המכונה הווירטואלית, מזינים או בוחרים את הערכים הבאים:
- בקטע Networking > Network Interfaces (רשת > ממשקי רשת), בוחרים באפשרות
vpc-1. - בקטע Firewall, בוחרים באפשרות Allow HTTP traffic.
אם רוצים להשתמש ב-HTTPS, בוחרים באפשרות Allow HTTPS traffic. חשוב גם לוודא שמתקינים אישור של תשתית מפתח ציבורי (PKI) Transport Layer Security (TLS).
- בקטע Networking > Network Interfaces (רשת > ממשקי רשת), בוחרים באפשרות
באזור
us-central1, יוצרים מרחב שמות, למשלnamespace-1.במרחב השמות, רושמים שירות של Service Directory, כמו
sd-1.יוצרים נקודת קצה ב-
sd-1. בכתובת נקודת הקצה, משתמשים בכתובת ה-IP הפנימית שלvm-1ביציאה443. מידע נוסף זמין במאמר בנושא יצירת נקודת קצה עם גישה לרשת פרטית.מקצים לסוכן השירות של המוצרGoogle Cloud שיקרא לנקודת הקצה את תפקידי ה-IAM הבאים:
- תפקיד הצופה ב-Service Directory (
roles/servicedirectory.viewer) - תפקיד שירות מורשה של Private Service Connect (
roles/servicedirectory.pscAuthorizedService)
- תפקיד הצופה ב-Service Directory (
אופציונלי: אם רוצים להוסיף עוד מכונות וירטואליות, אפשר להגדיר עוד מכונה וירטואלית, כמו
vm-2, ולהוסיף את נקודת הקצה שלה, כמוendpoint-2.
הגדרת Google Cloud מוצר
- מגדירים תצורת מוצר Google Cloud , כמו "Cloud Scheduler, call me every minute" (Cloud Scheduler, תתקשר אליי כל דקה).
- מגדירים בקשת HTTP.
- מציינים שהבקשות צריכות לעבור דרך רשת פרטית, למשל דרך
sd-1. - אופציונלי: הגדרת ההגדרות של Certificate Authority Service.
עכשיו אפשר להפעיל את בקשת ה-HTTP באמצעות sd-1. Google Cloud
קריאה לנקודת קצה (endpoint) של HTTP כשברשת VPC משותפת, במכונה וירטואלית וב-Service Directory יש פרויקטים שונים
בתרחיש השימוש הזה, אתם מגדירים את Dialogflow CX, שירות לעיבוד שפה טבעית, כדי להתקשר לנקודת קצה של HTTP במכונת ה-VM. Google Cloud במהלך השיחה עם נקודת הקצה, מוודאים שהתנועה לא עוברת דרך האינטרנט הציבורי.
בתרחיש השימוש הזה, יוצרים את הארטיפקטים הבאים בפרויקטים שונים:
- רשת VPC משותפת
- מכונה וירטואלית
- שירות Service Directory
- Dialogflow CX
לפני שיוצרים את הפרויקטים, חשוב לשים לב לנקודות הבאות:
- מוודאים שהפעלת ה-API מתבצעת בהתאם לגבולות הגזרה של VPC Service Controls.
- מוודאים שההגדרה של Google Cloud פרויקט השירות מאפשרת תעבורת נתונים יוצאת (egress) למכונה וירטואלית שנמצאת בפרויקט של רשת VPC.
- יכול להיות שהפרויקט של הספק לא יהיה זהה לפרויקט השירות. Google Cloud
- מוודאים שנעשה שימוש בגבולות הגזרה של VPC Service Controls בשני הפרויקטים.
- הפרויקט של Service Directory והפרויקט של הרשת לא צריכים להיות מחוברים, אבל שניהם צריכים להיות חלק מאותם אמצעי בקרה של VPC.
- ברשת ובשירות, חומת האש ו-IAM מושבתים כברירת מחדל.
בתרשים 2 מוצג איך אפשר לשלוח תנועה באמצעות גישה לרשת פרטית עם אכיפה של גבולות VPC Service Controls.
הגדרת פרויקט הרשת
- יוצרים פרויקט, כמו
my-vpc-project. יוצרים רשת VPC, למשל
vpc-1.במהלך יצירת רשת ה-VPC, בוחרים באפשרות אוטומטי במצב יצירת תת-רשת.
יוצרים כלל לחומת האש, כמו
firewall-1.במהלך יצירת הכלל, מזינים או בוחרים את הערכים הבאים:
- בשדה רשת, בוחרים באפשרות
vpc-1. - בשדה Source IPv4 ranges (טווחים של כתובות IPv4 של המקור), מזינים
35.199.192.0/19. - בקטע פרוטוקולים ויציאות, בוחרים באפשרות TCP ומזינים
443או80.
- בשדה רשת, בוחרים באפשרות
באזור
us-central1, יוצרים מכונה וירטואלית, כמוvm-1.במהלך יצירת המכונה הווירטואלית, מזינים או בוחרים את הערכים הבאים:
- בקטע Networking > Network Interfaces (רשת > ממשקי רשת), בוחרים באפשרות
vpc-1. - בקטע Firewall, בוחרים באפשרות Allow HTTP traffic.
אם רוצים להשתמש ב-HTTPS, בוחרים באפשרות Allow HTTPS traffic. חשוב גם לוודא שמתקינים אישור של תשתית מפתח ציבורי (PKI) Transport Layer Security (TLS).
- בקטע Networking > Network Interfaces (רשת > ממשקי רשת), בוחרים באפשרות
אם אתם משתמשים ב-VPC Service Controls, גבולות הגזרה של VPC Service Controls מאפשרים ל-Service Directory להתחבר גם לפרויקט השירות וגם לפרויקט Service Directory. Google Cloud
הגדרת הפרויקט של Service Directory
יוצרים פרויקט, כמו
my-sd-project.נדרשת הרשאת IAM נוספת כי פרויקט רשת ה-VPC ופרויקט Service Directory הם פרויקטים שונים.
בפרויקט הרשת, מקצים את התפקיד Service Directory Network Attacher (
roles/servicedirectory.networkAttacher) למנהל ה-IAM שיוצר את נקודת הקצה של Service Directory.יוצרים נקודת קצה של Service Directory שמצביעה על המכונה הווירטואלית ברשת ה-VPC:
- באזור
us-central1, יוצרים מרחב שמות, למשלnamespace-1. - במרחב השמות, רושמים שירות של Service Directory, כמו
sd-1. - יוצרים נקודת קצה ב-
sd-1. בכתובת נקודת הקצה, משתמשים בכתובת ה-IP הפנימית שלvm-1ביציאה443. מידע נוסף זמין במאמר בנושא יצירת נקודת קצה עם גישה לרשת פרטית.
- באזור
מקצים לסוכן השירות של המוצרGoogle Cloud שיקרא לנקודת הקצה את תפקידי ה-IAM הבאים:
- התפקיד 'צפייה ב-Service Directory' (
roles/servicedirectory.viewer) בפרויקט Service Directory - תפקיד של שירות מורשה ב-Private Service Connect (
roles/servicedirectory.pscAuthorizedService) בפרויקט הרשת
- התפקיד 'צפייה ב-Service Directory' (
אם אתם משתמשים ב-VPC Service Controls, גבולות הגזרה של VPC Service Controls מאפשרים ל-Service Directory להתחבר גם לפרויקט השירות וגם לפרויקט Service Directory. Google Cloud
הגדרת פרויקט השירות Google Cloud
- מפעילים את ה-API של השירות שבו אתם משתמשים Google Cloud .
- כדי להגדיר את Google Cloud השירות
PUSH, משתמשים בשירות Service Directory מהפרויקט Service Directory.
אם אתם משתמשים ב-VPC Service Controls, גבולות הגזרה של VPC Service Controls מאפשרים ל-Service Directory להתחבר גם לפרויקט הרשת וגם לפרויקט Service Directory.
שימוש בגישה לרשת פרטית של Service Directory עם Dialogflow
הוראות לשימוש בגישה לרשת פרטית של Service Directory עם Dialogflow זמינות במאמר שימוש ב-Service Directory לגישה לרשת פרטית.
המאמרים הבאים
- סקירה כללית של Service Directory זמינה במאמר סקירה כללית של Service Directory.
- מידע נוסף על Private Service Connect זמין במאמר Private Service Connect.
- כדי למצוא פתרונות לבעיות נפוצות שאתם עשויים להיתקל בהן כשאתם משתמשים ב-Service Directory, אפשר לעיין במאמר בנושא פתרון בעיות.