הדף הזה מתייחס ל-Apigee, אבל לא ל-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
במאמר הזה מוסבר איך להשתמש ב-Private Service Connect כדי ליצור חיבור פרטי בין Apigee לבין שירותי יעד בקצה העורפי. שימו לב שתעבורה של שרתי proxy ל-API שזורמת בין Apigee לבין שירות יעד בקצה העורפי נקראת תעבורה 'דרומה'.
השלבים להגדרת רשתות דרומיות שמתוארים במסמך הזה רלוונטיים למופעי Apigee שמקושרים ל-VPC ושלא מקושרים ל-VPC.
חיבור פרטי של Apigee ליעדי בק-אנד
כדי לחבר את Apigee באופן פרטי ליעד בקצה העורפי, צריך ליצור שני ישויות: service attachment ברשת ה-VPC שבה היעד פרוס ו-endpoint attachment ב-Apigee VPC. שני הישויות האלה מאפשרות ל-Apigee להתחבר לשירות היעד.
איור 1 מציג את ארכיטקטורת הרשת של Apigee שתומכת בגישה גלובלית לחיבורים דרומיים (southbound) במספר אזורים באמצעות Private Service Connect:
מגבלות
בארגון Apigee, מותרת נקודת קצה אחת לכל שירות מצורף. לדוגמה, נניח שיש לכם 10 שירותים מצורפים שחושפים שירותי יעד. אתם יכולים ליצור 10 נקודות קצה בארגון Apigee, אחת לכל שירות מצורף.
דוגמה: חשיפת שירות יעד ל-Apigee באמצעות Private Service Connect
בדוגמה הזו נראה איך משתמשים ב-Private Service Connect כדי לאפשר ל-Apigee לתקשר עם שירות יעד שפועל ברשת VPC שלא מקושרת ישירות ל-Apigee. בשלבים שבדוגמה הזו נעשה שימוש ב-gcloud
ובקריאות ל-Apigee API כדי להגדיר ולתת תצורה לצירוף שירות ברשת ה-VPC שבה היעד פרוס, ולצירוף נקודת קצה ב-Apigee VPC.
מקרה לדוגמה
בדוגמה הזו נתייחס למקרה שבו יש לכם שרת אינטרנט של Apache שפרוס בקבוצת מופעי מכונה מנוהלים (MIG) שפועלת ב-VPC. כדי לתקשר עם Apigee בהקשר הזה, אנחנו חושפים את השירותים דרך שער כניסה.
הגדרת מאזן עומסים
מגדירים מאזן עומסים ב-VPC שבו נמצאים המיקרו-שירותים שרוצים לחשוף:
- יוצרים את משתני הסביבה הבאים:
export PROJECT_ID=YOUR_PROJECT_IDexport IMAGE_PROJECT=debian-cloudexport IMAGE_FAMILY=debian-12export BACKEND=fooexport REGION=us-west1export ZONE=us-west1-aexport NETWORK=defaultexport SUBNET_NAME=default - יוצרים תבנית של הגדרות מכונה:
gcloud compute instance-templates create "$BACKEND" \ --tags=psc-demo,http-server,https-server \ --image-family "$IMAGE_FAMILY" --image-project "$IMAGE_PROJECT" \ --network "$NETWORK" --subnet "$SUBNET_NAME" --region "$REGION" \ --project "$PROJECT_ID" \ --metadata startup-script="#! /bin/bash sudo apt-get update sudo apt-get install apache2 -y sudo service apache2 restart echo '<!doctype html><html><body><h1>foo[/]: '\`/bin/hostname\`'</h1></body></html>' | sudo tee /var/www/html/index.html sudo mkdir /var/www/html/foo echo '<!doctype html><html><body><h1>foo[/foo]: '\`/bin/hostname\`'</h1></body></html>' | sudo tee /var/www/html/foo/index.html" - יוצרים קבוצת מופעי מכונה מנוהלים:
gcloud compute instance-groups managed create $BACKEND \ --project $PROJECT_ID --base-instance-name $BACKEND \ --size 1 --template $BACKEND --region $REGION - יוצרים בדיקת תקינות:
gcloud compute instance-groups managed set-named-ports $BACKEND \ --project $PROJECT_ID --region $REGION --named-ports http:80gcloud compute health-checks create tcp hc-tcp-$BACKEND \ --region=$REGION \ --description="health check for psc backend" \ --port-name=http --project=$PROJECT_ID
- יוצרים מאזן עומסים:
- יוצרים שירות לקצה העורפי:
gcloud compute backend-services create be-ilb \ --load-balancing-scheme=internal \ --protocol=tcp \ --region=$REGION \ --network=$NETWORK \ --health-checks=hc-tcp-$BACKEND \ --health-checks-region=$REGION \ --project=$PROJECT_ID - מוסיפים את קבוצת מופעי המכונה המנוהלים לשירות לקצה העורפי:
gcloud compute backend-services add-backend be-ilb \ --region=$REGION \ --instance-group=$BACKEND \ --instance-group-zone=$ZONE \ --project=$PROJECT_ID - יוצרים כלל העברה:
gcloud compute forwarding-rules create fr-ilb \ --region=$REGION \ --load-balancing-scheme=internal \ --network=$NETWORK \ --subnet=$SUBNET_NAME \ --ip-protocol=TCP \ --ports=80 \ --backend-service=be-ilb \ --backend-service-region=$REGION \ --project=$PROJECT_ID
- יוצרים שירות לקצה העורפי:
יצירת קובץ מצורף לשירות
יוצרים קובץ מצורף של שירות Private Service Connect ברשת ה-VPC שבה פרוסים שירותי היעד.
- כדי לבצע את המשימה הזו, אתם צריכים את ההרשאה
compute.subnetworks.createאו את תפקיד ה-IAM Compute Network Admin (roles/compute.networkAdmin). - יוצרים תת-רשת של Private Service Connect עם הפרמטר
purposeשמוגדר לערךPRIVATE_SERVICE_CONNECT:gcloud compute networks subnets create Private Service Connect_SUBNET_NAME \ --network NETWORK --region=REGION --purpose=PRIVATE_SERVICE_CONNECT --range=RANGE
gcloud compute --project=$PROJECT_ID firewall-rules create allow-psc-nat-80 \ --direction=INGRESS --priority=1000 --network NETWORK --action=ALLOW --rules=tcp:80 \ --source-ranges=RANGE --target-tags=psc-demo
תיאור מפורט של פרמטרי הפקודה מופיע במאמרי העזרה של Google Cloud CLI. אפשר לבצע את השלב הזה גם במסוף או באמצעות API.
לדוגמה:
gcloud compute networks subnets create psc-subnet --network default \ --region=us-west1 --purpose=PRIVATE_SERVICE_CONNECT --range=10.100.0.0/28
- יוצרים חיבור שירות ברשת ה-VPC:
- מקבלים את כלל ההעברה של מאזן העומסים הפנימי.
תשתמשו בכלל הזה בשלב מאוחר יותר:
gcloud compute forwarding-rules list --project=PROJECT_ID
PROJECT_ID הוא מזהה פרויקט בענן של Google Cloud. לדוגמה:
פלט לדוגמה:
NAME REGION IP_ADDRESS IP_PROTOCOL TARGET k8s2-tcp-e61tta3j-apps-istio-ingressgateway-0kl92frk us-west1 10.138.0.53 TCP
- יוצרים את קובץ השירות המצורף:
gcloud compute service-attachments create PSC_NAME \ --region=REGION --producer-forwarding-rule=PRODUCER_FORWARDING_RULE \ --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=PSC_SUBNET_NAME --project=PROJECT_IDהפרמטר PSC_NAME צריך להיות מחרוזת באורך של 1-63 תווים, שמורכבת רק מאותיות קטנות, מספרים ומקפים. הוא לא יכול להתחיל במספרים או במקפים. בנוסף, היא לא יכולה להסתיים במקף. תיאור מפורט של הפרמטרים של הפקודה הזו זמין במאמרי העזרה של Google Cloud CLI.
לדוגמה:
gcloud compute service-attachments create gkebackend \ --region=us-west1 --producer-forwarding-rule=k8s2-tcp-e62tta1j-apps-istio-ingressgateway-0kl92frk \ --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=psc-subnet --project=my-projectאפשר לבצע את השלב הזה גם בממשק המשתמש של Console. לדוגמה, במאמר פרסום שירות עם אישור אוטומטי של הפרויקט.
- מקבלים את כלל ההעברה של מאזן העומסים הפנימי.
תשתמשו בכלל הזה בשלב מאוחר יותר:
יצירת צירוף של נקודת קצה
יוצרים קובץ מצורף של נקודת קצה בארגון Apigee. אפשר לבצע את השלב הזה משורת הפקודה או מממשק המשתמש של Apigee Endpoint attachment.
דרישה מוקדמת: לפני שיוצרים קובץ מצורף של נקודת קצה, צריך לפרסם את השירותים שרוצים לחשוף באמצעות Private Service Connect (PSC). לשם כך, יוצרים מאזן עומסים וקובץ מצורף של שירות, כמו שמוסבר קודם בדוגמה הזו. מידע נוסף על חשיפת שירותים באמצעות Private Service Connect זמין במאמר פרסום שירותים מנוהלים באמצעות Private Service Connect. שימו לב שצריך להגדיר את קובץ ה-Service Attachment כך שיאשר חיבורים חדשים.
שורת הפקודה
יוצרים חיבור של נקודת קצה ב-VPC של Apigee משורת הפקודה:
- מקבלים את משאב קובץ השירות המצורף:
gcloud compute service-attachments list
הפקודה מחזירה את פרטי קובץ השירות. תשתמשו במידע הזה בשלב הבא. לדוגמה:
NAME REGION TARGET_SERVICE CONNECTION_PREFERENCE gkebackend us-west1 k8s2-tcp-tgysilgj-apps-istio-ingressgateway-fzdhwstg ACCEPT_AUTOMATIC
- מקבלים את טוקן האימות עבור Apigee API:
TOKEN="$(gcloud auth print-access-token)"
- משתמשים ב-Apigee API כדי ליצור את קובץ ה-endpoint. משתמשים בערכים שמוחזרים מהפקודה
gcloud compute service-attachments listבגוף הבקשה:curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/ORGANIZATION/endpointAttachments?endpointAttachmentId=EA_NAME" \ -d '{ "location": "REGION", "serviceAttachment": "projects/PROJECT_ID/regions/REGION/serviceAttachments/SA_NAME" }'כאשר:
- REGION הוא האזור של קובץ השירות המצורף. לדוגמה:
us-west1 - ORGANIZATION הוא שם הארגון שלכם ב-Apigee.
- PROJECT_ID הוא פרויקט בענן של Google שבו נוצר צירוף השירות.
- EA_NAME הוא השם של קובץ ה-endpoint. השם צריך להיות ייחודי. לא יכולים להיות קבצים אחרים של endpoint עם אותו שם, ואי אפשר לשנות את השם מאוחר יותר. השם צריך להתחיל באות קטנה, ואחריה יכולות להיות עד 31 אותיות קטנות, מספרים או מקפים, אבל הוא לא יכול להסתיים במקף. האורך המינימלי הוא 2.
- SA_NAME הוא השם של קובץ השירות המצורף. אם אתם צריכים לתמוך במיקום נתונים, צריך לציין קובץ מצורף לשירות שתואם למדיניות שלכם לגבי מיקום המשאבים. אחרת, הבקשה תיכשל. אפשר לעיין במאמר בנושא שימוש באילוצים של מדיניות הארגון עם מיקום הנתונים.
מערכת Apigee מתחילה פעולה ממושכת. כשהפעולה תושלם, תופיע תגובה דומה לזו:
{ "name": "organizations/my-organization/operations/6e249895-e78e-48f0-a28f-7140e15e1676", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/my-organization/endpointAttachments/gkebackend", "state": "FINISHED" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.apigee.v1.EndpointAttachment", "name": "organizations/my-organization/endpointAttachments/gkebackend", "location": "us-west1", "host": "7.0.3.4", "serviceAttachment": "projects/my-project/regions/us-west1/serviceAttachments/gkebackend" } }
- REGION הוא האזור של קובץ השירות המצורף. לדוגמה:
- כדי לבדוק אם נקודת הקצה החדשה פעילה:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/ORGANIZATION/endpointAttachments/EA_NAME"
מחפשים את
"state": "ACTIVE"בתשובה.כדי להתחבר לשירותים שמאחורי קובץ השירות, אפשר להשתמש בכתובת ה-IP שמוחזרת בתגובה (בשדה
host), או ברשומת DNS שיצרתם באזור ה-DNS הפרטי. מידע נוסף מופיע בסעיפים הבאים. -
שימוש בכתובת ה-IP
אפשר להשתמש בכתובת ה-IP
משתמשים בכתובת ה-IP של המארח של שירות הצירוף כיעד של proxy ל-API. לדוגמה:7.0.3.4שמוחזרת בתשובה כדי להתחבר לשירותים שמאחורי קובץ השירות, כמו שמוצג בשלב הבא. שימו לב ש-7.0.3.4היא כתובת IP ציבורית לשימוש פרטי (PUPI) שהוקצתה על ידי Apigee לשער הכניסה. הוא לא מפורסם באינטרנט, ואף אחד מהשירותים של Google לא משתמש בכתובות IP בטווח הזה באופן פנימי.<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>http://7.0.3.4/orders</URL> </HTTPTargetConnection> </TargetEndpoint>
שימוש ברשומת DNS
אם הגדרתם אזור DNS פרטי בפרויקט Google Cloud, אתם יכולים להשתמש ברשומת DNS כדי להתחבר לשירותים שמאחורי קובץ השירות. אלה השלבים הבסיסיים:
- כדרישת סף, צריך להגדיר DNS peering בפרויקט שלכם ב-Google Cloud, כמו שמוסבר במאמר בנושא חיבור לאזורי DNS פרטיים של peering.
- יוצרים רשומת DNS (רשומת A) לכתובת ה-IP של הקובץ המצורף של נקודת הקצה (endpoint) של Private Service Connect באזור ה-DNS הפרטי.
- מגדירים את שרת ה-proxy של Apigee API כך שישתמש ברשומת ה-DNS של נקודת הקצה של Private Service Connect כיעד של שרת ה-proxy של ה-API. לדוגמה:
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>http://my-private-dns-zone.example.com/orders</URL> </HTTPTargetConnection> </TargetEndpoint>
ממשק המשתמש של Apigee
יוצרים חיבור לנקודת קצה בארגון Apigee בממשק המשתמש של Apigee:
במסוף Google Cloud , עוברים לדף Apigee > Management > Endpoint attachments.
- לוחצים על + Endpoint Attachment. מופיעה תיבת הדו-שיח Endpoint attachment.
- מזינים שם לצירוף של נקודת הקצה. השם צריך להיות ייחודי. לא יכולים להיות צירופים אחרים של נקודות קצה עם אותו שם, ואי אפשר לשנות את השם מאוחר יותר. השם צריך להתחיל באות קטנה, ואחריה יכולות להיות עד 31 אותיות קטנות, מספרים או מקפים, אבל הוא לא יכול להסתיים במקף. האורך המינימלי הוא 2.
- לוחצים על הבא.
- מהרשימה הנפתחת Service Attachment, בוחרים את קובץ השירות המצורף שאליו רוצים להתחבר.
ההתנהגות של ממשק המשתמש תלויה בהרשאות שלכם. אם יש לכם הרשאה להציג אזורים וקבצים מצורפים של שירותים, אתם יכולים פשוט לבחור את הקובץ המצורף של השירות מהרשימה הנפתחת. אם אין לכם הרשאה להציג רשימה של אזורים, תוצג רשימה סטטית של אזורים, ותוכלו לבחור מתוך הרשימה. אם אין לכם הרשאה להציג את רשימת קבצים מצורפים לשירות, אתם צריכים להזין את השם באופן ידני. המיקום ושם קובץ השירות המצורף. שימו לב: אם אין לכם הרשאה לפרט אזורים, תוצג לכם רשימה סטטית של אזורים שתוכלו לבחור מתוכה.

