פריסה לאשכולות GKE מצורפים

במאמר הזה מוסבר איך לפרוס את האפליקציות לאשכולות מצורפים של GKE. התמיכה באשכולות GKE מחוברים מאפשרת פריסה באשכולות AWS,‏ Azure ו-On-Premises.

באמצעות Cloud Deploy אפשר לפרוס את עומסי העבודה מבוססי-הקונטיינרים לכל אשכול GKE מצורף שאפשר לגשת אליו באמצעות שער Connect.

לפני שמתחילים

  • יש לכם אשכול משתמשים שאתם רוצים לפרוס אליו.

    אפשר ליצור אשכולות בתור אשכולות מצורפים של GKE, או לרשום אשכול Kubernetes קיים. אשכולות שיוצרים כאשכולות GKE מצורפים מקבלים באופן אוטומטי חברויות. באשכולות קיימים שרושמים ל-Fleet, צריך לציין שם חברות כשמבצעים את הרישום. תצטרכו את שם המינוי הזה כשמגדירים את היעד.

    אם אתם משתמשים ב-Google Cloud CLI בגרסה 407.0.0 ומעלה, אתם צריכים לכלול את הדגל --install-connect-agent בפקודה gcloud container fleet memberships register כשאתם רושמים אשכול Google Kubernetes Engine. הסוכן Connect כבר לא מותקן כברירת מחדל.

  • מגדירים את Connect gateway כדי לחבר את האשכול או האשכולות הרשומים אל Google Cloud.

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

הגדרת Cloud Deploy לפריסה באשכולות GKE מצורפים

  1. יוצרים הגדרת יעד.

    אפשר להגדיר את היעד בקובץ ה-YAML של צינור ההפצה, או בקובץ נפרד. בנוסף, אפשר להגדיר יותר מיעד אחד באותו קובץ, אבל הם צריכים להיות בפסקאות kind: Target שונות.

  2. מקצים לחשבון השירות של ההרצה את התפקידים שהוא צריך כדי שהוא יוכל ליצור אינטראקציה עם אשכולות מחוברים דרך השער.

    ההרשאה הזו נדרשת גם אם משתמשים בחשבון השירות שמוגדר כברירת מחדל ב-Cloud Deploy וגם אם משתמשים בחשבון שירות בהתאמה אישית.

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

  4. אופציונלי: אם האשכול הבסיסי הוא לא אשכול GKE, יכול להיות שתצטרכו להגדיר imagePullSecret כדי לאפשר לאשכול לשלוף מ-Artifact Registry.

  5. בהגדרת היעד, יוצרים קטע anthosCluster כדי להפנות אל האשכול:

    התחביר לציון אשכולות GKE מצורפים הוא:

    anthosCluster:
     membership: projects/[project_name]/locations/global/memberships/[membership_name]
    

    מזהה המשאב של אשכולות GKE מצורפים כולל את הרכיבים הבאים:

    • ‫[project_name] הוא שם הפרויקט Google Cloud שבו מריצים את האשכול הזה.

      האשכול שבו אתם מבצעים פריסה, כולל אשכולות GKE מצורפים, לא צריך להיות באותו פרויקט כמו צינור העברת הנתונים.

    • ‫[membership_name] הוא השם שבחרתם כשרשמתם את האשכול ל-Fleet.

    ב-location, כל החברות באשכול הן global, ולכן אין צורך לשנות את /locations/global/ במזהה המשאב הזה.

דוגמה להגדרת יעד:

      apiVersion: deploy.cloud.google.com/v1
      kind: Target
      metadata:
       name: qsdev
      description: development cluster
      anthosCluster:
       membership: projects/my-app/locations/global/memberships/my-app-dev-cluster

המאמרים הבאים