הדף הזה רלוונטי ל-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אפשר לבצע את השלב הזה גם בממשק המשתמש של המסוף. לדוגמה, במאמר פרסום שירות עם אישור אוטומטי של הפרויקט.
- מקבלים את כלל ההעברה של מאזן העומסים הפנימי.
תשתמשו בכלל הזה בשלב מאוחר יותר:
יצירת נקודת קצה של הקישור
יוצרים קובץ מצורף של נקודת קצה בארגון Apigee. אפשר לבצע את השלב הזה משורת הפקודה או מממשק המשתמש של נקודת הקצה של הקישור של Apigee.
דרישה מוקדמת: לפני שיוצרים קובץ מצורף של נקודת קצה, צריך לפרסם את השירותים שרוצים לחשוף באמצעות Private Service Connect. לשם כך, יוצרים מאזן עומסים וקובץ מצורף של שירות, כמו שמוסבר קודם בדוגמה הזו. מידע נוסף על חשיפת שירותים באמצעות Private Service Connect זמין במאמר פרסום שירותים מנוהלים באמצעות Private Service Connect. שימו לב שצריך להגדיר את קובץ ה-Service Attachment כך שיאשר חיבורים חדשים.
שורת הפקודה
יוצרים קובץ מצורף של נקודת הקצה של הקישור ב-Apigee VPC משורת הפקודה:
- מאחזרים את משאב קובץ השירות המצורף:
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 כדי ליצור את נקודת הקצה של הקישור. משתמשים בערכים שמוחזרים מהפקודה
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 Cloud שבו נוצר קובץ השירות.
- EA_NAME הוא השם של קובץ ה-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 של המארח של קובץ השירות המצורף כיעד של פרוקסי 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, בוחרים את קובץ ה-Service Attachment שאליו רוצים להתחבר.
ההתנהגות של ממשק המשתמש תלויה בהרשאות שלכם. אם יש לכם הרשאה להציג אזורים וקבצים מצורפים של שירותים, אתם יכולים פשוט לבחור את הקובץ המצורף של השירות מהרשימה הנפתחת. אם אין לכם הרשאה להציג רשימה של אזורים, תוצג רשימה סטטית של אזורים, ותוכלו לבחור מתוך הרשימה. אם אין לכם הרשאה להציג את רשימת קבצים מצורפים לשירות, אתם צריכים להזין את השם באופן ידני. המיקום ושם קובץ השירות המצורף. שימו לב: אם אין לכם הרשאה לפרט אזורים, תוצג לכם רשימה סטטית של אזורים שתוכלו לבחור מתוכה.

- מוודאים שנקודת הקצה של השירות יכולה לקבל חיבורים. במאמר בדיקה וניהול של קישוריות קבצים מצורפים מוסבר איך עושים זאת.
- לוחצים על הבא.
- לוחצים על יצירה. בדרך כלל, הפעולה נמשכת דקה או שתיים.
- כדי לבדוק את סטטוס היצירה הנוכחי, לוחצים על רענון בדף הרשימה.
- משתמשים בכתובת ה-IP של המארח של קובץ השירות המצורף כיעד של פרוקסי 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 בממשק המשתמש של נקודת הקצה של הקישור, כמו שמוצג בצילום המסך הזה:

אפשר גם לאחזר את מזהה הפרויקט ב-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 producer. מידע נוסף זמין במאמר בנושא אזורי Peering.
אתם יכולים להגדיר את Apigee כך שיפענח אזורי DNS פרטיים ברשת של יצרן DNS. ההגדרה הזו מאפשרת ל-Apigee לפתור נקודות קצה של יעד בפרויקט שמשתמש בשמות דומיין פרטיים.
בקטע הזה נבחנים שני תרחישי שימוש עיקריים, שבהם Apigee מוגדר עם או בלי הפעלת VPC peering:
- הגדרת קישור DNS פרטי בין רשתות שכנות (peering) עם הפעלת קישור VPC בין רשתות שכנות (peering)
- הגדרת קישור פרטי של DNS כשקישור VPC לא מופעל
סקירה כללית
כדי לבצע את העבודה שלו, Apigee צריך להתחבר ליעדי קצה עורפיים שאתם מנהלים. יכול להיות שאפשר לפתור את היעדים האלה באמצעות שרת DNS ציבורי או פרטי. אם אפשר לפתור את הבעיה ביעד באופן ציבורי, אין בעיה. היעד בקצה העורפי של Apigee מצביע על הכתובת הציבורית של השירות. נקודות קצה פרטיות יכולות להיות כתובות IP סטטיות או שמות DNS שניתן לפתור, שאתם מארחים ומנהלים. כדי לפתור נקודות קצה פרטיות של יעד, נהוג לתחזק אזור DNS פרטי שמתארח בפרויקט Google Cloud. כברירת מחדל, אי אפשר לפענח את שמות ה-DNS הפרטיים האלה ב-Apigee.
הגדרת שיוך של שרת DNS פרטי עם שיוך של VPC מופעל
אם יש לכם אזור פרטי של Cloud DNS שמתארח בפרויקט בענן שמקושר ל-Apigee, אתם יכולים להגדיר קישור DNS כדי לאפשר ל-Apigee לפתור שמות באזור הפרטי שלכם. כברירת מחדל, אזורים פרטיים הם פרטיים לרשת ה-VPC שבה הם מתארחים. הוראות להגדרת קישור בין אזורי DNS פרטיים לבין Apigee (בעלי השירות המנוהל) מפורטות במאמר שיתוף אזורי DNS פרטיים עם בעלי שירותים מנוהלים.
הגדרת קישור של שרת DNS פרטי כשקישור VPC לא מופעל
בקטע הזה מוסבר איך להגדיר את Apigee כך שיפענח שמות DNS פרטיים בפרויקט שבו לא מופעלת קישוריות VPC. איור 2 מציג את ההגדרה, שבה אזור DNS peering ב-Apigee פותר שמות דומיין פרטיים באזור DNS פרטי שמתארח בפרויקט Google Cloud שלכם.
- כדרישה מוקדמת, צריך להקצות את Apigee בלי קישור בין רשתות VPC שכנות (peering). כדי לבדוק אם ה-VPC
peering מופעל או לא, מריצים את קריאת ה-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 לא מופעל. -
- מקבלים את מספר הפרויקט של 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הוא Apigee P4SA. לדוגמה: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" - אחרי השלמת קישור בין רשתות שכנות (peering), אפשר ליצור רשומת DNS באזור הפרטי ולהפנות אליה בהגדרת נקודת הקצה של הקישור. איך יוצרים קובץ מצורף של נקודת קצה
מגבלות
מידע נוסף על מגבלות ונקודות חשובות בנושא DNS Peeringפתרון בעיות
בעיות במצב החיבור של Private Service Connect
בקטע הזה מתוארים פתרונות אפשריים למצב שבו נקודת הקצה של הקישור הוקצתה והסטטוס שלה הוא Active, אבל מצב החיבור הוא לא Accepted. איור 3 מציג כמה מצבים אפשריים של חיבור.
איור 3: פרטים על סטטוס של צירוף נקודת קצה
הסטטוס שמוצג יכול לעזור לזהות את הסיבה האפשרית, כפי שמתואר בטבלה הבאה:
| מצב החיבור | סיבה אפשרית | פתרון מומלץ |
|---|---|---|
| ACCEPTED | החיבור מנקודת הקצה לחיבור אושר על ידי קובץ השירות המצורף. | לא רלוונטי |
| בהמתנה | מזהה הפרויקט של Apigee לא יכול להיות ברשימת הפרויקטים שהצרכן אישר ולא ברשימת הפרויקטים שנדחו. | מוסיפים את מזהה פרויקט Apigee לרשימת הצרכנים המורשים בקובץ המצורף של השירות. שינוי העדפות החיבור לשירות שפורסם |
| REJECTED | מזהה הפרויקט של Apigee נמצא ברשימת הדחייה של הצרכן. | מסירים את מזהה פרויקט Apigee מרשימת הדחייה של הצרכן ומוסיפים אותו לרשימת האישור של הצרכן בקובץ המצורף של השירות. איך מנהלים בקשות לגישה לשירות שפורסם |
| FROZEN | השירות שנקשר לנקודת הקצה של הקישור הושעה או הושבת. | פרטים נוספים מופיעים בתיאור של קובץ השירות המצורף. מידע נוסף מופיע במאמר בנושא צפייה בפרטים של שירות שפורסם. |
| סגור | קובץ השירות המצורף לנקודת הקצה הזו נמחק. | יוצרים מחדש את קובץ השירות ואת נקודת הקצה של הקישור. |
| NEEDS_ATTENTION | נקודת הקצה של הקישור אושרה על ידי הקישור לשירות, אבל יש בעיה בקישור לשירות. | תאור השירות פרטים נוספים מופיעים בקובץ המצורף. מידע נוסף מופיע במאמר בנושא צפייה בפרטים של שירות שפורסם. |
| לא זמין | מצב הקישוריות לא זמין, וזה יכול לקרות במהלך הקצאת ההרשאות. | מחכים כמה דקות כדי לראות אם הסטטוס משתנה. |
הגדרת Private Service Connect עם Apigee
אפשר לעיין במדריך בנושא בעיות בקישוריות של Apigee עם יעדים של Private Service Connect מדרום.