- מוודאים שנקודת הקצה של השירות יכולה לקבל חיבורים. במאמר בדיקה וניהול של קישוריות קבצים מצורפים מוסבר איך עושים זאת.
- לוחצים על הבא.
- לוחצים על יצירה. בדרך כלל, הפעולה נמשכת דקה או שתיים.
- כדי לבדוק את סטטוס היצירה הנוכחי, לוחצים על רענון בדף הרשימה.
- משתמשים בכתובת ה-IP של המארח של שירות הצירוף כיעד של proxy ל-API.
כתובת ה-IP של המארח מופיעה בממשק המשתמש של Endpoint Attachments (קבצים מצורפים לנקודות קצה) כשתהליך היצירה מסתיים, כמו שרואים בצילום המסך הבא:
לדוגמה:
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>http://7.0.5.2/orders</URL> </HTTPTargetConnection> </TargetEndpoint>
בדיקה וניהול של הקישוריות של קבצים מצורפים
בקטע הזה מוסבר איך לוודא שקובץ מצורף של שירות יכול לגשת לקובץ מצורף של נקודת קצה בפרויקט Apigee, ואיך לשנות את העדפת החיבור אם רוצים.
- פועלים לפי השלבים במאמר הצגת רשימת השירותים שפורסמו כדי לראות את רשימת קבצים מצורפים של שירותים בפרויקט.
- בוחרים את קובץ ה-Service Attachment שרוצים להתחבר אליו, כמו שמוסבר במאמר בנושא הצגת פרטים של שירות שפורסם.
- בוחרים את העדפת החיבור לקובץ המצורף של השירות שפורסם. Private Service Connect מציע שתי אפשרויות
שמתוארות בהמשך. אם רוצים לשנות את העדפת החיבור הנוכחית, פועלים לפי השלבים במאמר שינוי העדפת החיבור לשירות שפורסם.
- אישור אוטומטי של כל החיבורים: קובץ השירות המצורף מקבל קבצים מצורפים של נקודות קצה מכל פרויקט. אם בוחרים באפשרות הזו, הקובץ המצורף של השירות יוכל לקבל חיבור מקובץ מצורף של נקודת קצה בפרויקט Apigee. אין צורך בהגדרה נוספת.
- אישור חיבורים מפרויקטים נבחרים: מציינים את הפרויקטים שמהם יתקבלו חיבורים לנקודת החיבור לשירות. אם בוחרים באפשרות הזו, צריך להוסיף את מזהה הפרויקט של Apigee לנקודת החיבור לשירות. אפשר למצוא את מזהה הפרויקט של Apigee בשלב Verify project connection בממשק המשתמש של Endpoint attachment, כמו שמוצג בצילום המסך הזה:

