אם אתם משדרגים מגרסה 1.2 או מגרסה ישנה יותר של Apigee Hybrid, אתם צריכים לשדרג קודם לגרסה 1.3 של Hybrid לפני שתשדרגו לגרסה 1.4.4. אפשר לעיין בהוראות בנושא שדרוג Apigee Hybrid לגרסה 1.3.
סקירה כללית של שדרוג לגרסה 1.4.4.
ההליכים לשדרוג Apigee hybrid מאורגנים בקטעים הבאים:
- גיבוי של ההתקנה ההיברידית.
- בודקים את גרסת Kubernetes ומשדרגים אותה לפי הצורך.
- שדרוג ASM.
- מתקינים את גרסת זמן הריצה של Hybrid 1.4.
דרישות מוקדמות
- גרסה 1.3 של Apigee Hybrid. אם אתם משדרגים מגרסה קודמת, תוכלו לעיין בהוראות שדרוג Apigee Hybrid לגרסה 1.3.
שדרוג לגרסה 1.4
- (מומלץ) יוצרים עותק גיבוי של ספריית
$APIGEECTL_HOME/בגרסה 1.3. לדוגמה:tar -czvf $APIGEECTL_HOME/../apigeectl-v1.3-backup.tar.gz $APIGEECTL_HOME - (מומלץ) מגבים את מסד הנתונים של Cassandra לפי ההוראות במאמר בנושא גיבוי ושחזור של Cassandra.
- כדי לשדרג את פלטפורמת Kubernetes, פועלים לפי השלבים הבאים. אם אתם צריכים עזרה, תוכלו להיעזר במאמרי העזרה של הפלטפורמה:
פלטפורמה שדרוג לגרסה GKE 1.18.x GKE on-prem (Anthos) 1.5.x AKS 1.18.x באמצעות Anthos Attached Clusters EKS 1.18.x באמצעות Anthos Attached Clusters - משדרגים את ASM לגרסה 1.6.x.
- מבצעים את השדרוג באמצעות מסמכי התיעוד של ASM:
- GKE on-prem (Anthos): שדרוג של Anthos Service Mesh במקום
- בכל הפלטפורמות האחרות: שדרוג Anthos Service Mesh ב-GKE
- מציינים את יציאות הכניסה הבאות ומגדירים את המאפיין
runAsRootלערךtrueבקובץistio-operator.yaml:… … … ports: - port: 15021 name: status-port targetPort: 15021 - port: 80 name: http2 targetPort: 80 - port: 443 name: https targetPort: 443 … … … values: gateways: istio-ingressgateway: runAsRoot: true - יוצרים משאבי PeerAuthentication CR כדי להשבית את mTLS בקובץ
istio-operator.yaml:--- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: apigee-system namespace: apigee-system spec: mtls: mode: DISABLE --- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: user-namespace namespace: user-namespace spec: mtls: mode: DISABLE - כדי להחיל את השינויים האלה באמצעות
istioctl, פועלים לפי ההוראות שמתוארות במסמכי ה-ASM: - GKE on-prem (Anthos): עדכון מישור הבקרה
- כל הפלטפורמות האחרות: עדכון מישור הבקרה
- מבצעים את השדרוג באמצעות מסמכי התיעוד של ASM:
התקנה של זמן הריצה של Hybrid 1.4.4
- שמירת מספר הגרסה האחרונה במשתנה:
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1) - בודקים שהמשתנה אוכלס במספר גרסה. אם רוצים להשתמש בגרסה אחרת, אפשר לשמור אותה במשתנה סביבה. לדוגמה:
echo $VERSION
1.4.4
מורידים את חבילת ההפצה של מערכת ההפעלה:
Mac 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gzLinux 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gzMac 32 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gzLinux 32 ביט:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz- משנים את השם של ספריית
apigeectl/הנוכחית לשם של ספריית גיבוי. לדוגמה:mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.2/ -
מחלצים את התוכן של קובץ ה-gzip שהורדתם לספריית הבסיס ההיברידית. לדוגמה:
tar xvzf filename.tar.gz -C hybrid-base-directory
cdלספריית הבסיס.-
תוכן ה-tar מורחב כברירת מחדל לספרייה עם הגרסה והפלטפורמה בשם שלה. לדוגמה:
./apigeectl_1.4.4-xxx_linux_64. משנים את שם הספרייה ל-apigeectl:mv apigeectl_1.4.5-xxx_linux_64 apigeectl
- בספרייה new
apigeectl/, מריצים את הפקודותapigeectl init,apigeectl applyו-apigeectl check-ready:- מפעילים את הגרסה ההיברידית 1.4.4:
apigeectl init -f overrides.yaml
כאשר overrides.yaml הוא קובץ overrides.yaml שעבר עריכה.
- בודקים שההפעלה בוצעה בצורה תקינה באמצעות הפקודות הבאות:
apigeectl check-ready -f overrides.yaml
kubectl describe apigeeds -n apigee
הפלט אמור להיראות כך:
Status: Cassandra Data Replication: Cassandra Pod Ips: 10.8.2.204 Cassandra Ready Replicas: 1 Components: Cassandra: Last Successfully Released Version: Revision: v1-f8aa9a82b9f69613 Version: v1 Replicas: Available: 1 Ready: 1 Total: 1 Updated: 1 State: running Scaling: In Progress: false Operation: Requested Replicas: 0 State: running - התחביר של הדגל
apigeectl--dry-runתלוי בגרסה שלkubectlשפועלת. כדי לבדוק את הגרסה שלkubectl:gcloud version
- כדי לבדוק אם יש שגיאות, מריצים הרצה יבשה באמצעות הפקודה שמתאימה לגרסה של
kubectl:
kubectlגרסה 1.17 וגרסאות ישנות יותר:apigeectl apply -f overrides.yaml --dry-run=true
kubectlגרסה 1.18 ואילך:apigeectl apply -f overrides.yaml --dry-run=client
- מחילים את השינויים. בוחרים את ההוראות לסביבות ייצור או לסביבות הדגמה/ניסוי, בהתאם להתקנה.
ייצור
בסביבות ייצור, צריך לשדרג כל רכיב היברידי בנפרד ולבדוק את הסטטוס של הרכיב המשודרג לפני שממשיכים לרכיב הבא.
- מחילים את ההחלפות כדי לשדרג את Cassandra:
apigeectl apply -f overrides.yaml --datastore
- השלמת הבדיקה:
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
כאשר namespace הוא מרחב השמות של Apigee Hybrid.
ממשיכים לשלב הבא רק כשהפודים מוכנים.
- מחילים את ההחלפות כדי לשדרג את רכיבי הטלמטריה ובודקים שהשדרוג הושלם:
apigeectl apply -f overrides.yaml --telemetry
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- מחילים את השינויים כדי לשדרג את הרכיבים ברמת הארגון (MART, Watcher ו-Apigee
Connect) ובודקים שהשדרוג הושלם:
apigeectl apply -f overrides.yaml --org
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- מחילים את השינויים כדי לשדרג את הסביבות. יש שתי אפשרויות:
- סביבה אחרי סביבה: מחילים את השינויים על סביבה אחת בכל פעם ובודקים שהפעולה הושלמה. חוזרים על השלב הזה לכל סביבה:
apigeectl apply -f overrides.yaml --env env_name
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
כאשר env_name הוא שם הסביבה שמשדרגים.
- כל הסביבות בבת אחת: אפשר להחיל את השינויים על כל הסביבות בבת אחת ולבדוק שהפעולה הושלמה:
apigeectl apply -f overrides.yaml --all-envs
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- סביבה אחרי סביבה: מחילים את השינויים על סביבה אחת בכל פעם ובודקים שהפעולה הושלמה. חוזרים על השלב הזה לכל סביבה:
הדגמה/ניסוי
ברוב סביבות ההדגמה או הניסוי, אפשר להחיל את שינויי ברירת המחדל על כל הרכיבים בבת אחת. אם סביבת ההדגמה או הניסוי שלכם גדולה ומורכבת או דומה מאוד לסביבת ייצור, כדאי להשתמש בהוראות לשדרוג סביבות ייצור.
apigeectl apply -f overrides.yaml
- בודקים את הסטטוס:
apigeectl check-ready -f overrides.yaml
- מחילים את ההחלפות כדי לשדרג את Cassandra:
מזל טוב! השדרוג ל-Apigee Hybrid גרסה 1.4.4 בוצע בהצלחה.
- מפעילים את הגרסה ההיברידית 1.4.4: