הגדרת הכלי לסנכרון

בקטע הזה מתואר הכלי Synchronizer.

סקירה כללית של הכלי לסנכרון

ב-Apigee hybrid, התפקיד העיקרי של רכיב ה-Synchronizer הוא לבצע סקר ולהוריד את חוזי זמן הריצה שמסופקים על ידי מישור הניהול. המידע שמועבר באמצעות חוזה כולל שרתי proxy של API, מוצרי API, מטמונים ומארחים וירטואליים.

מצפים שמופעים של כלי הסנכרון שפועלים במישור זמן הריצה יבצעו שאילתות במישור הניהול באופן קבוע, יורידו את החוזים ויאפשרו למופעים מקומיים של זמן הריצה לגשת אליהם.

מנגנון סנכרון אחד יכול לתמוך בהרבה מעבדי הודעות שפרוסים באותו פוד.

הפעלת הגישה לכלי הסנכרון

עליך להעניק ל-Synchronizer הרשאה לשלוף ארטיפקטים של Apigee, כמו חבילות של שרתי proxy ומשאבים ממישור הניהול. כדי לאשר לסנכרון למשוך ארטיפקטים ממישור הניהול למישור זמן הריצה, צריך לקרוא ל-Apigee API.

  1. מוודאים שהפעלתם את Apigee API כמו שמוסבר בשלבי ההגדרה של GCP. פרטים נוספים זמינים במאמר בנושא שלב 3: הפעלת ממשקי API.
  2. מאתרים את מפתח חשבון השירות ב-GCP עם הרשאת כתיבה (קובץ JSON) שהורדתם כחלק מהשלבים של יצירת חשבונות שירות. לחשבון השירות יש את התפקיד Apigee Org Admin והוא נקרא apigee-org-admin. אם לא יצרתם בעבר את חשבון השירות הזה, אתם צריכים לעשות זאת לפני שתמשיכו.
  3. מגדירים את משתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS לנתיב שבו נמצא המפתח של חשבון השירות:

    export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
  4. קוראים ל-API‏ setSyncAuthorization כדי להפעיל את ההרשאות הנדרשות ל-Synchronizer:
    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/your_org_name:setSyncAuthorization" \
       -d '{"identities":["serviceAccount:synchronizer-manager-service-account-name"]}'
    

    כאשר:

    • ‫your_org_name: השם של הארגון ההיברידי.
    • ‫synchronizer-manager-service-account-name: השם של חשבון שירות עם התפקיד Apigee Synchronizer Manager. השם מורכב כמו כתובת אימייל. לדוגמה: my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com

    דוגמה:

    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \
       -d '{"identities":["serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com"]}'
    

    מידע נוסף על ה-API הזה זמין במאמר SyncAuthorization API.

  5. כדי לוודא שחשבון השירות הוגדר, מפעילים את ה-API הבא כדי לקבל רשימה של חשבונות שירות:
    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-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="
    }