אפשר גם לאחזר את מזהה הפרויקט ב-Apigee באמצעות Apigee Organizations API, שמחזיר את המזהה בשדה בשם
apigeeProjectId.
- אם ביצעתם שינויים בהעדפות החיבור, שומרים את השינויים.
במסוף Google Cloud , עוברים לדף Apigee > Management > Endpoint attachments.
אפשר גם להציג את רשימת הקבצים המצורפים של נקודות הקצה באמצעות Apigee Endpoints API.- ברשימת הקבצים המצורפים, מוודאים שסטטוס החיבור של Private Service Connect הוא עכשיו
ACCEPTED. אם בשדה מוצג סטטוס אחר מלבדACCEPTED, אפשר לעיין במאמר פתרון בעיות שקשורות למצב החיבור של Private Service Connect.
ניהול קבצים מצורפים של נקודות קצה
endpointAttachments API של Apigee מספק שיטות ליצירה, למחיקה, לאחזור ולרשימה של קבצים מצורפים של נקודות קצה.
הצגת קבצים מצורפים של נקודות קצה
אפשר לראות רשימה של קבצים מצורפים של נקודות קצה בממשק המשתמש של Apigee Endpoint attachment או על ידי קריאה ל-Apigee Endpoints API.
כדי לראות את רשימת נקודות הקצה המצורפות בממשק המשתמש של Apigee:
במסוף Google Cloud , עוברים לדף Management > Endpoint attachments.
- צפייה ברשימה של קבצים מצורפים לנקודות קצה.
יצירת צירוף של נקודת קצה
כדי ליצור חיבור של נקודת קצה בממשק המשתמש או באמצעות Apigee Endpoints API, אפשר לעיין במאמר יצירת חיבור של נקודת קצה.
מחיקה של צירוף נקודת קצה
כדי למחוק נקודת קצה באמצעות ממשק המשתמש של Apigee:
במסוף Google Cloud , עוברים לדף Management > Endpoint attachments.
- בוחרים את Endpoint Attachment שרוצים למחוק.
- לוחצים על Delete Endpoint Attachment.
אפשר גם להשתמש ב-Apigee Endpoints API כדי להציג, ליצור ולמחוק קבצים מצורפים של נקודות קצה.
מתבצעת התחברות לאזורי שרת DNS פרטיים של רשתות עמיתות
אזור peering הוא אזור פרטי של Cloud DNS שמאפשר לשלוח בקשות DNS בין אזורים של Cloud DNS ברשתות VPC שונות.
כדי לספק DNS peering, צריך ליצור אזור פרטי של Cloud DNS peering ולהגדיר אותו לביצוע בדיקות DNS ברשת VPC שבה הרשומות של מרחב השמות של האזור הזה זמינות. רשת ה-VPC שבה אזור ה-DNS המקושר מבצע חיפושים נקראת רשת יצרן ה-DNS. מידע נוסף זמין במאמר בנושא אזורי Peering.
אתם יכולים להגדיר את Apigee כך שיפענח אזורי DNS פרטיים ברשת של יצרן DNS. ההגדרה הזו מאפשרת ל-Apigee לפתור נקודות קצה של יעד בפרויקט שמשתמש בשמות דומיין פרטיים.
בקטע הזה נבחנים שני תרחישים עיקריים לדוגמה, שבהם Apigee מוגדר עם או בלי קישור VPC:
- הגדרת קישור DNS פרטי בין רשתות שכנות (peering) עם הפעלת קישור VPC בין רשתות שכנות (peering)
- הגדרת קישור פרטי של DNS כשקישור VPC לא מופעל
סקירה כללית
כדי ש-Apigee יפעל, הוא צריך להתחבר ליעדי בק-אנד שאתם מנהלים. יכול להיות שאפשר יהיה לפתור את היעדים האלה באמצעות DNS ציבורי או פרטי. אם אפשר לפתור את היעד באופן ציבורי, אין בעיה, כי יעד הבק-אנד ב-Apigee מצביע על הכתובת הציבורית של השירות. נקודות קצה פרטיות יכולות להיות כתובות IP סטטיות או שמות DNS שניתן לפתור, שאתם מארחים ומנהלים. כדי לפתור נקודות קצה פרטיות של יעדים, נהוג לתחזק תחום DNS פרטי שמארח בפרויקט בענן שלכם. כברירת מחדל, אי אפשר לפתור את שמות ה-DNS הפרטיים האלה באמצעות Apigee.
הגדרת שרת DNS פרטי עם קישור בין רשתות שכנות (peering) של VPC מופעל
אם יש לכם תחום פרטי ב-Cloud DNS שמתארח בפרויקט בענן שמקושר ל-Apigee, אתם יכולים להגדיר קישור DNS כדי לאפשר ל-Apigee לפתור שמות בתחום הפרטי שלכם. כברירת מחדל, אזורים פרטיים הם פרטיים לרשת ה-VPC שבה הם מתארחים. הוראות להגדרת קישור בין אזורי DNS פרטיים לבין Apigee (בעלי השירות המנוהל) מפורטות במאמר שיתוף אזורי DNS פרטיים עם בעלי שירותים מנוהלים.
הגדרת קישור בין רשתות DNS פרטיות כשקישור בין רשתות VPC לא מופעל
בקטע הזה מוסבר איך להגדיר את Apigee כך שיפתור שמות DNS פרטיים בפרויקט שבו לא מופעלת תקשורת VPC. באיור 2 מוצגת ההגדרה, שבה אזור תקשורת DNS ב-Apigee פותר שמות דומיין פרטיים באזור DNS פרטי שמתארח בפרויקט Google Cloud שלכם.
- כדרישה מוקדמת, צריך להקצות את Apigee בלי קישור לרשתות שכנות ב-VPC. כדי לבדוק אם הקישור לרשתות שכנות ב-VPC מופעל או לא, מריצים את קריאת ה-API הזו של Apigee. צריכה להיות לכם הרשאת
apigee.adminכדי להריץ את הקריאה הזו:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://apigee.googleapis.com/v1/organizations/ORGANIZATION"כאשר:
-
ORGANIZATIONהוא השם של הארגון שלכם ב-Apigee.
אם התשובה מכילה את
"disableVpcPeering": "true", המשמעות היא ש-VPC peering לא מופעל. -
- מקבלים את מספר הפרויקט של Apigee:
gcloud projects describe APIGEE_PROJECT_ID --format="value(projectNumber)"
כאשר:
-
APIGEE_PROJECT_IDהוא מזהה הפרויקט שלכם ב-Apigee. בדרך כלל זה השם של הארגון שלכם ב-Apigee.
-
- מעניקים לחשבון השירות של Apigee לכל פרויקט (P4SA) את ההרשאה
dns.networks.targetWithPeeringZoneבפרויקט שמכיל את רשת ה-VPC של היצרן. כדי לקבל את ההרשאה הזו, אפשר להוסיף את התפקידdns.peerל-P4SA של Apigee, באופן הבא:gcloud projects add-iam-policy-binding PRODUCER_PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT \ --role=roles/dns.peerכאשר:
-
PRODUCER_PROJECT_IDהוא מזהה הפרויקט שמכיל את רשת ה-VPC של הספק. -
SERVICE_ACCOUNTהוא P4SA של Apigee. לדוגמה:service-APIGEE_CONSUMER_PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com.
APIGEE_CONSUMER_PROJECT_NUMBERהוא מספר הפרויקט ב-Apigee שאחזרתם בשלב הקודם.
-
- יוצרים תחום DNS לצורך קישור בין רשתות שכנות (peering) עם שרת DNS פרטי בפרויקט:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/ORGANIZATION/dnsZones?dnsZoneId=DNS_ZONE_ID" \ -d '{ "domain": "DOMAIN", "description": "DESCRIPTION", "peeringConfig": { "targetProjectId": "PRODUCER_PROJECT_ID", "targetNetworkId": "PRODUCER_VPC_NETWORK" } }'כאשר:
-
ORGANIZATIONהוא השם של הארגון שלכם ב-Apigee. -
DNS_ZONE_IDהוא השם של תחום ה-DNS שרוצים ליצור. -
DOMAINהוא שם ה-DNS של האזור המנוהל הזה, למשלexample.com. -
DESCRIPTION: תיאור קצר של תחום ה-DNS. מספר התווים המקסימלי: 1,024 -
PRODUCER_PROJECT_IDהוא הפרויקט שמכיל את רשת ה-VPC של ספק השירות. -
PRODUCER_VPC_NETWORKהיא רשת ה-VPC בפרויקט הלקוח.
-
- מוודאים שהחיבור בין הרשתות נוצר בהצלחה:
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://apigee.googleapis.com/v1/organizations/ORGANIZATION/dnsZones/DNS_ZONE_ID"כאשר:
- ORGANIZATION הוא השם של הארגון שלכם ב-Apigee.
- DNS_ZONE_ID הוא השם של תחום ה-DNS שיצרתם.
אם הפעולה מצליחה, התשובה תכלול את קוד הסטטוס הבא:
"state": "ACTIVE" - אחרי השלמת הפירינג, אפשר ליצור רשומת DNS באזור הפרטי ולהפנות אליה בהגדרת צירוף של נקודת קצה. איך יוצרים קובץ מצורף של נקודת קצה
מגבלות
מידע נוסף על מגבלות ונקודות חשובות בנושא DNS Peeringפתרון בעיות
בעיות במצב החיבור של Private Service Connect
בקטע הזה מתוארים פתרונות אפשריים למצב שבו מצורף נקודת קצה הוקצה והסטטוס שלו הוא Active, אבל מצב החיבור הוא לא Accepted. איור 3 מציג כמה מצבי חיבור אפשריים.
איור 3: פרטים על סטטוס של צירוף נקודת קצה
הסטטוס שמופיע יכול לעזור לזהות את הסיבה האפשרית, כפי שמתואר בטבלה הבאה:
| מצב החיבור | סיבה אפשרית | פתרון מומלץ |
|---|---|---|
| ACCEPTED | החיבור מנקודת הקצה לחיבור אושר על ידי קובץ השירות המצורף. | לא רלוונטי |
| בהמתנה | מזהה הפרויקט של Apigee לא יכול להיות ברשימת הפרויקטים שאושרו על ידי הלקוח ולא ברשימת הפרויקטים שנדחו. | מוסיפים את מזהה פרויקט Apigee לרשימת הצרכנים המאושרים בקובץ המצורף של השירות. שינוי העדפת החיבור לשירות שפורסם |
| REJECTED | מזהה הפרויקט של Apigee נמצא ברשימת הדחייה של הצרכן. | מסירים את מזהה פרויקט Apigee מרשימת הדחייה של הצרכנים ומוסיפים אותו לרשימת האישור של הצרכנים בחיבור השירות. אפשר לעיין במאמר בנושא ניהול בקשות לגישה לשירות שפורסם. |
| FROZEN | השירות שנקודת הקצה הזו מצורפת אליו הושעה או הושבת. | פרטים נוספים מופיעים בקבצים המצורפים. מידע נוסף מופיע במאמר בנושא צפייה בפרטים של שירות שפורסם. |
| סגור | קובץ השירות המצורף לנקודת הקצה הזו נמחק. | יוצרים מחדש את קובץ השירות ואת קובץ נקודת הקצה. |
| NEEDS_ATTENTION | השירות קיבל את קובץ ה-endpoint המצורף, אבל יש בעיה בקובץ השירות המצורף. | תאר את השירות פרטים נוספים מופיעים בקובץ המצורף. מידע נוסף מופיע במאמר בנושא צפייה בפרטים של שירות שפורסם. |
| לא זמין | מצב הקישוריות לא זמין, וזה יכול לקרות במהלך הקצאת הרשאות. | מחכים כמה דקות כדי לראות אם הסטטוס משתנה. |
הגדרת Private Service Connect עם Apigee
אפשר לעיין במדריך בעיות בקישוריות של Apigee עם יעדים של Private Service Connect מדרום.