התהליך הזה מאפשר להרחיב את נפחי האחסון הקבועים שמשמשים את מסד הנתונים של Apigee hybrid Cassandra, כדי להתאים לצרכים גדולים יותר של אחסון בלי ליצור צמתים חדשים רק כדי לספק יותר אחסון.
סקירה כללית
רכיב Apigee hybrid cassandra משתמש בכרכים מתמשכים כדי לאחסן נתונים. הגודל של נפח האחסון הקבוע מוגדר במהלך ההתקנה וההגדרה הראשונית. גודל האחסון הראשוני הזה הוא ערך קבוע ואי אפשר לשנות אותו. לכן, כל צומת חדש שיתווסף לאשכול ישתמש באותו גודל של נפח אחסון קבוע.
אפשר להגדיל את הגודל של נפח האחסון הקבוע הקיים על ידי ביצוע השינויים ישירות ב-Persistent volume Claim, אבל הצמתים החדשים עדיין ישתמשו בגודל הקטן יותר של נפח האחסון הקבוע הראשוני.
אם מסד הנתונים ההיברידי שלכם ב-Cassandra מתקרב לקיבולת האחסון שלו, אתם יכולים להשתמש בהליך הזה כדי להרחיב את הכרכים הקיימים של האחסון הקבוע ולאפשר לצמתים חדשים להרחיב גם את הכרכים שלהם.
הרחבת נפחי אחסון קבועים של Cassandra
- מעדכנים את גודל הנפח לגודל הרצוי:
kubectl -n apigee edit pvc
- בודקים את נפח האחסון המעודכן:
kubectl get pvc -n apigee
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE cassandra-data-apigee-cassandra-default-0 Bound pvc-92234ba7-941b-4dab-82c6-8a5288a2c8d4 100Gi RWO standard 21m cassandra-data-apigee-cassandra-default-1 Bound pvc-6be911fc-91f7-465d-a02e-933428ee10b2 100Gi RWO standard 20m cassandra-data-apigee-cassandra-default-2 Bound pvc-14ba34e4-fd5c-4d59-8413-a331dcad3404 100Gi RWO standard 19m
- מגדירים את מספר הרפליקות ל-
0עבור פריסות שלapigee-controller-managerבמרחב השמותapigee-system:kubectl get deployments -n apigee-system
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 1/1 1 1 28m
kubectl edit deployments -n apigee-system apigee-controller-manager
kubectl get deployments -n apigee-system
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 0/0 0 0 30m
- מחיקת STS ללא מחיקה מדורגת:
kubectl -n apigee delete sts --cascade=false apigee-cassandra
kubectl get sts -n apigee
No resources found in apigee namespace.
- מעדכנים את קובץ הביטולים עם גודל נפח חדש שציינתם כשערכתם את ה-PVC:
cassandra: storage: capacity: 100Gi - מחילים את ההגדרות המעודכנות על האשכול:
../apigeectl apply --datastore -f overrides/overrides.yaml
Parsing file: config/values.yaml Parsing file: overrides/overrides.yaml cleansing older AD's (v1alpha1) istio resources... Invoking "kubectl apply" with YAML config... apigeedatastore.apigee.cloud.google.com/apigee-cassandra unchanged
- עדכון העותקים של פריסת בקר למצב הקודם שלהם (
`1`):kubectl edit deployments -n apigee-system apigee-controller-manager
- בודקים אם גודל האחסון המעודכן מופיע ב-sts החדש שנוצר:
kubectl get sts -n apigee apigee-cassandra -o yaml |grep storage
storage: 100Gi
-
בודקים אם נפח הנתונים של תרמילי C* עודכן לגודל החדש:
kubectl exec -n apigee -it apigee-cassandra-default-0 -- df -h|grep "/opt/apigee/data"
/dev/sdb 99G 69M 99G 1% /opt/apigee/data