שדרוג Apigee Hybrid לגרסה 1.17

ההליך הזה מתייחס לשדרוג מגרסה 1.16.x של Apigee Hybrid לגרסה 1.17.1 של Apigee Hybrid, ולשדרוג מגרסאות קודמות של Hybrid 1.17.x לגרסה 1.17.1.

ההליך זהה לשדרוג גרסה משנית (לדוגמה, מגרסה 1.16 לגרסה 1.17) ולשדרוג גרסת תיקון (לדוגמה, מגרסה 1.17.0 לגרסה 1.17.1).

אם אתם משדרגים מגרסה 1.15 או מגרסה ישנה יותר של Apigee Hybrid, אתם צריכים לשדרג קודם לגרסה 1.16 לפני שתשדרגו לגרסה 1.17.1. אפשר לעיין בהוראות בנושא שדרוג Apigee Hybrid לגרסה 1.16.

שינויים מ-Apigee Hybrid גרסה 1.16

שימו לב לשינויים הבאים:

  • תמיכה ב-Model Context Protocol‏ (MCP): ב-Apigee hybrid גרסה 1.17 נוספה תמיכה ב-Model Context Protocol‏ (MCP), שהוא פרוטוקול פתוח שמאפשר לאפליקציות AI אג'נטיות להשתמש בממשקי ה-API שלכם ככלים באמצעות נקודות קצה מנוהלות של MCP. ‫Apigee hybrid מתזמן, מאשר ומאבטח את הקריאות האלה לכלי MCP באותו אופן שבו הוא מנהל את ממשקי ה-API האחרים שלכם, כך שלא תצטרכו להפעיל או לתחזק שרתי MCP משלכם. מידע נוסף זמין במאמר Model Context Protocol‏ (MCP) בסקירה הכללית של Apigee ובמדריך למתחילים בנושא MCP.
  • רוטציה של אישור CA בסיסי: ב-Apigee hybrid בגרסה 1.17 נוספה תמיכה ברוטציה של אישור רשות אישורים (CA) בסיסי, שמשמש כנקודת אמון לתקשורת TLS בין רכיבי זמן הריצה. עכשיו אפשר להחליף את רשות האישורים הבסיסית לפני שהתוקף שלה יפוג, בלי השבתה, באמצעות ביצוע הליך של החלפה בשלבים. מידע נוסף זמין במאמר בנושא החלפת אישור CA בסיסי.
  • תמיכה ב-TLS 1.3: ב-Apigee hybrid בגרסה 1.17 נוספה תמיכה ב-TLS 1.3, הגרסה העדכנית ביותר של פרוטוקול Transport Layer Security. גרסה TLS 1.3 מציעה לחיצות יד מהירות יותר לחיבור ואבטחה חזקה יותר מגרסאות קודמות של TLS. מידע על הגדרת TLS בשער הכניסה זמין במאמר בנושא הגדרת TLS ו-mTLS בשער הכניסה.
  • תמיכה בשרת proxy קדימה למדיניות AI: ב-Apigee hybrid גרסה 1.17 נוספה תמיכה בשרת proxy קדימה למדיניות AI, כמו Model Armor ומדיניות שמירת נתונים במטמון סמנטי. עכשיו אפשר לנתב שיחות יוצאות שמתבצעות באמצעות המדיניות הזו דרך שרת proxy להעברת HTTP, שלא נתמך בגרסאות קודמות של Apigee hybrid. מידע נוסף מופיע במאמר בנושא הגדרת העברת בקשות (forward proxying) ל-proxy ל-API.
  • תמיכה בנקודת קצה (endpoint) של Private Service Connect ‏(PSC) למטמון סמנטי: ב-Apigee hybrid גרסה 1.17 נוספה תמיכה בנקודת קצה (endpoint) של Private Service Connect ‏(PSC) למטמון סמנטי. עכשיו אפשר להשתמש במדיניות בנושא שמירת נתונים במטמון סמנטי כדי להגיע לשירותי הגיבוי דרך נקודת קצה (endpoint) של Private Service Connect, וכך התנועה נשארת ברשת הפרטית שלכם. מידע נוסף זמין במאמר איך מתחילים להשתמש במדיניות שמירה במטמון סמנטי.

מידע נוסף על התכונות בגרסה 1.17 של Hybrid זמין בנתוני הגרסה של Apigee Hybrid v1.17.1.

