פרסום שירותים באמצעות Private Service Connect
בתור בעלים של שירות מנוהל, אתם יכולים להשתמש ב-Private Service Connect כדי לפרסם שירותים באמצעות כתובות IP פנימיות ברשת ה-VPC שלכם. צרכני השירותים יכולים לגשת לשירותים שפרסמתם באמצעות כתובות IP פנימיות ברשתות ה-VPC של הצרכנים.
במדריך הזה מוסבר איך להשתמש ב-Private Service Connect כדי לפרסם שירות. כדי לפרסם שירות:
- יוצרים שירות יעד, שיכול להיות אחד מהשירותים הבאים:
- כלל ההעברה של מאזן עומסים נתמך עם הגדרה נתמכת
- מופע של Secure Web Proxy
- יוצרים קובץ מצורף לשירות שמצביע על שירות היעד.
Private Service Connect מספק שתי שיטות להתחברות לשירותים שפורסמו:
סוגי נקודות הקצה האלה דורשים הגדרות שונות מעט של היצרן. מידע נוסף זמין במאמר תכונות ותאימות.
תפקידים
תפקיד ה-IAM הבא מספק את ההרשאות שנדרשות לביצוע המשימות במדריך הזה.
- אדמין ברשת Compute
(
roles/compute.networkAdmin)
לפני שמתחילים
מידע על פרסום שירותים, כולל הגבלות, אפשר לקרוא במאמר מידע על שירותים שפורסמו.
מחליטים אם השירות צריך להיות נגיש מכל הפרויקטים, או אם רוצים לקבוע לאילו פרויקטים תהיה גישה לשירות.
מחליטים אם רוצים שהשירות הזה יתמוך בנקודות קצה, בשרתי קצה עורפיים או בשניהם. מידע נוסף על נקודות קצה ושרתי קצה עורפיים זמין במאמר סוגים של Private Service Connect.
מידע נוסף על דרישות הגדרת השירות זמין במאמר תכונות ותאימות.
מחליטים אם רוצים להגדיר שם דומיין לשירות, שמבצע אוטומטית את הגדרת ה-DNS לנקודות קצה של צרכני השירות. אם מגדירים שם דומיין, אותו גורם IAM שמפרסם את השירות צריך לאמת שיש לו הרשאות בעלים בדומיין ב-Google Search Console. אם מגדירים שם דומיין אבל לא בבעלותכם הדומיין, פרסום השירות ייכשל. כדי לאמת את הבעלות, עוברים אל Google Search Console.
שם הדומיין שמציינים בקובץ המצורף של השירות יכול להיות תת-דומיין של הדומיין שמאמתים. לדוגמה, אפשר לאמת את
example.comואז ליצור קובץ מצורף לשירות עם שם דומיין שלus-west1.p.example.com.מחליטים אם השירות ישתמש בפרוטוקול PROXY כדי לספק פרטים על החיבורים של הצרכנים. אם אתם מתכננים להשתמש בפרוטוקול PROXY, ודאו שהוא נתמך גם בסוג שירות היעד וגם בתוכנת שרת האינטרנט של העורף של השירות. מידע על סוגי שירותי היעד שתומכים בפרוטוקול PROXY מופיע במאמר תכונות ותאימות.
יצירת שירות יעד
כדי לארח את השירות, צריך ליצור אחד משירותי היעד הבאים ברשת VPC של ספק השירות:
מידע על ההגדרות הנתמכות לכל שירות יעד זמין במאמר תכונות ותאימות.
לחיבור שירות יכול להיות רק שירות יעד אחד. עם זאת, כמה קבצים מצורפים של שירות יכולים לשתף את אותו שירות יעד.
גרסת ה-IP של שירות היעד (IPv4 או IPv6) משפיעה על הצרכנים שיכולים להתחבר לשירות שפרסמתם. מידע נוסף זמין במאמר בנושא תרגום גרסת IP.
במאזני עומסי רשת אזוריים פנימיים לשרת proxy, השרתים העורפיים יכולים להיות ממוקמים ב-Google Cloud, בעננים אחרים, בסביבה מקומית או בכל שילוב של המיקומים האלה.
אפשר גם לפרסם שירות שמארח מאזן עומסי רשת פנימי מסוג passthrough ב-Google Kubernetes Engine. ההגדרה הזו, כולל הגדרת מאזן העומסים והגדרת צירוף השירות, מתוארת במאמר יצירת מאזן עומסים פנימי של רשת להעברת סיגנל ללא שינוי באמצעות Private Service Connect במסמכי GKE.
יצירת תת-רשת ל-Private Service Connect
יוצרים רשתות משנה ייעודיות אחת או יותר לשימוש עם Private Service Connect. צריך ליצור את רשת המשנה באותו אזור שבו נמצא מאזן העומסים של השירות.
אם אתם משתמשים במסוף Google Cloud כדי לפרסם שירות, אתם יכולים ליצור את רשתות המשנה במהלך התהליך הזה.
אפשר ליצור רשת משנה של Private Service Connect בפרויקט מארח של VPC משותף.
אי אפשר להמיר רשת משנה רגילה לרשת משנה של Private Service Connect.
סוג מחסנית ה-IP של רשת המשנה שיוצרים צריך להיות תואם לגרסת ה-IP של כלל ההעברה של מאזן העומסים:
- לכללי העברה של IPv4, יוצרים תת-רשת של IPv4 בלבד או תת-רשת עם תמיכה כפולה.
- לכללי העברה של IPv6, יוצרים רשת משנה עם IPv6 בלבד או עם מחסנית כפולה, שיש לה טווח כתובות IPv6 פנימיות.
- אם משתמשים ברשת משנה עם תמיכה כפולה, נעשה שימוש בטווח כתובות IPv4 או IPv6, אבל לא בשניהם.
אם אתם צריכים להקצות עוד כתובות IP לשירות קיים, תוכלו לקרוא את המאמר בנושא הוספה או הסרה של רשתות משנה משירות שפורסם.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על השם של רשת VPC כדי להציג את הדף פרטי רשת ה-VPC.
לוחצים על Subnets (רשתות משנה).
לוחצים על הוספת רשת משנה. בחלונית שמופיעה, מבצעים את הפעולות הבאות:
- מזינים שם.
- בחירת אזור.
- בקטע מטרה, בוחרים באפשרות Private Service Connect.
- בקטע IP stack type, בוחרים סוג של ערימת IP.
- אם אתם יוצרים רשת משנה עם IPv4 בלבד או עם מחסנית כפולה, מזינים טווח כתובות IPv4 – לדוגמה,
10.10.10.0/24. - אם אתם יוצרים רשת משנה עם IPv6 בלבד או עם מחסנית כפולה, לוחצים על סוג הגישה ל-IPv6 ובוחרים באפשרות פנימי.
- לוחצים על הוספה.
gcloud
משתמשים בפקודה gcloud compute networks subnets create.
כדי ליצור תת-רשת של Private Service Connect עם IPv4 בלבד, מבצעים את הפעולות הבאות:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECTכדי ליצור תת-רשת של Private Service Connect עם תמיכה ב-IPv4 ו-IPv6, מבצעים את הפעולות הבאות:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=INTERNAL \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECTכדי ליצור תת-רשת של Private Service Connect עם IPv6 בלבד, מבצעים את הפעולות הבאות:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --stack-type=IPV6_ONLY \ --ipv6-access-type=INTERNAL \ --purpose=PRIVATE_SERVICE_CONNECT
מחליפים את מה שכתוב בשדות הבאים:
SUBNET_NAME: השם שרוצים להקצות לרשת המשנה.
NETWORK_NAME: השם של ה-VPC לתת-הרשת החדשה.
REGION: האזור של רשת המשנה החדשה. האזור הזה צריך להיות זהה לאזור של השירות שאתם מפרסמים.
SUBNET_RANGE: טווח כתובות IPv4 לשימוש ברשת המשנה – לדוגמה,10.10.10.0/24.
API
שולחים בקשת POST ל-method subnetworks.insert.
כדי ליצור תת-רשת של Private Service Connect עם IPv4 בלבד, מבצעים את הפעולות הבאות:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "SUBNET_RANGE", "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT" }כדי ליצור תת-רשת של Private Service Connect עם תמיכה ב-IPv4 ו-IPv6, מבצעים את הפעולות הבאות:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "SUBNET_RANGE", "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT", "stackType": "IPV4_IPV6", "ipv6AccessType": "INTERNAL" }כדי ליצור תת-רשת של Private Service Connect עם IPv6 בלבד, מבצעים את הפעולות הבאות:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT", "stackType": "IPV6_ONLY", "ipv6AccessType": "INTERNAL" }
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של רשת המשנה.
REGION: האזור של רשת המשנה החדשה. האזור הזה צריך להיות זהה לאזור של השירות שאתם מפרסמים.
SUBNET_RANGE: טווח כתובות IPv4 לשימוש ברשת המשנה. לדוגמה,10.10.10.0/24.
SUBNET_NAME: השם שרוצים להקצות לרשת המשנה.
NETWORK_NAME: השם של רשת ה-VPC של תת-הרשת החדשה.
הגדרת כללים לחומת אש
הגדרת הרשת שלכם צריכה לאפשר תעבורה מטווחים מתאימים של כתובות IP של מקור למופעים או לנקודות קצה ברשת שהוגדרו כשרתי קצה עורפיים לשירותי הקצה העורפיים שלכם. אם השירות שלכם משתמש בבדיקות תקינות, אתם צריכים גם לאפשר תנועה מהבדיקות אל ה-backend.
אין צורך לבצע פעולות כדי לאפשר תעבורה בין נקודת קצה של Private Service Connect או קצה עורפי של Private Service Connect לבין קובץ מצורף של שירות שמשויך אליהם, או בין קובץ מצורף של שירות לבין מאזן העומסים שמשויך אליו. נקודות קצה, שרתים עורפיים וקבצים מצורפים לשירות הם רכיבים לוגיים שלא משתתפים בזרימת התנועה.
אם השרתים העורפיים שלכם נמצאים ברשת VPC, אתם יכולים להשתמש בכללי חומת אש לתעבורת נתונים נכנסת ב-VPC או במדיניות חומת אש כדי לאפשר את התעבורה הזו. לשרתי בק-אנד מקומיים או לשרתי בק-אנד בענן אחר, צריך להגדיר את הסביבה כך שתאפשר תנועה לשרתי הבק-אנד.
כשמגדירים כללי חומת אש לכניסה לשירותי קצה עורפי, מקור התנועה תלוי בסוג מאזן העומסים שבו השירות משתמש:
| קטגוריה | מקור התנועה לשרתי קצה עורפי |
|---|---|
מאזני עומסים מסוג Passthrough:
|
טווח כתובות ה-IP של רשתות המשנה (NAT) של Private Service Connect שמשויכות לשירות |
מאזני עומסים של שרת proxy:
|
טווחי כתובות ה-IP של תתי-הרשתות המשויכות שמוגדרות רק לשימוש בשרת proxy |
| שירותים עם בדיקות תקינות | טווח כתובות ה-IP של בקשת בדיקת התקינות של סוג מאזן העומסים |
פרסום שירות
כדי לפרסם שירות, יוצרים קובץ מצורף לשירות. יש שתי דרכים להפעיל את השירות:
- אפשר לפרסם שירות עם אישור אוטומטי.
- אפשר לפרסם שירות באישור מפורש.
יוצרים את קובץ השירות באותו אזור שבו נמצא איזון העומסים של השירות.
כל קובץ מצורף עם השירות יכול להצביע על תת-רשת אחת או יותר של Private Service Connect, אבל אי אפשר להשתמש בתת-רשת של Private Service Connect ביותר מקובץ מצורף אחד עם השירות.
כדי לראות את פרטי החיבור של הצרכנים, אפשר להפעיל את פרוטוקול ה-PROXY בשירותים נתמכים. מפעילים את פרוטוקול PROXY רק אם הוא נתמך גם על ידי סוג שירות היעד (בעיה ידועה) וגם על ידי תוכנת שרת האינטרנט של העורף של השירות. מידע על סוגי שירותי היעד שתומכים בפרוטוקול PROXY מופיע במאמר תכונות ותאימות. מידע נוסף על פרוטוקול PROXY זמין במאמר פרטי החיבור של הצרכן.
בקטעים הבאים מוסבר איך לפרסם שירות שמבוסס על מאזן עומסים. מידע על יצירת קובץ מצורף של שירות שמפנה למופע של Secure Web Proxy זמין במאמר פריסת Secure Web Proxy כקובץ מצורף של שירות Private Service Connect.
פרסום שירות עם אישור אוטומטי
ההוראות האלה מתייחסות לפרסום שירות ולאפשרות לחבר אליו באופן אוטומטי כל צרכן. אם רוצים לאשר באופן מפורש חיבורים של צרכנים, אפשר לעיין במאמר בנושא פרסום שירות עם אישור מפורש.
כשמפרסמים שירות, נוצרת הצמדת שירות. צרכני השירותים משתמשים בפרטים של קובץ השירות כדי להתחבר לשירות שלכם.
כשמפרסמים שירות עם אישור אוטומטי, מגבלת החיבורים שמופצת חלה על כל פרויקט של צרכן שמתחבר לנקודת החיבור לשירות.
המסוף
הגדרת השירות
נכנסים לדף Private Service Connect במסוף Google Cloud .
לוחצים על הכרטיסייה שירותים שפורסמו.
לוחצים על פרסום השירות.
בקטע פרטי יעד, בוחרים באפשרות מאזן עומסים.
בוחרים סוג של מאזן עומסים.
בוחרים את מאזן העומסים הפנימי שמארח את השירות שרוצים לפרסם. השדות 'רשת' ו'אזור' מאוכלסים בפרטים של מאזן העומסים הפנימי שנבחר.
אדמינים של פרויקט שירות יכולים לבחור מאזן עומסים פנימי עם כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
אם מוצגת בקשה, בוחרים את כלל ההעברה שמשויך לשירות שרוצים לפרסם.
בשדה Service name, מזינים שם לחיבור השירות.
בחירת רשת משנה של Private Service Connect
בוחרים רשת משנה אחת או יותר מסוג Private Service Connect לשירות. הרשימה מאוכלסת בתת-רשתות מרשת ה-VPC של מאזן העומסים הפנימי שנבחר, כולל תת-רשתות שמשותפות עם פרויקט שירות באמצעות VPC משותף.
אם לחיבור השירות שלכם יש איזון עומסים פנימי עם כתובת IP מרשת VPC משותפת, אתם צריכים לבחור תת-רשת משותפת מאותה רשת VPC משותפת.
אם רוצים להוסיף רשת משנה חדשה, אפשר ליצור אחת:
- לוחצים על Subnets (רשתות משנה) ואז על Reserve new subnet (שמירת רשת משנה חדשה).
- מזינים שם ותיאור אופציונלי לרשת המשנה.
- בוחרים אזור לרשת המשנה.
- בוחרים סוג של ערימת פרוטוקולים.
- אם אתם יוצרים רשת משנה עם IPv4 בלבד או עם מחסנית כפולה, מזינים טווח כתובות IPv4 לשימוש ברשת המשנה.
- לוחצים על הוספה.
השלמת ההגדרה
- כדי להציג את פרטי החיבור של הצרכן, בוחרים באפשרות Use Proxy Protocol (שימוש בפרוטוקול Proxy).
- בוחרים באפשרות אישור אוטומטי של כל החיבורים.
- כדי להשבית את התאמת החיבורים, מבטלים את הסימון בתיבה הפעלת התאמת החיבורים.
אופציונלי: לוחצים על הגדרות מתקדמות ומבצעים את הפעולות הבאות:
אם רוצים להגדיר שם דומיין, מזינים שם דומיין, כולל נקודה בסוף.
הפורמט המומלץ לשם הדומיין הוא
REGION.p.DOMAIN.אתם חייבים להיות הבעלים של שם הדומיין. מידע נוסף זמין במאמר בנושא הגדרת DNS.
מזינים מגבלה על חיבורים שהועברו. אם לא מציינים ערך, ערך ברירת המחדל הוא
250.
לוחצים על הוספת שירות.
gcloud
משתמשים בפקודה gcloud compute service-attachments create.
gcloud compute service-attachments create ATTACHMENT_NAME \
--region=ATTACHMENT_REGION \
--target-service=TARGET_SERVICE \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=PSC_SUBNET_LIST \
[ --propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT ] \
[ --enable-proxy-protocol ] \
[ --domain-names=DOMAIN_NAME ]
מחליפים את מה שכתוב בשדות הבאים:
ATTACHMENT_NAME: השם שרוצים להקצות לחיבור השירות.
ATTACHMENT_REGION: האזור של קובץ השירות החדש. האזור הזה צריך להיות זהה לאזור של כתובת ה-IP של כלל ההעברה של היעד.
TARGET_SERVICE: ה-URI של כלל ההעברה שמשויך לשירות שאתם מפרסמים.- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - לכל שאר כללי ההעברה של היוצרים, משתמשים בפורמט הבא:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
אדמינים של פרויקט שירות יכולים לציין את כלל ההעברה של מאזן עומסים פנימי שיש לו כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
PSC_SUBNET_LIST: רשימה מופרדת בפסיקים של שמות של רשתות משנה (לפחות אחת) לשימוש עם שירות ה-Service Attachment הזה.אם אתם יוצרים קובץ מצורף לשירות עם כלל העברה שכולל כתובת IP מרשת VPC משותפת, אתם צריכים להשתמש ברשתות משנה משותפות מאותה רשת VPC משותפת. לכל תת-רשת משותפת, מציינים את ה-URI המלא של המשאב – לדוגמה,
--nat-subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET.
PROPAGATED_CONNECTION_LIMIT: מכסת החיבורים שהועברה לכל פרויקט. ערך ברירת המחדל הוא250.
DOMAIN_NAME: שם דומיין DNS של השירות, כולל נקודה בסוף. פורמט מומלץ:REGION.p.DOMAIN.מידע נוסף זמין במאמר בנושא הגדרת DNS.
API
שולחים בקשת POST ל-method serviceAttachments.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments
{
"name": "ATTACHMENT_NAME",
"connectionPreference": "ACCEPT_AUTOMATIC",
"targetService": "TARGET_SERVICE",
"enableProxyProtocol": false,
"natSubnets": [
"PSC_SUBNET_1_URI",
"PSC_SUBNET_2_URI"
],
"propagatedConnectionLimit": "PROPAGATED_CONNECTION_LIMIT",
"domainNames": [
"DOMAIN_NAME"
]
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של קובץ השירות המצורף.
ATTACHMENT_REGION: האזור של קובץ השירות החדש. האזור הזה צריך להיות זהה לאזור של כתובת ה-IP של כלל ההעברה של היעד.
ATTACHMENT_NAME: השם שרוצים להקצות לחיבור השירות.
TARGET_SERVICE: ה-URI של כלל ההעברה המשויך לשירות שאתם מפרסמים.- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - לכל שאר כללי ההעברה של היוצרים, משתמשים בפורמט הבא:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
אדמינים של פרויקט שירות יכולים לציין את כלל ההעברה של מאזן עומסים פנימי שיש לו כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
PSC_SUBNET_1_URIו-PSC_SUBNET_2_URI: כתובות ה-URI של רשתות המשנה שבהן יש להשתמש לחיבור השירות הזה. אפשר לציין רשת משנה אחת או יותר באמצעות URI.אם אתם יוצרים קובץ מצורף לשירות עם כלל העברה שכולל כתובת IP מרשת VPC משותפת, אתם צריכים להשתמש ברשתות משנה משותפות מאותה רשת VPC משותפת.
DOMAIN_NAME: שם דומיין DNS של השירות, כולל נקודה בסוף. פורמט מומלץ:REGION.p.DOMAIN.מידע נוסף זמין במאמר בנושא הגדרת DNS.
PROPAGATED_CONNECTION_LIMIT: מכסת החיבורים שהועברה לכל פרויקט. ערך ברירת המחדל הוא250.
פרסום שירות עם אישור מפורש
אם רוצים לאשר באופן מפורש את הצרכנים לפני שהם יכולים להתחבר לשירות, צריך לפעול לפי ההוראות האלה כדי לפרסם את השירות. אם רוצים לאשר באופן אוטומטי חיבורים של צרכנים, אפשר לעיין במאמר בנושא פרסום שירות עם אישור אוטומטי.
כשמפרסמים שירות, נוצרת הצמדת שירות. צרכני השירותים משתמשים בפרטים של קובץ השירות כדי להתחבר לשירות שלכם.
לכל קובץ מצורף של שירות יש רשימת צרכנים שאושרו ורשימת צרכנים שנדחו. רשימות הצרכנים קובעות אילו נקודות קצה יכולות להתחבר לשירות. קבצים מצורפים של שירותים יכולים לאשר או לדחות צרכנים על סמך אחד מהסוגים הבאים:
- פרויקט
- רשת VPC
- נקודת קצה מסוג Private Service Connect (Preview)
כל רשומה ברשימות הצרכנים חייבת להיות מאותו סוג. לדוגמה, קובץ מצורף של שירות לא יכול לקבל צרכנים מסוימים על סמך פרויקט וצרכנים אחרים על סמך רשת VPC. בנוסף, ציון צרכנים לפי תיקייה אינו נתמך.
אם מוסיפים ערך גם לרשימת ההסכמה וגם לרשימת הדחייה, בקשות לחיבורים מהצרכן הזה נדחות.
כדי לאשר משתמשים על סמך נקודות קצה ספציפיות ב-Private Service Connect, צריך לפרסם שירות עם אישור מפורש, אבל לא להוסיף ערכים לרשימות הצרכנים. אחרי שצרכן מתחבר ל-Service Attachment, אפשר לתאר את ה-Service Attachment או לבקש מהצרכן לתאר את נקודת הקצה כדי למצוא את ה-URI שמבוסס על מזהה נקודת הקצה. כדי לאשר את החיבור, מוסיפים את מזהה ה-URI שמבוסס על מזהה של נקודת הקצה של Private Service Connect לרשימת האישורים של צרכני השירות.
אם רשימות ההסכמה והדחייה של הלקוח מתייחסות לפרויקטים או לנקודות קצה ספציפיות, מגבלת החיבור שמועברת חלה על פרויקטים של לקוחות. אם רשימות ההסכמה והדחייה של הצרכן מתייחסות לרשתות VPC, מגבלת החיבור שהועברה חלה על רשתות VPC של הצרכן.
המסוף
הגדרת השירות
נכנסים לדף Private Service Connect במסוף Google Cloud .
לוחצים על הכרטיסייה שירותים שפורסמו.
לוחצים על פרסום השירות.
בקטע פרטי יעד, בוחרים באפשרות מאזן עומסים.
בוחרים סוג של מאזן עומסים.
בוחרים את מאזן העומסים הפנימי שמארח את השירות שרוצים לפרסם. השדות 'רשת' ו'אזור' מאוכלסים בפרטים של מאזן העומסים הפנימי שנבחר.
אדמינים של פרויקט שירות יכולים לבחור מאזן עומסים פנימי עם כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
אם מוצגת בקשה, בוחרים את כלל ההעברה שמשויך לשירות שרוצים לפרסם.
בשדה Service name, מזינים שם לחיבור השירות.
בחירת רשת משנה של Private Service Connect
בוחרים רשת משנה אחת או יותר מסוג Private Service Connect לשירות. הרשימה מאוכלסת בתת-רשתות מרשת ה-VPC של מאזן העומסים הפנימי שנבחר, כולל תת-רשתות שמשותפות עם פרויקט שירות באמצעות VPC משותף.
אם לחיבור השירות שלכם יש איזון עומסים פנימי עם כתובת IP מרשת VPC משותפת, אתם צריכים לבחור תת-רשת משותפת מאותה רשת VPC משותפת.
אם רוצים להוסיף רשת משנה חדשה, אפשר ליצור אחת:
- לוחצים על Subnets (רשתות משנה) ואז על Reserve new subnet (שמירת רשת משנה חדשה).
- מזינים שם ותיאור אופציונלי לרשת המשנה.
- בוחרים אזור לרשת המשנה.
- בוחרים סוג של ערימת פרוטוקולים.
- אם אתם יוצרים רשת משנה עם IPv4 בלבד או עם מחסנית כפולה, מזינים טווח כתובות IPv4 לשימוש ברשת המשנה.
- לוחצים על הוספה.
הגדרת גישה לצרכנים
- כדי לראות את פרטי החיבור של הלקוח, בוחרים באפשרות Use Proxy Protocol (שימוש בפרוטוקול Proxy).
כדי להגדיר את רשימות הצרכנים שאושרו ונדחו, מבצעים אחת מהפעולות הבאות.
כדי לאשר חיבורים לפרויקטים נבחרים, בוחרים באפשרות אישור חיבורים לפרויקטים נבחרים, ואז:
לכל פרויקט שרוצים לאשר ממנו חיבורים, לוחצים על Add accepted project ומזינים את הפרטים הבאים:
- מזהה הפרויקט או מספר הפרויקט שמהם רוצים לאשר חיבורים.
- מגבלת חיבורים שבה מציינים את המספר המקסימלי של נקודות קצה מהפרויקט שצוין שיכולות להתחבר.
אופציונלי: לכל פרויקט שרוצים לדחות ממנו באופן מפורש בקשות לחיבור, לוחצים על Add rejected project ומזינים את מזהה הפרויקט או את מספר הפרויקט.
כדי לאשר חיבורים לרשתות שנבחרו, בוחרים באפשרות Accept connections for selected networks (אישור חיבורים לרשתות שנבחרו), ואז:
לכל רשת VPC שרוצים לאשר ממנה חיבורים, לוחצים על הוספת רשת שאושרה ומזינים את הפרטים הבאים:
- מזהה הפרויקט או מספר הפרויקט של פרויקט האב של הרשת שרוצים לאשר חיבורים ממנה.
- השם של הרשת שרוצים לאשר ממנה חיבורים.
- מגבלת חיבורים שמציינת את המספר המקסימלי של נקודות קצה מהרשת שצוינה שיכולות להתחבר.
אופציונלי: לכל רשת שרוצים לדחות במפורש את החיבורים ממנה, לוחצים על Add rejected network, ואז מזינים את המזהה או את מספר הפרויקט של פרויקט האב של הרשת ואת שם הרשת.
כדי לאשר חיבורים לנקודות קצה ספציפיות של Private Service Connect, בוחרים באפשרות Accept connections for selected projects. בשלב הזה, אל תוסיפו ערכים לרשימת ההיתרים של הצרכנים. אחרי שצרכן מבקש להתחבר לשירות שלכם, אתם יכולים להוסיף את נקודת הקצה לרשימת הצרכנים המורשים.
השלמת ההגדרה
- אופציונלי: אם רוצים להשבית את התאמת החיבור, מבטלים את הסימון בתיבה הפעלת התאמת החיבור.
אופציונלי: לוחצים על הגדרות מתקדמות ומבצעים את הפעולות הבאות:
אם רוצים להגדיר שם דומיין, מזינים שם דומיין, כולל נקודה בסוף.
הפורמט המומלץ לשם הדומיין הוא
REGION.p.DOMAIN.אתם חייבים להיות הבעלים של שם הדומיין. מידע נוסף זמין במאמר בנושא הגדרת DNS.
מזינים מגבלה על חיבורים שהועברו. אם לא מציינים ערך, ערך ברירת המחדל הוא
250.
לוחצים על הוספת שירות.
gcloud
משתמשים בפקודה gcloud compute service-attachments create.
gcloud compute service-attachments create ATTACHMENT_NAME \
--region=ATTACHMENT_REGION \
--target-service=TARGET_SERVICE \
--connection-preference=ACCEPT_MANUAL \
--consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2 \
--consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2 \
--nat-subnets=PSC_SUBNET_LIST \
[ --propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT ] \
[ --enable-proxy-protocol ] \
[ --domain-names=DOMAIN_NAME ] \
[ --reconcile-connections ]
מחליפים את מה שכתוב בשדות הבאים:
ATTACHMENT_NAME: השם שרוצים להקצות לחיבור השירות.
ATTACHMENT_REGION: האזור של קובץ השירות החדש. האזור הזה צריך להיות זהה לאזור של כתובת ה-IP של כלל ההעברה של היעד.
TARGET_SERVICE: ה-URI של כלל ההעברה שמשויך לשירות שאתם מפרסמים.- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - לכל שאר כללי ההעברה של היוצרים, משתמשים בפורמט הבא:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
אדמינים של פרויקט שירות יכולים לציין את כלל ההעברה של מאזן עומסים פנימי שיש לו כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
ACCEPTED_PROJECT_OR_NETWORK_1ו-ACCEPTED_PROJECT_OR_NETWORK_2: מזהי הפרויקטים, שמות הפרויקטים או כתובות ה-URI של הרשתות שרוצים לאשר. --consumer-accept-listהוא אופציונלי ויכול להכיל פרויקט אחד או יותר או רשתות, אבל לא שילוב של שני הסוגים.
LIMIT_1ו-LIMIT_2: מגבלות החיבור לפרויקטים או לרשתות. מגבלת החיבור היא מספר נקודות הקצה או השרתים העורפיים של הצרכנים שיכולים להתחבר לשירות הזה. לכל פרויקט או רשת שאושרו צריכה להיות מוגדרת מגבלת חיבור.
REJECTED_PROJECT_OR_NETWORK_1ו-REJECTED_PROJECT_OR_NETWORK_2: מזהי הפרויקטים, שמות הפרויקטים או כתובות ה-URI של הרשתות שרוצים לדחות. השדה--consumer-reject-listהוא אופציונלי ויכול להכיל פרויקט אחד או יותר או רשתות, אבל לא שילוב של שני הסוגים.
PSC_SUBNET_LIST: רשימה מופרדת בפסיקים של שמות של רשתות משנה (לפחות אחת) לשימוש עם שירות ה-Service Attachment הזה.אם אתם יוצרים קובץ מצורף לשירות עם כלל העברה שכולל כתובת IP מרשת VPC משותפת, אתם צריכים להשתמש ברשתות משנה משותפות מאותה רשת VPC משותפת. לכל תת-רשת משותפת, מציינים את ה-URI המלא של המשאב – לדוגמה,
--nat-subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET.
PROPAGATED_CONNECTION_LIMIT: מגבלת החיבורים שהועברה. ערך ברירת המחדל הוא250.
DOMAIN_NAME: שם דומיין DNS של השירות, כולל נקודה בסוף. פורמט מומלץ:REGION.p.DOMAIN.מידע נוסף זמין במאמר בנושא הגדרת DNS.
API
שולחים בקשת POST ל-method serviceAttachments.insert.
כדי לפרסם שירות ולאשר צרכנים באופן מפורש על סמך פרויקט, שולחים את הבקשה הבאה:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments { "name": "ATTACHMENT_NAME", "region": "ATTACHMENT_REGION", "connectionPreference": "ACCEPT_MANUAL", "targetService": "TARGET_SERVICE", "enableProxyProtocol": false, "natSubnets": [ "PSC_SUBNET_1_URI", "PSC_SUBNET_2_URI" ], "consumerRejectLists": [ "REJECTED_PROJECT_1", "REJECTED_PROJECT_2" ], "consumerAcceptLists": [ { "projectIdOrNum": "ACCEPTED_PROJECT_1", "connectionLimit": "LIMIT_1" }, { "projectIdOrNum": "ACCEPTED_PROJECT_2", "connectionLimit": "LIMIT_2" } ], "propagatedConnectionLimit": "PROPAGATED_CONNECTION_LIMIT", "domainNames": [ "DOMAIN_NAME" ] }מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של קובץ השירות המצורף.
ATTACHMENT_REGION: האזור של קובץ השירות החדש. האזור הזה צריך להיות זהה לאזור של כתובת ה-IP של כלל ההעברה של היעד.
ATTACHMENT_NAME: השם שרוצים להקצות לחיבור השירות.
TARGET_SERVICE: ה-URI של כלל ההעברה המשויך לשירות שאתם מפרסמים.- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - לכל שאר כללי ההעברה של היוצרים, משתמשים בפורמט הבא:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
אדמינים של פרויקט שירות יכולים לציין את כלל ההעברה של מאזן עומסים פנימי שיש לו כתובת IP מרשת VPC משותפת. מידע נוסף זמין במאמר בנושא VPC משותף.
- במאזני עומסים פנימיים של אפליקציות (ALB) חוצי-אזורים, משתמשים בפורמט הבא:
PSC_SUBNET_1_URIו-PSC_SUBNET_2_URI: כתובות ה-URI של רשתות המשנה שבהן יש להשתמש לחיבור השירות הזה. אפשר לציין רשת משנה אחת או יותר באמצעות URI.אם אתם יוצרים קובץ מצורף לשירות עם כלל העברה שכולל כתובת IP מרשת VPC משותפת, אתם צריכים להשתמש ברשתות משנה משותפות מאותה רשת VPC משותפת.
REJECTED_PROJECT_1ו-REJECTED_PROJECT_2: מזהי הפרויקטים או מספרי הפרויקטים שרוצים לדחות. consumerRejectListsהוא אופציונלי ויכול להכיל פרויקט אחד או יותר.
ACCEPTED_PROJECT_1ו-ACCEPTED_PROJECT_2: מזהי הפרויקטים או מספרי הפרויקטים שרוצים לאשר. consumerAcceptListsהוא אופציונלי ויכול להכיל פרויקט אחד או יותר.
LIMIT_1ו-LIMIT_2: מגבלות החיבור לפרויקטים. מגבלת החיבור היא מספר נקודות הקצה או ה-backend של הצרכנים שיכולים להתחבר לשירות הזה. לכל פרויקט שאושר צריך להיות מוגדר מגבלת חיבור.
-
PROPAGATED_CONNECTION_LIMIT: מגבלת החיבורים שהועברה. ערך ברירת המחדל הוא250.
-
DOMAIN_NAME: שם דומיין DNS של השירות, כולל נקודה בסוף. פורמט מומלץ:REGION.p.DOMAIN.מידע נוסף זמין במאמר בנושא הגדרת DNS.
כדי לפרסם שירות ולאשר באופן מפורש צרכנים על סמך רשת VPC, שולחים את הבקשה הבאה:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments { "name": "ATTACHMENT_NAME", "region": "ATTACHMENT_REGION", "connectionPreference": "ACCEPT_MANUAL", "targetService": "TARGET_SERVICE", "enableProxyProtocol": false, "natSubnets": [ "PSC_SUBNET_1_URI", "PSC_SUBNET_2_URI" ], "consumerRejectLists": [ "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1", "projects/REJECTED_PROJECT_ID_2/global/networks/REJECTED_NETWORK_2" ], "consumerAcceptLists": [ { "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/networks/ACCEPTED_NETWORK_1", "connectionLimit": "LIMIT_1" }, { "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/networks/ACCEPTED_NETWORK_2", "connectionLimit": "LIMIT_2" } ], "propagatedConnectionLimit": PROPAGATED_CONNECTION_LIMIT, "domainNames": [ "DOMAIN_NAME" ] }מחליפים את מה שכתוב בשדות הבאים:
-
REJECTED_PROJECT_ID_1ו-REJECTED_PROJECT_ID_2: המזהים של פרויקטי האב של הרשתות שרוצים לדחות. התגconsumerRejectListsהוא אופציונלי ויכול להכיל רשת אחת או יותר. -
REJECTED_NETWORK_1ו-REJECTED_NETWORK_2: שמות הרשתות שרוצים לדחות. -
ACCEPTED_PROJECT_ID_1ו-ACCEPTED_PROJECT_ID_2: המזהים של פרויקטי האב של הרשתות שרוצים לאשר. התגconsumerAcceptListsהוא אופציונלי ויכול להכיל רשת אחת או יותר. -
ACCEPTED_NETWORK_1ו-ACCEPTED_NETWORK_2: שמות הרשתות שרוצים לאשר. -
LIMIT_1ו-LIMIT_2: מגבלות החיבור לרשתות. מגבלת החיבור היא מספר נקודות הקצה או ה-backend של הצרכנים שיכולים להתחבר לשירות הזה. לכל פרויקט שאושר צריך להיות מוגדר מגבלת חיבור.
-
PROPAGATED_CONNECTION_LIMIT: מגבלת החיבורים שהועברה. ערך ברירת המחדל הוא250.
-
DOMAIN_NAME: שם דומיין DNS של השירות, כולל נקודה בסוף. פורמט מומלץ:REGION.p.DOMAIN.מידע נוסף זמין במאמר בנושא הגדרת DNS.
-
כדי לפרסם שירות עם הפעלת תהליך התאמה של חיבורים, שולחים בקשה שדומה לבקשות הקודמות, אבל כוללת את השדה הבא:
{ ... "reconcileConnections": true ... }
הצגת פרטי החיבור של הצרכן
מידע על הצגת פרטי החיבור של צרכנים באמצעות פרוטוקול PROXY זמין במאמר בנושא הצגת פרטי החיבור של צרכנים.
ניהול בקשות לגישה לשירות שפורסם
אם יש לכם שירות שפורסם עם אישור מפורש, אתם יכולים לאשר או לדחות בקשות לחיבור מפרויקטים או מרשתות של צרכנים. מידע נוסף זמין במאמר בנושא ניהול בקשות גישה לשירות שפורסם.
אפשר גם לעבור בין אישור אוטומטי של פרויקט לבין אישור מפורש של פרויקט בשירות שפורסם. מידע נוסף מופיע במאמר שינוי העדפת החיבור לשירות שפורסם
הוספה או הסרה של רשתות משנה משירות שפורסם
אפשר להוסיף או להסיר רשתות משנה משירות שפורסם. מידע נוסף זמין במאמר בנושא הוספה או הסרה של רשתות משנה משירות שפורסם.
הצגת רשימה של שירותים שפורסמו
אפשר לראות רשימה של כל השירותים.
המסוף
נכנסים לדף Private Service Connect במסוף Google Cloud .
לוחצים על הכרטיסייה שירותים שפורסמו.
יוצגו קבצים מצורפים עם השירות Private Service Connect.
gcloud
משתמשים בפקודה gcloud compute service-attachments list.
gcloud compute service-attachments list [--regions=REGION_LIST]
מחליפים את REGION_LIST ברשימה מופרדת בפסיקים של אזור אחד או יותר שרוצים לראות את קבצים מצורפים לשירותים שלהם. לדוגמה, us-central1 או us-west1,us-central1.
API
כדי לראות את כל קבצים מצורפים לשירות באזור מסוים או בכל האזורים, שולחים בקשת GET לשיטה serviceAttachments.list.
כדי לראות את כל קבצי השירות באזור מסוים:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments
הצגת כל קובצי השירות המצורפים בכל האזורים:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/serviceAttachments
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של קובץ השירות המצורף.
REGION: האזור של קובץ השירות המצורף.
ATTACHMENT_NAME: השם של קובץ השירות המצורף.
הצגת פרטים של שירות שפורסם
אפשר לראות את פרטי ההגדרה של שירות שפורסם.
אפשר לראות פרטים מסוימים של ההגדרות במסוף Google Cloud , למשל את ה-URI של קובץ השירות שצרכני השירות צריכים כדי להתחבר לשירות שלכם. כדי לראות את כל הפרטים, כולל הערכים של pscConnectionId ושל ה-URI של נקודת הקצה מבוססת-ה-ID (endpointWithId) עבור הצרכנים של קובץ השירות, משתמשים ב-Google Cloud CLI או שולחים בקשת API.
המסוף
אפשר לראות את הפרטים של שירות שפורסם. השדה Service attachment מכיל את מזהה המשאבים האחיד (URI) של קובץ השירות המצורף.
נכנסים לדף Private Service Connect במסוף Google Cloud .
לוחצים על הכרטיסייה שירותים שפורסמו.
לוחצים על השירות שרוצים לראות.
gcloud
כדי לראות את הפרטים של שירות שפורסם, משתמשים בפקודה
gcloud compute service-attachments describe. השדהselfLinkמכיל את מזהה המשאבים האחיד (URI) של שירות ה-Attachment.gcloud compute service-attachments describe \ ATTACHMENT_NAME --region=REGIONמחליפים את מה שכתוב בשדות הבאים:
ATTACHMENT_NAME: השם של קובץ השירות המצורף.
REGION: האזור של קובץ השירות המצורף.
כדי לראות את הפרטים של שירות שפורסם, כולל מזהי ה-URI של נקודות הקצה שמבוססים על מזהים שאפשר להשתמש בהם כדי לאשר נקודות קצה ספציפיות, משתמשים בפקודה
gcloud beta compute service-attachments describe. לכל נקודת קצה ברשימת נקודות הקצה המחוברות, השדהendpointWithIdמכיל את ה-URI של נקודת הקצה שמבוסס על מזהה.gcloud beta compute service-attachments describe \ ATTACHMENT_NAME --region=REGION
API
כדי לראות פרטים על שירות שפורסם, שולחים בקשת
GETאל השיטהserviceAttachments.get. השדהselfLinkמכיל את מזהה המשאבים האחיד (URI) של שירות ה-Attachment.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של קובץ השירות המצורף.
REGION: האזור של קובץ השירות המצורף.
ATTACHMENT_NAME: השם של קובץ השירות המצורף.
כדי לראות את הפרטים של שירות שפורסם, כולל מזהי ה-URI של נקודות הקצה שמבוססים על מזהים שאפשר להשתמש בהם כדי לאשר נקודות קצה ספציפיות, שולחים בקשת
GETלשיטהserviceAttachments.getבגרסת הבטא. לכל נקודת קצה ברשימת נקודות הקצה המחוברות, השדהendpointWithIdמכיל את ה-URI של נקודת הקצה שמבוסס על מזהה.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
מחיקה של שירות שפורסם
אפשר למחוק שירות שפורסם, גם אם יש חיבורים של צרכנים ל-Service Attachment. מחיקת השירות שפורסם מסירה רק את קובץ השירות. מאזן העומסים המשויך לא נמחק. כשמוחקים שירות שפורסם, מתרחשים הדברים הבאים:
תעבורת נתונים מנקודות קצה (על סמך כללי העברה) לא נשלחת יותר למאזן העומסים.
תעבורה מקצה עורפי (בהתבסס על מאזני עומסים חיצוניים גלובליים של אפליקציות) נשלחת למאזן העומסים עד למחיקת מאזן העומסים.
המסוף
נכנסים לדף Private Service Connect במסוף Google Cloud .
לוחצים על הכרטיסייה שירותים שפורסמו.
לוחצים על השירות שרוצים למחוק.
לוחצים על Delete.
gcloud
משתמשים בפקודה gcloud compute service-attachments delete.
gcloud compute service-attachments delete \
ATTACHMENT_NAME --region=REGION
API
שולחים בקשת DELETE ל-method serviceAttachments.delete.
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: הפרויקט של קובץ השירות המצורף.
REGION: האזור של קובץ השירות המצורף.
ATTACHMENT_NAME: השם של קובץ השירות המצורף.
בעיות מוכרות
כשלים בבדיקת התקינות בנקודות קצה של צרכנים עם גישה גלובלית
צרכנים יכולים לחבר נקודת קצה של גישה גלובלית לשירות שפורסם ולא הוגדרה לו גישה גלובלית. עם זאת, בדיקות תקינות לא פועלות בצורה תקינה בהגדרה הזו. כתוצאה מכך, יכול להיות שתנועה תישלח לעורפי קצה לא תקינים ותיפסל.
אם אתם מפרסמים שירות באמצעות מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי או העברת פרוטוקול פנימית (מופע יעד), והשירות שלכם מושפע מהבעיה הזו, אתם צריכים לבצע את הפעולות הבאות.
- כדי להשתמש בגישה גלובלית, צריך לבצע את הפעולות הבאות:
- הפעלת גישה גלובלית לכלל ההעברה של מאזן העומסים.
- אם מאזן העומסים מנוהל על ידי Google Kubernetes Engine, צריך גם לעדכן את מניפסט השירות המתאים ולהחיל אותו על האשכול. מידע נוסף על ההגדרה הספציפית הזו של GKE זמין במאמר בנושא גישה גלובלית.
- מעדכנים את האוטומציה כך שמאזני עומסים חדשים של בעלי תוכן דיגיטלי שתומכים בנקודות קצה של Private Service Connect עם גישה גלובלית יוגדרו לגישה גלובלית.
- אם לא רוצים להשתמש בגישה גלובלית, צריך לבקש מהצרכן להשבית את הגישה הגלובלית לנקודת הקצה.
הפעלת גישה גלובלית לשירות שפורסם לא משבשת את תעבורת הרשת.
כשלים בבדיקות תקינות עם קבוצות NEG גלובליות של Private Service Connect
יש בעיה מוכרת ב-NEGs של צרכנים ב-Private Service Connect שהוגדרו לגישה גלובלית. Private Service Connect NEG מוגדר לגישה גלובלית אם הוא משויך לשירות לקצה העורפי גלובלי.
אם צרכן מחבר NEG של Private Service Connect שהוגדר לגישה גלובלית למאזן עומסים של בעלים של שירות מנוהל, ובעלים של שירות מנוהל משבית את הגישה הגלובלית למאזן העומסים הזה, בדיקות תקינות לא פועלות בצורה תקינה. כתוצאה מכך, יכול להיות שתנועה תישלח לשרתי קצה עורפיים לא תקינים ותיפסל.
אם אתם מפרסמים שירות באמצעות מאזן עומסים פנימי שתומך בגישה גלובלית, והשירות שלכם מושפע מהבעיה הזו, אתם צריכים לבצע את הפעולות הבאות.
- כדי להשתמש בגישה גלובלית, צריך לבצע את הפעולות הבאות:
- הפעלת גישה גלובלית לכלל ההעברה של מאזן העומסים.
- אם מאזן העומסים מנוהל על ידי Google Kubernetes Engine, צריך גם לעדכן את מניפסט השירות המתאים ולהחיל אותו על האשכול. מידע נוסף על ההגדרה הזו שספציפית ל-GKE זמין במאמר בנושא גישה גלובלית.
- מעדכנים את האוטומציה כך שמאזני עומסים חדשים של בעלי שירותים שתומכים ב-NEGs של Private Service Connect עם גישה גלובלית יוגדרו לגישה גלובלית.
- אם אתם לא רוצים להשתמש בגישה גלובלית, אתם יכולים לבקש מהלקוח להגדיר מחדש את ה-NEG של Private Service Connect לגישה אזורית. כדי לעשות את זה, הצרכן צריך להסיר את ה-NEG של Private Service Connect משירות הקצה העורפי הגלובלי ואז לצרף את ה-NEG לשירות קצה עורפי אזורי.
הפעלת גישה גלובלית לשירות שפורסם לא משבשת את תעבורת הרשת.
ניתוקים אחרי שמשדרגים את ספק Google ל-Terraform
אם השתמשתם בספק Google ל-Terraform בגרסאות קודמות ל-4.76.0 כדי ליצור קבצים מצורפים לשירות, אל תשדרגו לגרסאות 4.76.0 עד 4.81.x. כשמריצים את הפקודה terraform apply אחרי שמשדרגים לגרסאות 4.76.0 עד 4.81.x, יכול להיות ש-Terraform ימחק ויצור מחדש את קבצים מצורפים של שירותים ויסגור חיבורים קיימים של Private Service Connect בלי כוונה. קובצי שירות מצורפים שנוצרו מחדש לא יוצרים מחדש באופן אוטומטי חיבורים של Private Service Connect.
אם משדרגים לגרסה 4.82.0 ואז מריצים את terraform apply, קבצים מצורפים לשירות לא נמחקים, אבל ההגדרה reconcile
connections מוגדרת כ-true. אם ההגדרה הוגדרה בעבר כ-false, יכול להיות שחלק מהחיבורים של Private Service Connect ייסגרו.
שדרוג לגרסאות של ספק Google 4.76.0 עד 4.81.x. בתרחיש הזה, הפלט של
terraform planכולל את הפרטים הבאים:-/+ resource "google_compute_service_attachment" "SERVICE_NAME" { ... ~ reconcile_connections = false -> true # forces replacement ...כדי למנוע את הבעיה הזו, אפשר להשתמש בפתרון העקיף.
שדרוג לגרסאות ספק של Google 4.82.0 בתרחיש הזה, הפלט של
terraform planכולל את הפרטים הבאים:~ reconcile_connections = false -> true
אם מתעלמים מהאזהרה הזו ומחילים את השינויים, Terraform מעדכן את קובץ ה-service attachment כדי להפעיל את תהליך התיאום של החיבור. בהתאם לסטטוס החיבור, שינוי מ-
falseל-trueעלול לגרום לסגירה של חלק מהחיבורים הקיימים. מידע נוסף זמין במאמר התאמת חיבורים.כדי למנוע את הבעיה הזו, אפשר להשתמש בפתרון העקיף.
דרך לעקיפת הבעיה
מומלץ לשדרג את ספק Google ל-Terraform לגרסה 4.82.0 או לגרסה מאוחרת יותר. בגרסה הזו נמנעות מחיקה ויצירה מחדש לא מכוונות של קבצים מצורפים לשירות.
אם אתם לא יכולים לשדרג באופן מיידי, או אם אתם יכולים לשדרג אבל אתם רוצים גם למנוע מ-Terraform לשנות את הגדרת התיאום של החיבור, אתם צריכים לעדכן את ההגדרה של Terraform כדי להגדיר במפורש את הגדרת התיאום של החיבור.
מציגים את ההגדרה המפורטת של קובץ השירות המצורף ורושמים את ההגדרה
reconcileConnections.gcloud compute service-attachments describe SERVICE_NAME --region=REGION
הפלט כולל את השדה
reconcileConnections, שיכול להיות true או false.reconcileConnections: false
מעדכנים את קובץ התצורה של Terraform כדי להשתמש באופן מפורש באותה הגדרה שבה נעשה שימוש ב-Service Attachment.
resource "google_compute_service_attachment" "SERVICE_NAME" { ... reconcile_connections = false }דוגמה להגדרה זמינה במאמר Service Attachment Reconcile Connections (התאמת חיבורים של קובץ מצורף לשירות) ב-GitHub.
שגיאות TLS עם פרוטוקול PROXY
אם מפרסמים שירות עם פרוטוקול PROXY מופעל, אבל סוג שירות היעד לא תומך בפרוטוקול PROXY, הצרכנים יכולים להתחבר לשירות עם נקודות קצה. עם זאת, התנועה לא עוברת דרך החיבור, ועומסי העבודה מקבלים שגיאות שקשורות ל-TLS.
כדי לפתור את הבעיה, צריך לעדכן את קובץ השירות כדי להשבית את פרוטוקול ה-PROXY.
מידע על סוגי שירותי היעד שתומכים בפרוטוקול PROXY מופיע במאמר תכונות ותאימות.
פתרון בעיות
שגיאה בעדכון של קובץ מצורף לשירות
אם הודעת השגיאה הבאה מופיעה כשמעדכנים קובץ מצורף לשירות, יכול להיות שרשימת ההיתרים או רשימת הדחייה כוללות פרויקטים שנמחקו: The
resource PROJECT was not found.
כדי לפתור את הבעיה, צריך להסיר את הפרויקטים שנמחקו מההגדרה של קובץ השירות המצורף.
משתמשים בפקודה
gcloud compute service-attachments describeכדי להציג את ההגדרות של קובץ השירות שרוצים לשנות.כדי להפיק את רשימת ההיתרים בפורמט שאפשר להשתמש בו בהמשך לעדכון קובץ השירות, מבצעים את הפעולות הבאות:
gcloud compute service-attachments describe ATTACHMENT_NAME \ --region=REGION --flatten="consumerAcceptLists[]" \ --format="csv[no-heading,separator='='](consumerAcceptLists.projectIdOrNum,consumerAcceptLists.connectionLimit)" \ | xargs | sed -e 's/ /,/g'הפלט של רשימת ההיתרים אמור להיראות כך:
PROJECT_1=LIMIT_1,PROJECT_2=LIMIT_2,PROJECT_3=LIMIT_3
כדי להפיק את רשימת הדחייה בפורמט שאפשר להשתמש בו בהמשך לעדכון קובץ השירות, מבצעים את הפעולות הבאות:
gcloud compute service-attachments describe ATTACHMENT_NAME \ --region=REGION \ --format="value[delimiter=','](consumerRejectLists[])"הפלט של רשימת הדחייה אמור להיראות כך:
PROJECT_1,PROJECT_2,PROJECT_3
עורכים את הפלט של הפקודה כדי להסיר פרויקטים שנמחקו מרשימת ההיתרים ומרשימת הדחיות.
מעדכנים את קובץ השירות כדי להסיר את הפרויקטים שנמחקו.
כדי לעדכן את רשימת המקבלים:
gcloud compute service-attachments update ATTACHMENT_NAME \ --region=REGION \ --consumer-accept-list=UPDATED_ACCEPT_LISTכדי לעדכן את רשימת הדחייה:
gcloud compute service-attachments update ATTACHMENT_NAME \ --region=REGION \ --consumer-reject-list=UPDATED_REJECT_LIST
הקישוריות לא נוצרה
אם לקוח יצר נקודת קצה או קצה עורפי שמפנים ל-Service Attachment שלכם, אבל לא נוצר חיבור, צריך לבדוק את סטטוס החיבור של ה-Service Attachment. יכול להיות שסטטוס החיבור יציין פעולות שאפשר לבצע כדי לפתור את הבעיה.
תם הזמן הקצוב לתפוגה של חיבורים לצרכנים
אם החיבורים של הצרכנים נפסקים בגלל חוסר פעילות, בודקים אם השירות דורש חיבורים ארוכים. הזמן הקצוב לתפוגה של חיבור TCP במצב סרק עבור NAT של Private Service Connect הוא 20 דקות. אם השירות שלכם צריך זמן קצוב לתפוגה ארוך יותר, יכול להיות שתצטרכו לבצע כמה שינויים בהגדרות כדי לוודא שהחיבורים לא יסתיימו בגלל זמן קצוב לתפוגה. למידע נוסף, אפשר לעיין במפרטים של NAT.
שגיאות חיבור שמועברות
מידע על פתרון בעיות שקשורות להפצה של חיבורים זמין במאמר פתרון בעיות שקשורות להפצה של חיבורים ב-Private Service Connect.
יש בעיות בביצועים של שירות שפורסם או שחל בו פסק זמן בחיבור
אם יש בעיות בביצועים של השירות שפרסמתם או פסק זמן לחיבור לסירוגין, יכול להיות שהסיבה לכך היא אובדן מנות. כדי לבדוק למה חבילות נשמטו, אפשר לעיין במדדים שמתוארים בקטעים הבאים.
חבילות שהצרכנים לא קיבלו
המדד private_service_connect/producer/dropped_received_packets_count עוקב אחרי מנות מנקודת קצה או מקצה עורפי לשירות שפורסם, שנפסלו כי נקודת הקצה או הקצה העורפי חרגו ממספר החיבורים המקסימלי לשירות.
אם שירות שפורסם מדווח על ערכים של המדד הזה, כדאי לנסות את הפתרונות הבאים:
- להגדיל את הקיבולת של השירות שפורסם – לדוגמה, על ידי הוספה של עוד מכונות וירטואליות (VM) או נקודות קצה ברשת.
- מבקשים מצרכן השירות ליצור נקודות קצה או שרתים עורפיים נוספים שמתחברים לשירות שפורסם.
- מבקשים מצרכן השירות להקטין את מספר החיבורים דרך נקודת הקצה או ה-backend שלו.
חבילות שהושמטו לצרכנים
המדד private_service_connect/producer/dropped_sent_packets_count עוקב אחרי חבילות שנשלחות משירות שפורסם לנקודת קצה או לבק-אנד, ומושלכות כי Private Service Connect לא יכול למצוא חיבור תואם לחבילות תגובה.
ב-Private Service Connect מותרים רק חיבורים שיוצאים מרשת ה-VPC של הצרכן. כשצרכן יוזם חיבור, המערכת עוקבת אחרי החיבור כדי להתאים מנות תגובה מהשירות שפורסם לחיבור קיים. אם Private Service Connect לא מוצא התאמה לחבילת תגובה, החבילה מושמטת.
זה יכול לקרות אם שירות שפורסם שולח מנות תגובה אחרי שפג הזמן הקצוב לתפוגה של חיבור. מידע על מניעת בעיות שקשורות לפסק זמן בחיבורים מופיע במאמר בנושא מפרטי NAT.