החלת ההגדרה על האשכול
כדי להתקין את Apigee Hybrid באשכול:
- חשוב לוודא שאתם נמצאים בספרייה
hybrid-base-directory/hybrid-files. - מריצים את הפקודה
init:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml
הפקודה
initמתקינה את שירותי הפריסה של Apigee, את Apigee Deployment Controller ואת Apigee Admission Webhook, והיא פורסת רכיבים שאינם של Apigee: Istio ו-Cert Manager. - כדי לבדוק את סטטוס הפריסה, אפשר להשתמש בפקודות הבאות:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
וגם
kubectl get pods -n apigee-system
וגם
kubectl get pods -n istio-system
כשהפודים מוכנים, עוברים לשלב הבא.
- מבצעים התקנה של 'הרצה יבשה'. מפעילים את הפקודה
applyעם הדגל--dry-run=true. הרצה יבשה מאפשרת לבדוק אם יש שגיאות לפני שמבצעים שינויים באשכול.$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=true
-
אם אין שגיאות, אפשר להחיל על האשכול את רכיבי זמן הריצה הספציפיים ל-Apigee:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
- כדי לבדוק את סטטוס הפריסה:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
חוזרים על השלב הזה עד שכל ה-pods מוכנים. יכול להיות שיעברו כמה דקות עד שה-pods יופעלו.
הפעלת הגישה למסנכרן
- יוצרים חשבון שירות ב-GCP ומוסיפים לו את התפקיד Apigee Organization Admin. חשבון השירות הזה ישמש לאימות של קריאה ל-API שתבצעו בשלב מאוחר יותר. דרך קלה ליצור חשבון שירות היא באמצעות מסוף GCP. הוראות מפורטות זמינות במאמר יצירה וניהול של חשבונות שירות במאמרי העזרה של GCP.
- מורידים את המפתח של חשבון השירות למערכת. פועלים לפי ההוראות במאמר יצירת מפתחות של חשבונות שירות במסמכי התיעוד של GCP.
- מעבירים את המפתח של חשבון השירות שהורדתם לספרייה של חשבונות השירות:
/hybrid-base-directory
/hybrid-files/service-accounts. - מריצים את שתי הפקודות האלה כדי לקבל אסימון:
export GOOGLE_APPLICATION_CREDENTIALS=org-admin-service-account-fileexport TOKEN=$(gcloud auth application-default print-access-token)כאשר org-admin-service-account-file הוא הנתיב במערכת למפתח של חשבון השירות שהורדתם עם התפקיד אדמין של ארגון Apigee.
- קוראים ל-API setSyncAuthorization כדי להפעיל את ההרשאות הנדרשות ל-Synchronizer:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/your_org_name:setSyncAuthorization" \ -d '{"identities":["serviceAccount:synchronizer-manager-service-account-email"]}'כאשר:
-
your_org_name: השם של הארגון ההיברידי. -
synchronizer-manager-service-account-email: השם של חשבון שירות עם התפקיד Apigee Synchronizer Manager. השם מורכב כמו כתובת אימייל. לדוגמה:apigee-synchronizer@my-project.iam.gserviceaccount.com
דוגמה:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \ -d '{"identities":["serviceAccount:apigee-synchronizer@my-project.iam.gserviceaccount.com"]}' -
- כדי לוודא שחשבון השירות הוגדר, מפעילים את ה-API הבא כדי לקבל רשימה של חשבונות שירות:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/your_org_name:getSyncAuthorization" \ -d ''
הפלט אמור להיראות כך:
{ "identities":[ "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
הוספת כתובת ה-IP של MART לארגון
צריך להוסיף לארגון Apigee את כתובת ה-IP של נקודת הקצה של MART. הגדרתם את הערך הזה קודם, כשקבעתם את הערך של המאפיין mart.hostAlias בקובץ ההחלפות.
מישור הניהול צריך את הכתובת הזו כדי לתקשר עם מישור זמן הריצה באמצעות MART.
כדי להוסיף את כתובת ה-IP של MART לארגון:
- מקבלים את הערך שהגדרתם קודם בקובץ ההחלפות שלכם עבור הנכס
mart.hostAlias. כדי ש-MART יפעל, הכינוי של המארח חייב להיות שם דומיין שמוגדר במלואו. - בקטע Enable synchronizer access (הפעלת גישה של כלי הסנכרון), מאתרים את מפתח חשבון השירות עם התפקיד Apigee Organization Admin (אדמין ארגוני של Apigee) שהורדתם קודם.
- מריצים את שתי הפקודות האלה כדי לקבל אסימון:
export GOOGLE_APPLICATION_CREDENTIALS=org-admin-service-account-fileexport TOKEN=$(gcloud auth application-default print-access-token)כאשר org-admin-service-account-file הוא הנתיב במערכת למפתח של חשבון השירות שהורדתם עם התפקיד אדמין של ארגון Apigee.
- מפעילים את Management API הבא כדי לעדכן את הארגון בנקודת הקצה של MART:
curl -v -X PUT \ https://apigee.googleapis.com/v1/organizations/your_org_name \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{ "name" : "your_org_name", "properties" : { "property" : [ { "name" : "features.hybrid.enabled", "value" : "true" }, { "name" : "features.mart.server.endpoint", "value" : "https://HOST_ALIAS_DNS" } ] } }'כאן מוצגת דוגמה. חשוב להוסיף את הקידומת https:// לשם הדומיין.
curl -v -X PUT \ https://apigee.googleapis.com/v1/organizations/my_organization \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{ "name" : "my_organization", "properties" : { "property" : [ { "name" : "features.hybrid.enabled", "value" : "true" }, { "name" : "features.mart.server.endpoint", "value" : "https://foo-mart.example.com" } ] } }'
שמירת קובץ השינויים מברירת המחדל
חשוב לשמור את קובץ ההגדרות לביטול. תצטרכו את הקובץ הזה כדי לבצע שדרוגים, תיקונים או שינויים אחרים בהגדרת האשכול בעתיד.