אתם יכולים לשנות את הגודל של מופע AlloyDB כדי להתאים את הקיבולת והביצועים של האשכול לדרישות משתנות של עומסי העבודה. התאמת הקיבולת עוזרת לנהל את העלויות ולטפל בעליות חדות בתנועה.
יש כמה דרכים לשנות את גודל המכונות של AlloyDB, והן מסוכמות בהמשך.
| סוג ההתאמה להיקף | Method | אוטומציה | מכונות ראשיות | קריאה של מופעים של מאגר |
|---|---|---|---|---|
| אנכי | שינוי סוג המכונה | גלילה ידנית | נתמך | נתמך |
| אופקי | שינוי מספר הצמתים | ידני ואוטומטי | לא נתמך | נתמך |
לפני שמתחילים
- Google Cloud בפרויקט שבו אתם משתמשים צריך להיות מופעלת גישה ל-AlloyDB.
- צריך להיות לכם אחד מתפקידי ה-IAM האלה בפרויקט Google Cloud שבו אתם משתמשים:
-
roles/alloydb.admin(תפקיד IAM מוגדר מראש של אדמין AlloyDB) -
roles/owner(תפקיד בסיסי ב-IAM מסוג בעלים) -
roles/editor(תפקיד בסיסי ב-IAM עם הרשאת עריכה)
אם לא הוקצו לכם התפקידים האלה, פנו לאדמין הארגוני כדי לבקש גישה.
-
שינוי גודל ידני
בקטע הזה מתוארות שיטות ידניות לשינוי הגודל של מופעי AlloyDB. לדוגמה, אפשר לשנות את קנה המידה של מופע באופן אנכי על ידי שינוי סוג המכונה, ולשנות את קנה המידה של מופע מאגר קריאה באופן אופקי על ידי שינוי מספר הצמתים.
שינוי סוג המכונה של מופע
אפשר לבצע קנה מידה אנכי גם במכונות הראשיות וגם במכונות של מאגר הקריאה, על ידי שינוי סוג המכונה של המכונה, וכך לשנות את ה-vCPU ואת ה-RAM שלה.
המסוף
נכנסים לדף Clusters במסוף Google Cloud .
לוחצים על אשכול בעמודה שם המשאב.
בדף סקירה כללית, עוברים לקטע Instances in your cluster (מופעים באשכול) ולוחצים על Edit primary (עריכת הראשי) או על Edit read pool (עריכת מאגר הקריאה).
בוחרים אחת מסדרות המכונות הבאות:
- C4A (סדרת מכונות מבוססת Google Axion)
- N2 (סדרת מכונות מבוססת x86). זו סדרת המכונות שמוגדרת כברירת מחדל.
- C4 (סדרת מכונות מבוססת-x86)
- Z3 (סדרת מכונות מבוססת Intel Xeon)
בוחרים סוג מכונה.
- C4A תומך ב-1, 4, 8, 16, 32, 48, 64 ו-72 vCPU.
- N2 תומך ב-2, 4, 8, 16, 32, 64, 96 ו-128 vCPU.
- סדרת C4 תומכת ב-4, 8, 16, 24, 32, 48, 96, 144, 192 ו-288 מעבדים וירטואליים.
Z3 תומך ב-8, 14, 16, 22, 32, 44 ו-88 vCPU.
מידע נוסף על השימוש בסדרת המכונות C4A שמבוססת על Axion, כולל סוג המכונה עם vCPU אחד, זמין במאמר שיקולים לשימוש בסדרת המכונות C4A שמבוססת על Axion.
לוחצים על עדכון המופע או על עדכון מאגר הקריאה.
gcloud
כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.
משתמשים בפקודה gcloud alloydb instances
update כדי לשנות את סוג המכונה של המכונה הראשית.
gcloud alloydb instances update INSTANCE_ID \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_IDמחליפים את מה שכתוב בשדות הבאים:
INSTANCE_ID: המזהה של המופע שרוצים לעדכן.
CPU_COUNT: מספר ליבות ה-vCPU מסוג N2 שרוצים להקצות למכונה. ברירת המחדל היא N2. הערכים החוקיים כוללים את האפשרויות הבאות:-
2: 2 vCPUs, 16 GB RAM -
4: 4 vCPUs, 32 GB RAM -
8: 8 vCPUs, 64 GB RAM -
16: 16 vCPUs, 128 GB RAM -
32: 32 vCPUs, 256 GB RAM -
64: 64 vCPUs, 512 GB RAM -
96: 96 vCPU, 768 GB RAM -
128: 128 vCPUs, 864 GB RAM
-
MACHINE_TYPE: אופציונלי. בוחרים מתוך רשימה של סוגי מכונות נתמכים, כמוn2-highmem-4, c4-highmem-4-lssdאוc4a-highmem-4-lssd. מידע נוסף זמין במאמר בחירת סוג מכונה ב-AlloyDB.כשמשתמשים ב-
MACHINE_TYPEוב-CPU_COUNTביחד, הערכים ב-CPU_COUNTוב-MACHINE_TYPEחייבים להיות זהים, אחרת תופיע שגיאה.
REGION_ID: האזור שבו המכונה ממוקמת.
CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.
PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.
אם הפקודה מחזירה הודעת שגיאה שכוללת את הביטוי invalid cluster state MAINTENANCE, המשמעות היא שהאשכול עובר תחזוקה שגרתית. הפעולה הזו תמנע באופן זמני את ההגדרה מחדש של המופע.
מריצים שוב את הפקודה אחרי שהאשכול חוזר למצב READY.
כדי לבדוק את סטטוס האשכול, אפשר לעיין במאמר בנושא הצגת פרטי האשכול.
עדכונים מהירים יותר של סוגי מכונות
כדי לעדכן את סוג המכונה מהר יותר, משתמשים באפשרות FORCE_APPLY עם הפקודה gcloud beta alloydb instances update.
gcloud beta alloydb instances update INSTANCE_ID \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--update-mode=FORCE_APPLYהמכונה מושבתת למשך דקה אחת בערך.
סוג המכונה של מופע משתנה אחרי 10 עד 15 דקות.
שינוי מספר הצמתים במופע של מאגר קריאה
ב-AlloyDB אפשר לשנות את מספר הצמתים במכונה של מאגר קריאה בלי להשבית את המכונה. כשמגדילים את מספר הצמתים, החיבורים של הלקוחות לא מושפעים.
כשמפחיתים את מספר הצמתים, כל הלקוחות שמחוברים לצומת שמושבת יכולים להתחבר מחדש לצמתים האחרים באמצעות נקודת הקצה של המופע.
המסוף
נכנסים לדף Clusters במסוף Google Cloud .
לוחצים על אשכול בעמודה שם המשאב.
בדף סקירה כללית, עוברים לקטע Instances in your cluster (מופעים באשכול) ולוחצים על Edit read pool (עריכת מאגר קריאה).
הפעולה תהיה זמינה שוב אחרי שהסטטוס ישתנה למוכן.בשדה Node count (מספר הצמתים), מזינים את מספר הצמתים.
לוחצים על עדכון מאגר הקריאה.
gcloud
כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.
כדי לשנות את מספר הצמתים במכונה של מאגר לקריאה, משתמשים בפקודה gcloud alloydb instances
update.
gcloud alloydb instances update INSTANCE_ID \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
INSTANCE_ID: המזהה של מופע מאגר הקריאה.
NODE_COUNT: מספר הצמתים במופע של מאגר הקריאה. מציינים מספר בין1ל-20, כולל. שימו לב: בכל המופעים של מאגר הקריאה באשכול לא יכולים להיות יותר מ-20 צמתים.
REGION_ID: האזור שבו נמצאת המכונה.
CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.
PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.
אם הפקודה מחזירה הודעת שגיאה שכוללת את הביטוי invalid cluster state MAINTENANCE, המשמעות היא שהאשכול עובר תחזוקה שגרתית. הפעולה הזו תמנע באופן זמני את ההגדרה מחדש של המופע.
מריצים שוב את הפקודה אחרי שהאשכול חוזר למצב READY. כדי לבדוק את הסטטוס של האשכול, אפשר לעיין במאמר הצגת פרטי האשכול.
שינוי קנה מידה אוטומטי של מופע של מאגר קריאה
התאמה אוטומטית לעומס (autoscaling) של מאגר קריאה ב-AlloyDB מאפשרת לשנות באופן אוטומטי ואדפטיבי את מספר צמתי הקריאה בהתאם לשימוש במשאבים בזמן אמת. כך תוכלו להתמודד עם שינויים בשימוש ולהקטין את ההוצאות.
אפשר להגדיר התאמה אוטומטית לעומס באמצעות המדיניות הבאה:
- על בסיס ניצול המעבד: משנה את מספר הצמתים בהתאם לניצול המעבד.
- מבוסס על תזמון: משנה את מספר הצמתים למספר מינימלי במהלך חלון זמן מוגדר.
אפשר להשתמש במדיניות הזו ביחד. כמה מדיניות פעילות, המידרוג האוטומטי בוחר את המדיניות שממליצה על המספר הגבוה ביותר של צמתים.
מגבלות
יש הגבלות על המידרוג האוטומטי של מאגר הקריאה:
- חלוקת עומס לחיבורים ארוכי טווח: כדי ליצור חלוקה שווה של תנועה ולנצל באופן מלא את הקיבולת הנוספת שמתקבלת מהתאמה אוטומטית לעומס, מומלץ ליצור חיבורי לקוח חדשים. הכלי להתאמת קנה מידה אוטומטית לא מפסיק חיבורים קיימים לטווח ארוך כשהוא מוסיף צמתים חדשים, ולכן התנועה מהחיבורים האלה לא מנותבת לצמתים החדשים.
- חימום מטמון לצמתים חדשים: כשהמידרוג האוטומטי מוסיף צמתים חדשים, יכול להיות שיחלפו כמה דקות עד שהמטמון שלהם יתחמם והם יגיעו לביצועי שיא של שאילתות.
הפעלת התאמה אוטומטית לעומס במופע חדש של מאגר לקריאה
אפשר להפעיל ולהגדיר התאמה אוטומטית לעומס כשיוצרים מופע של מאגר קריאה באמצעות מדיניות שמבוססת על מעבד, מדיניות שמבוססת על לוח זמנים או שילוב של שתיהן.
יצירת מופע של מאגר קריאה עם מדיניות מבוססת-CPU
כדי ליצור מופע של מאגר קריאה עם מדיניות התאמה אוטומטית לעומס שמבוססת על ניצול יעד של מעבד, מריצים את הפקודה הבאה:
gcloud alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-target-cpu-usage=TARGET_CPU_USAGEמחליפים את מה שכתוב בשדות הבאים:
INSTANCE_ID: המזהה של מופע מאגר הקריאה.
READ_POOL: מציין את סוג המופע.
NODE_COUNT: מספר הצמתים במופע של מאגר הקריאה. מציינים מספר בין1ל-20, כולל. הערה: אי אפשר להשתמש ביותר מ-20 צמתים בכל המופעים של מאגר הקריאה באשכול.REGION_ID:האזור שבו המופע ממוקם.
CLUSTER_ID: המזהה של האשכול שבו המכונה ממוקמת.
PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.
MAX_NODE_COUNT: המספר המקסימלי של הצמתים שהמידרוג האוטומטי יכול ליצור במופע של מאגר הקריאה. המספר הכולל של הצמתים בכל המופעים של מאגר הקריאה באשכול יחיד לא יכול לעלות על 20.
TARGET_CPU_USAGE: ניצול המעבד (CPU) היעד של מופע מאגר הקריאה, שמוצג כערך עשרוני בין 0.0 ל-1.0. לדוגמה, 0.7 ל-70%.
יצירת מופע של מאגר לקריאה עם מדיניות מבוססת-תזמון
כדי ליצור מופע של מאגר קריאה עם מדיניות של התאמה אוטומטית לעומס שמבוססת על לוח זמנים, שמגדירה מספר מינימלי של צמתים לחלון זמן ספציפי, מריצים את הפקודה הבאה:
gcloud alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-set-schedule=SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-time-zone=TIME_ZONE \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNT \
--autoscaler-schedule-description="DESCRIPTION"מחליפים את מה שכתוב בשדות הבאים:
MAX_NODE_COUNT: המספר המקסימלי של הצמתים שהמידרוג האוטומטי יכול ליצור במופע של מאגר הקריאה. המספר הכולל של הצמתים בכל המופעים של מאגר הקריאה באשכול יחיד לא יכול לעלות על 20.
SCHEDULE_NAME: שם ייחודי ללוח הזמנים של שינוי הגודל.
CRON_EXPRESSION: לוח הזמנים בפורמט cron שמציין את שעת ההתחלה של אירוע שינוי הגודל.
DURATION_SECONDS: משך הזמן בשניות שבו לוח הזמנים נשאר פעיל אחרי שהוא מתחיל. אחרי התקופה הזו, המופע מצטמצם למספר הצמתים שנקבע על ידי מדיניות אחרת או על ידי ההגדרה המקורית שלו.
TIME_ZONE: אזור זמן אופציונלי ללוח הזמנים. לדוגמה,America/Los_Angeles.
MIN_NODE_COUNT: המספר המינימלי של הצמתים שאליהם משנה המידרוג האוטומטי את המופע של מאגר הקריאה בזמן שהתזמון פעיל.
DESCRIPTION: תיאור טקסט אופציונלי של לוח הזמנים.
יצירת מכונה של מאגר קריאה עם מדיניות מבוססת-CPU ומבוססת-תזמון
כדי ליצור מופע של מאגר קריאה עם מדיניות של התאמה אוטומטית לעומס שמבוססת על מעבד ועל לוח זמנים, מריצים את הפקודה הבאה:
gcloud alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-target-cpu-usage=TARGET_CPU_USAGE \
--autoscaler-set-schedule=SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-time-zone=TIME_ZONE \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNT \
--autoscaler-schedule-description="DESCRIPTION"מחליפים את TARGET_CPU_USAGE בערך של ניצול ה-CPU של מופע מאגר הקריאה, שמוצג כערך עשרוני בין 0.0 ל-1.0.
תיאור של משתני המיקום שמשמשים בפקודה הזו מופיע במאמרים יצירת מופע של מאגר קריאה עם מדיניות מבוססת-CPU ויצירת מופע של מאגר קריאה עם מדיניות מבוססת-לוח זמנים.
הפעלה או עדכון של שינוי גודל אוטומטי במופע קיים של מאגר לקריאה
אפשר להפעיל, להשבית או לשנות את הגדרות ההתאמה האוטומטית לעומס (automatic scaling) במופע קיים של מאגר לקריאה.
כדי להפעיל לראשונה את התאמה אוטומטית לעומס במכונה קיימת, או כדי לעדכן מדיניות קיימת, משתמשים בפקודה gcloud alloydb instances update. לדוגמה, כדי לעדכן את ניצול המעבד של היעד, מריצים את הפקודה:
gcloud alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--autoscaler-target-cpu-usage=NEW_TARGET_CPU_USAGEמחליפים את NEW_TARGET_CPU_USAGE בערך החדש של ניצול ה-CPU של היעד שרוצים להגדיר למופע של מאגר הקריאה, כערך עשרוני בין 0.0 ל-1.0.
כדי להוסיף תזמון שני להגדרה קיימת, מריצים את פקודת העדכון עם שם חדש לתזמון. אם השם של לוח הזמנים כבר קיים, הפקודה מעדכנת את לוח הזמנים הקיים. אחרת, ייווצר לוח זמנים חדש.
gcloud alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--autoscaler-set-schedule=NEW_SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNTמחליפים את NEW_SCHEDULE_NAME בשם הייחודי של תזמון ההרחבה החדש או המעודכן. אם השם שצוין תואם ללוח זמנים קיים, הפקודה מעדכנת את ההגדרות של לוח הזמנים הזה. אם השם לא קיים, הפקודה יוצרת לוח זמנים חדש עם השם הזה.
איך מתבצעת הערכה של מדיניות שינוי גודל אוטומטי
כאשר כמה מדיניות של התאמה אוטומטית לעומס פעילות, המידרוג האוטומטי מעריך כל מדיניות ובוחר את המדיניות שממליצה על המספר הגבוה ביותר של צמתים.
לדוגמה, נניח שיש לכם הגדרה עם שתי מדיניות:
- מדיניות מבוססת-CPU עם יעד של 60% ניצול.
- מדיניות מבוססת-לוח זמנים שדורשת מינימום של שלושה צמתים בימי חול בין השעות 8:00 ל-17:00.
אם מדובר ביום חול בצהריים והשימוש ב-CPU הוא 80%, יכול להיות שהמדיניות שמבוססת על CPU תמליץ על הגדלת הקיבולת עד לארבעה צמתים, בעוד שהמדיניות שמבוססת על לוח זמנים תמליץ על שלושה. המידרוג האוטומטי משנה את גודל המופע לארבעה צמתים.
השבתת התאמה אוטומטית לעומס
כדי להשבית את שינוי הגודל האוטומטי, משתמשים בדגל no-enable-autoscaler. הפעולה הזו מאפסת את מאגר הקריאה למספר הצמתים המקורי שלו לפני שהופעלה ההתאמה האוטומטית לעומס.
gcloud alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--no-enable-autoscaler