דרישות מוקדמות

לפני שמשדרגים לגרסה 1.17 של Hybrid, צריך לוודא שההתקנה עומדת בדרישות הבאות:

לפני שמשדרגים לגרסה 1.17.1 – מגבלות והערות חשובות

  • יכול להיות ששדרוג לגרסה 1.17 של Apigee Hybrid ידרוש השבתה.

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

    מומלץ להתחיל את השדרוג ולשדרג את כל האשכולות בהקדם האפשרי כדי לצמצם את הסיכוי להשפעה על הסביבה הפרודקטיבית. אין הגבלת זמן לגבי השדרוג של כל שאר האשכולות אחרי שדרוג האשכול הראשון. עם זאת, עד שכל האשכולות שנותרו ישודרגו, הגיבוי והשחזור של Cassandra לא יוכלו לפעול עם גרסאות מעורבות. לדוגמה, אי אפשר להשתמש בגיבוי מ-Hybrid 1.16 כדי לשחזר מופע של Hybrid 1.17.

  • אין צורך להשעות באופן מלא את שינויי מישור הניהול במהלך שדרוג. ההשעיות הזמניות הנדרשות לשינויים במישור הניהול מצוינות בהוראות השדרוג שבהמשך.

סקירה כללית של שדרוג לגרסה 1.17.1

ההליכים לשדרוג Apigee hybrid מאורגנים בקטעים הבאים:

  1. הכנות לשדרוג.
  2. איך מתקינים את גרסת זמן הריצה ההיברידית 1.17.1

הכנות לשדרוג לגרסה 1.17

גיבוי של ההתקנה ההיברידית

  1. בהוראות האלה נעשה שימוש במשתנה הסביבה APIGEE_HELM_CHARTS_HOME עבור הספרייה במערכת הקבצים שבה התקנתם את תרשימי Helm. אם צריך, משנים את הספרייה לספרייה הזו ומגדירים את המשתנה באמצעות הפקודה הבאה:

    Linux

    export APIGEE_HELM_CHARTS_HOME=$PWD
    echo $APIGEE_HELM_CHARTS_HOME

    Mac OS

    export APIGEE_HELM_CHARTS_HOME=$PWD
    echo $APIGEE_HELM_CHARTS_HOME

    Windows

    set APIGEE_HELM_CHARTS_HOME=%CD%
    echo %APIGEE_HELM_CHARTS_HOME%
  2. יוצרים עותק גיבוי של ספריית $APIGEE_HELM_CHARTS_HOME/ בגרסה 1.16. אפשר להשתמש בכל תהליך גיבוי. לדוגמה, אפשר ליצור קובץ tar של כל הספרייה באמצעות:
    tar -czvf $APIGEE_HELM_CHARTS_HOME/../apigee-helm-charts-v1.16-backup.tar.gz $APIGEE_HELM_CHARTS_HOME
  3. מגבים את מסד הנתונים של Cassandra לפי ההוראות במאמר בנושא גיבוי ושחזור של Cassandra.
  4. מוודאים שקובצי המפתח ואישור ה-TLS (.crt, .key או .pem) נמצאים בספרייה $APIGEE_HELM_CHARTS_HOME/apigee-virtualhost/.

שדרוג גרסת Kubernetes

בודקים את גרסת פלטפורמת Kubernetes, ואם צריך, משדרגים את פלטפורמת Kubernetes לגרסה שנתמכת על ידי hybrid 1.16 ו-hybrid 1.17. אם אתם צריכים עזרה, תוכלו לעיין במסמכי התיעוד של הפלטפורמה.

מושכים את תרשימי Apigee Helm.

תרשימים של Apigee Hybrid מתארחים ב-Google Artifact Registry:

oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts

כדי להעתיק את כל תרשימי ה-Helm של Apigee hybrid לאחסון המקומי, משתמשים בפקודה pull הבאה:

export CHART_REPO=oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
export CHART_VERSION=1.17.1
helm pull $CHART_REPO/apigee-operator --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-datastore --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-env --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-ingress-manager --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-org --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-redis --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-telemetry --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-virtualhost --version $CHART_VERSION --untar

עריכת kustomization.yaml למרחב שמות מותאם אישית של Apigee

אם מרחב השמות של Apigee הוא לא apigee, עורכים את הקובץ apigee-operator/etc/crds/default/kustomization.yaml ומחליפים את הערך namespace במרחב השמות של Apigee.

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

namespace: APIGEE_NAMESPACE

אם אתם משתמשים ב-apigee כמרחב השמות, אתם לא צריכים לערוך את הקובץ.

  • מתקינים את ה-CRD המעודכן של Apigee:
    1. משתמשים בתכונת ההרצה היבשה של kubectl על ידי הרצת הפקודה הבאה:

      kubectl apply -k  apigee-operator/etc/crds/default/ --server-side --force-conflicts --validate=false --dry-run=server
      
    2. אחרי האימות באמצעות הפקודה להרצה יבשה, מריצים את הפקודה הבאה:

      kubectl apply -k  apigee-operator/etc/crds/default/ \
        --server-side \
        --force-conflicts \
        --validate=false
      
    3. מאמתים את ההתקנה באמצעות הפקודה kubectl get crds:
      kubectl get crds | grep apigee

      הפלט אמור להיראות כך:

      apigeedatastores.apigee.cloud.google.com                    2024-08-21T14:48:30Z
      apigeedeployments.apigee.cloud.google.com                   2024-08-21T14:48:30Z
      apigeeenvironments.apigee.cloud.google.com                  2024-08-21T14:48:31Z
      apigeeissues.apigee.cloud.google.com                        2024-08-21T14:48:31Z
      apigeeorganizations.apigee.cloud.google.com                 2024-08-21T14:48:32Z
      apigeeredis.apigee.cloud.google.com                         2024-08-21T14:48:33Z
      apigeerouteconfigs.apigee.cloud.google.com                  2024-08-21T14:48:33Z
      apigeeroutes.apigee.cloud.google.com                        2024-08-21T14:48:33Z
      apigeetelemetries.apigee.cloud.google.com                   2024-08-21T14:48:34Z
      cassandradatareplications.apigee.cloud.google.com           2024-08-21T14:48:35Z
      
  • בודקים את התוויות בצמתי האשכול. כברירת מחדל, Apigee מתזמן את פודים של נתונים בצמתים עם התווית cloud.google.com/gke-nodepool=apigee-data, ואת פודים של זמן ריצה בצמתים עם התווית cloud.google.com/gke-nodepool=apigee-runtime. אתם יכולים להתאים אישית את תוויות מאגר הצמתים בקובץ overrides.yaml.

    מידע נוסף זמין במאמר בנושא הגדרת מאגרי צמתים ייעודיים.

  • שדרוג cert-manager

    ‫Apigee hybrid v1.17 תומך בגרסאות cert-manager‏ 1.16 עד 1.19. יש שינוי ב-cert-manager 1.18 שיכול לגרום לבעיה בתנועה. בגרסה 1.18 של cert-manager, ערך ברירת המחדל של Certificate.Spec.PrivateKey.rotationPolicy השתנה מ-Never ל-Always. במקרים של שדרוג התקנות של Apigee hybrid, זה עלול לגרום לבעיה בתעבורה. כשמשדרגים ל-Hybrid v1.17 מגרסה קודמת, צריך לערוך את האישור apigee-ca כדי לפצות על השינוי הזה, או להשאיר את הגרסה של cert-manager בגרסה 1.17.x או בגרסה נמוכה יותר.

    לפני שמשדרגים את cert-manager לגרסה 1.18 או 1.19, צריך לבצע את השלבים הבאים כדי לערוך את האישור apigee-ca ולהגדיר את הערך של Certificate.Spec.PrivateKey.rotationPolicy ל-Never.

    1. בודקים את התוכן של אישור apigee-ca כדי לראות אם rotationPolicy מוגדר:
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      מחפשים את הערכים בקטע spec.privateKey בפלט:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          # Note: rotationPolicy would appear here if it is set.
          size: 256
        secretName: apigee-ca
      ...
    2. אם הערך של rotationPolicy לא מוגדר או אם הוא מוגדר ל-Always, צריך לערוך את האישור apigee-ca כדי להגדיר את הערך של rotationPolicy ל-Never:
      1. קודם מבצעים הרצה יבשה:
        kubectl patch Certificate \
          --dry-run=server \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
      2. מבצעים תיקון (patch) של האישור:
        kubectl patch Certificate \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
    3. מוודאים שהערך של rotationPolicy מוגדר עכשיו כ-Never:
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      הפלט אמור להיראות כך:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          rotationPolicy: Never
          size: 256
        secretName: apigee-ca
      ...
    4. משדרגים את cert-manager. הפקודה הבאה תוריד ותתקין את cert-manager v1.19.2:
      kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.19.2/cert-manager.yaml

      רשימת הגרסאות הנתמכות מופיעה במאמר פלטפורמות וגרסאות נתמכות: cert-manager.

    מידע נוסף:

    התקנת זמן הריצה של גרסה 1.17.1 של Apigee Hybrid

    1. אם לא, עוברים לספרייה APIGEE_HELM_CHARTS_HOME. מריצים את הפקודות הבאות מהספרייה הזו.
    2. משדרגים את Apigee Operator/Controller:

      הרצת בדיקה:

      helm upgrade operator apigee-operator/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade operator apigee-operator/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

      אימות ההתקנה של Apigee Operator:

      helm ls -n APIGEE_NAMESPACE
      
      NAME       NAMESPACE       REVISION   UPDATED                                STATUS     CHART                   APP VERSION
      operator   apigee   3          2024-08-21 00:42:44.492009 -0800 PST   deployed   apigee-operator-1.17.1   1.17.1
      

      כדי לוודא שהיא פועלת, בודקים את הזמינות שלה:

      kubectl -n APIGEE_NAMESPACE get deploy apigee-controller-manager
      
      NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
      apigee-controller-manager   1/1     1            1           7d20h
      
    3. משדרגים את מאגר הנתונים של Apigee:

      הרצת בדיקה:

      helm upgrade datastore apigee-datastore/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade datastore apigee-datastore/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

      כדי לוודא ש-apigeedatastore פועל, בודקים את המצב שלו:

      kubectl -n APIGEE_NAMESPACE get apigeedatastore default
      
      NAME      STATE       AGE
      default   running    2d
    4. שדרוג הטלמטריה של Apigee:

      הרצת בדיקה:

      helm upgrade telemetry apigee-telemetry/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade telemetry apigee-telemetry/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

      כדי לוודא שהיא פועלת, בודקים את המצב שלה:

      kubectl -n APIGEE_NAMESPACE get apigeetelemetry apigee-telemetry
      
      NAME               STATE     AGE
      apigee-telemetry   running   2d
    5. שדרוג של Apigee Redis:

      הרצת בדיקה:

      helm upgrade redis apigee-redis/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade redis apigee-redis/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

      כדי לוודא שהיא פועלת, בודקים את המצב שלה:

      kubectl -n APIGEE_NAMESPACE get apigeeredis default
      
      NAME      STATE     AGE
      default   running   2d
    6. שדרוג של Apigee ingress manager:

      הרצת בדיקה:

      helm upgrade ingress-manager apigee-ingress-manager/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade ingress-manager apigee-ingress-manager/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

      כדי לוודא שהיא פועלת, בודקים את הזמינות שלה:

      kubectl -n APIGEE_NAMESPACE get deployment apigee-ingressgateway-manager
      
      NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
      apigee-ingressgateway-manager   2/2     2            2           2d
    7. משדרגים את הארגון ב-Apigee:

      הרצת בדיקה:

      helm upgrade ORG_NAME apigee-org/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE \
        --dry-run=server
      

      שדרוג התרשים:

      helm upgrade ORG_NAME apigee-org/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        -f OVERRIDES_FILE
      

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

      kubectl -n APIGEE_NAMESPACE get apigeeorg
      
      NAME                      STATE     AGE
      apigee-my-org-my-env      running   2d
    8. משדרגים את הסביבה.

      צריך להתקין סביבה אחת בכל פעם. מציינים את הסביבה באמצעות --set env=ENV_NAME.

      הרצת בדיקה:

      helm upgrade ENV_RELEASE_NAME apigee-env/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        --set env=ENV_NAME \
        -f OVERRIDES_FILE \
        --dry-run=server
      
      • ‫ENV_RELEASE_NAME הוא שם שמשמש למעקב אחרי התקנות ושדרוגים של תרשים apigee-env. השם הזה חייב להיות ייחודי ביחס לשמות אחרים של מהדורות Helm בהתקנה. בדרך כלל זהה ל-ENV_NAME. עם זאת, אם לסביבה יש שם זהה לשם של קבוצת הסביבות, צריך להשתמש בשמות שחרור שונים לסביבה ולקבוצת הסביבות, למשל dev-env-release ו-dev-envgroup-release. מידע נוסף על גרסאות ב-Helm זמין במאמר Three big concepts (שלושה מושגים חשובים) במאמרי העזרה של Helm.
      • ‫ENV_NAME הוא שם הסביבה שמשדרגים.
      • ‫OVERRIDES_FILE הוא קובץ ההחלפות החדש שלכם לגרסה 1.17.1

      שדרוג התרשים:

      helm upgrade ENV_RELEASE_NAME apigee-env/ \
        --install \
        --namespace APIGEE_NAMESPACE \
        --set env=ENV_NAME \
        -f OVERRIDES_FILE
      

      כדי לוודא שהיא פועלת, בודקים את המצב של סביבת ה-env המתאימה:

      kubectl -n APIGEE_NAMESPACE get apigeeenv
      
      NAME                          STATE       AGE   GATEWAYTYPE
      apigee-my-org-my-env          running     2d
    9. משדרגים את קבוצות הסביבות (virtualhosts).
      1. צריך לשדרג כל קבוצת סביבות (virtualhost) בנפרד. מציינים את קבוצת הסביבות באמצעות --set envgroup=ENV_GROUP_NAME. חוזרים על הפקודות הבאות לכל קבוצת סביבות שמוזכרת בקובץ overrides.yaml:

        הרצת בדיקה:

        helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --set envgroup=ENV_GROUP_NAME \
          -f OVERRIDES_FILE \
          --dry-run=server
        

        ‫ENV_GROUP_RELEASE_NAME הוא השם שבו התקנתם בעבר את תרשים apigee-virtualhost. בדרך כלל זה ENV_GROUP_NAME.

        שדרוג התרשים:

        helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --set envgroup=ENV_GROUP_NAME \
          -f OVERRIDES_FILE
        
      2. בודקים את המצב של ApigeeRoute ‏ (AR).

        התקנת virtualhosts יוצרת ApigeeRouteConfig ‏ (ARC), שיוצר באופן פנימי ApigeeRoute ‏ (AR) אחרי שהכלי Apigee watcher מאחזר פרטים שקשורים לקבוצת סביבות ממישור הבקרה. לכן, צריך לבדוק שהמצב של רשומת ה-AR התואמת הוא 'פועל':

        kubectl -n APIGEE_NAMESPACE get arc
        
        NAME                                STATE   AGE
        apigee-org1-dev-egroup                       2d
        kubectl -n APIGEE_NAMESPACE get ar
        
        NAME                                        STATE     AGE
        apigee-org1-dev-egroup-123abc               running   2d

    חזרה לגרסה קודמת

    כדי לחזור לגרסה הקודמת, משתמשים בגרסה הישנה יותר של התרשים כדי לחזור אחורה בתהליך השדרוג בסדר הפוך. מתחילים עם apigee-virtualhost, ממשיכים עד apigee-operator ואז מחזירים את ה-CRD.

    1. משחזרים את התרשימים. הפקודות הבאות מניחות שאתם משתמשים בתרשימים מהגרסה הקודמת (v1.16.x).
      1. מריצים את הפקודה הבאה לכל קבוצת סביבות:

        helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          --set envgroup=ENV_GROUP_NAME \
          -f 1.16_OVERRIDES_FILE
        
      2. מריצים את הפקודה הבאה לכל סביבה:

        helm upgrade ENV_RELEASE_NAME apigee-env/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          --set env=ENV_NAME \
          -f 1.16_OVERRIDES_FILE
        
      3. apigee-org:

        helm upgrade ORG_NAME apigee-org/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
      4. apigee-ingress-manager:

        helm upgrade ingress-manager apigee-ingress-manager/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
      5. apigee-redis:

        helm upgrade redis apigee-redis/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
      6. apigee-telemetry:

        helm upgrade telemetry apigee-telemetry/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
      7. apigee-datastore:

        helm upgrade datastore apigee-datastore/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
      8. apigee-operator:

        helm upgrade operator apigee-operator/ \
          --install \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          -f 1.16_OVERRIDES_FILE
        
    2. כדי לבטל את השינויים ב-CRD, מתקינים מחדש את ה-CRD הישנים.
      kubectl apply -k apigee-operator/etc/crds/default/ \
        --server-side \
        --force-conflicts \
        --validate=false