שינוי קנה מידה של מכונה

אתם יכולים לשנות את קנה המידה של מכונה ב-AlloyDB כדי להתאים את הקיבולת והביצועים של האשכול לדרישות המשתנות של עומס העבודה. התאמה לעומס עוזרת לנהל את העלויות ולטפל בעליות חדות בתנועה.

כדי לשנות את קנה המידה באופן אנכי (שינוי של vCPU ו-RAM), צריך לשנות את סוג המכונה של מכונה ראשית או של מכונה במאגר קריאה. כדי לשנות את קנה המידה באופן אופקי, משנים את מספר הצמתים במכונה של מאגר קריאה. אפשר לנהל את ההתאמה לעומס (scaling) גם בצורה אנכית וגם בצורה אופקית באמצעות תהליכים ידניים. אפשר גם לנהל את ההתאמה האופקית לעומס באופן אוטומטי, על ידי הפעלת התאמה אוטומטית לעומס של מאגר הקריאה.

אפשר לשנות את הגודל של מכונות AlloyDB בדרכים הבאות.

סוג ההתאמה לעומס (scaling) ‏Method אוטומציה מכונות ראשיות קריאת מופעים של מאגרים
אנכי שינוי סוג המכונה גלילה ידנית נתמך נתמך
אופקי שינוי מספר הצמתים ידני ואוטומטי לא נתמך נתמך

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

  • הפרויקט ב- Google Cloud שבו אתם משתמשים צריך להיות מוגדר עם גישה ל-AlloyDB.
  • בפרויקט ב- Google Cloud שבו אתם משתמשים, צריך להיות לכם אחד מתפקידי ה-IAM הבאים:
    • ‫roles/alloydb.admin (תפקיד IAM מוגדר מראש של אדמין ב-AlloyDB)
    • ‫roles/owner (תפקיד ה-IAM הבסיסי "בעלים")
    • ‫roles/editor (תפקיד העריכה הבסיסי ב-IAM)

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

שינוי ידני של קנה המידה של מכונה

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

שינוי קנה המידה של סוג המכונה של המכונה הווירטואלית

כדי לשנות את קנה המידה האנכי של מכונה במאגר ראשי או במאגר לקריאה בלבד, משנים את סוג המכונה, וכך משתנים מספר ה-vCPU והזיכרון שלה. שינוי סוג המכונה מאפשר לשנות את גודל המכונה למספר אחר של מעבדי vCPU באותה סדרת מכונות, או להעביר אותה לסדרת מכונות אחרת. מכונות ראשיות ומכונות של מאגר קריאה באותו אשכול יכולות להשתמש בסדרות שונות של מכונות. כל הצמתים במכונה אחת של מאגר קריאה משתמשים באותה סדרת מכונות ובאותו סוג מכונה. מידע נוסף זמין במאמר הגדרת סדרת מכונות.

כשמשנים את סוג המכונה של מאגר לקריאה בלבד, AlloyDB יוצרת מכונות וירטואליות חלופיות עם סוג המכונה המטורגט. אחרי שהמכונות הווירטואליות החלופיות מוכנות, AlloyDB מחליף את המכונות הווירטואליות הקיימות בלי לשנות את כתובת ה-IP של המכונה במאגר לקריאה בלבד. אם יצירת המכונות הווירטואליות החלופיות נכשלת בגלל חוסר זמינות של משאבים, כמו מחסור במלאי, AlloyDB מבטל את הפעולה עם שגיאה ומשאיר את המכונות הווירטואליות הקיימות של מאגר הקריאה פועלות ללא הפרעה.

המסוף

  1. נכנסים לדף Clusters במסוף Google Cloud .

    כניסה לדף Clusters

  2. לוחצים על אשכול בעמודה Resource Name.

  3. בדף Overview, בקטע Instances in your cluster לוחצים על Edit primary או על Edit read pool.

  4. בוחרים אחת מסדרות המכונות הבאות:

    • ‫C4A (סדרת מכונות שמבוססת על Google Axion)
    • ‫N2 (סדרת מכונות שמבוססת על x86). זו סדרת המכונות שמוגדרת כברירת מחדל.
    • ‫C4 (סדרת מכונות שמבוססת על x86)
    • ‫Z3 (סדרת מכונות שמבוססות על Intel Xeon)
  5. בוחרים סוג מכונה.

    • ב-C4A יש תמיכה ב-1, 2, 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 מעבדי vCPU.
    • ב-Z3 יש תמיכה ב-8,‏ 14,‏ 16,‏ 22,‏ 32,‏ 44 ו-88 מעבדי vCPU.

    מידע נוסף על השימוש בסדרת המכונות C4A שמבוססות על Axion, כולל סוג המכונה עם מעבד וירטואלי אחד, זמין במאמר שיקולים לשימוש בסדרת המכונות C4A שמבוססות על Axion.

  6. לוחצים על Update instance או על Update read pool.

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: מספר המעבדים הווירטואליים שרוצים להקצות למכונה. צריך לציין את הדגל --cpu-count, את הדגל --machine-type או את שניהם. אם מציינים רק את הדגל --cpu-count, המכונה משתמשת בסדרת המכונות N2 עם אחד מהערכים התקינים הבאים:

    • ‫2: ‏2 vCPUs, ‏16GB RAM
    • ‫4: ‏4 מעבדי vCPU, ‏32GB RAM
    • ‫8: ‏8 מעבדי vCPU, ‏64GB RAM
    • 16: ‏16 מעבדי vCPU, ‏128GB RAM
    • ‫32: ‏32 מעבדי vCPU, ‏256GB RAM
    • ‫64: ‏64 vCPU, ‏512GB RAM
    • ‫96: ‏96 מעבדי vCPU, ‏768GB RAM
    • ‫128: ‏128 מעבדי vCPU, ‏864GB RAM

  • ‫MACHINE_TYPE: סוג מכונה נתמך למכונה, כמו n2-highmem-4,‏ c4-highmem-4-lssd,‏ c4a-highmem-4-lssd או z3-highmem-14-standardlssd. למידע נוסף על סוגי המכונות הנתמכים, קראו את המאמר בחירת סוג מכונה של AlloyDB.

    אם מציינים גם את הדגל --machine-type וגם את הדגל --cpu-count, מספר ה-vCPU חייב להיות זהה, אחרת הפקודה תחזיר שגיאה.

  • ‫REGION_ID: האזור של המכונה.

  • ‫CLUSTER_ID: המזהה של האשכול שמכיל את המכונה.

  • ‫PROJECT_ID: מזהה הפרויקט שמכיל את האשכול.

אם הפקודה מחזירה הודעת שגיאה שכוללת את הביטוי invalid cluster state MAINTENANCE, סימן שהאשכול עובר תחזוקה שוטפת. הפעולה הזו מונעת באופן זמני הגדרה מחדש של המכונה. מריצים שוב את הפקודה אחרי שהאשכול חוזר למצב READY. כדי לבדוק את סטטוס האשכול, קראו את המאמר הצגת פרטי האשכול.

עדכונים לגבי סוגי מכונות של Accelerate

כדי לעדכן את סוג המכונה מהר יותר, משתמשים באפשרות 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 דקות.

Terraform

כדי לשנות את סוג המכונה של מכונה וירטואלית, מעדכנים את הבלוק machine_config במשאב google_alloydb_instance.

resource "google_alloydb_instance" "default" {
  cluster       = google_alloydb_cluster.default.name
  instance_id   = "alloydb-instance"
  instance_type = "PRIMARY" # or "READ_POOL"

  machine_config {
    cpu_count = 4
  }
}

שינוי מספר הצמתים של מכונה במאגר לקריאה בלבד

ב-AlloyDB אפשר לשנות את מספר הצמתים במכונה של מאגר קריאה בלי זמן השבתה ברמת המכונה. כשמגדילים את מספר הצמתים, החיבורים של הלקוחות לא מושפעים.

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

המסוף

  1. נכנסים לדף Clusters במסוף Google Cloud .

    כניסה לדף Clusters

  2. לוחצים על אשכול בעמודה Resource Name.

  3. בדף Overview, עוברים לקטע Instances in your cluster ולוחצים על Edit read pool.

  4. בשדה Node count, מזינים את מספר הצמתים.

  5. לוחצים על Update read pool.

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. כדי לבדוק את סטטוס האשכול, קראו את המאמר הצגת פרטי האשכול.

Terraform

כדי לשנות את מספר הצמתים במכונה של מאגר קריאה, מעדכנים את השדה node_count בבלוק read_pool_config של המשאב google_alloydb_instance.

resource "google_alloydb_instance" "default" {
  cluster       = google_alloydb_cluster.default.name
  instance_id   = "alloydb-read-pool-instance"
  instance_type = "READ_POOL"

  read_pool_config {
    node_count = 3
  }
}

הגדרת התאמה לעומס (autoscaling) של מאגר קריאה

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

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

  • מבוסס על ניצול המעבד (CPU): משנה את מספר הצמתים בהתאם ליעד של ניצול המעבד.
  • ‫Connections-count-based: משנה את מספר הצמתים בהתאם למספר החיבורים שהוגדר כיעד.
  • מבוסס-לוח זמנים: משנה את מספר הצמתים למספר מינימלי במהלך חלון זמן מסוים.

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

מגבלות

למידרוג האוטומטי של קבוצת המאגרים לקריאה יש את המגבלות הבאות:

  • חלוקת עומסים בחיבורים ארוכי-טווח: כדי לחלק את התנועה באופן שווה ולהשתמש באופן מלא בקיבולת שנוספה מההתאמה האוטומטית לעומס, מומלץ ליצור חיבורים חדשים של לקוחות. כשהמידרוג האוטומטי מוסיף צמתים חדשים, הוא לא סוגר חיבורים קיימים לטווח ארוך, ולכן תעבורת הנתונים מהחיבורים האלה לא מנותבת לצמתים החדשים שנוספו.
  • חימום מטמון לצמתים חדשים: כשהמידרוג האוטומטי מוסיף צמתים חדשים, יכול להיות שיעברו כמה דקות עד שהמטמון שלהם יתחמם והם יגיעו לביצועי שיא של שאילתות.

הפעלת התאמה אוטומטית לעומס (scaling) של מאגר קריאה במכונה חדשה של מאגר קריאה

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

יצירת מכונה של מאגר קריאה עם מדיניות מבוססת-מעבד (CPU)

כדי ליצור מכונה של מאגר קריאה עם מדיניות התאמה אוטומטית לעומס שמבוססת על יעד של שימוש ב-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-cool-down-period-seconds=COOLDOWN_PERIOD \
    --autoscaler-target-cpu-usage=TARGET_CPU_USAGE \
    {--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}

מחליפים את מה שכתוב בשדות הבאים:

  • ‫INSTANCE_ID: המזהה של המכונה במאגר לקריאה בלבד.

  • ‫NODE_COUNT: המספר המינימלי של צמתים שהמידרוג האוטומטי יכול ליצור במכונה של מאגר הקריאה. צריך לציין מספר בין 1 ל-20, כולל. אי אפשר להוסיף יותר מ-20 צמתים בכל המכונות של מאגר הקריאה באשכול.

  • ‫REGION_ID: האזור שבו נמצאת המכונה.

  • ‫CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.

  • ‫PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.

  • ‫MAX_NODE_COUNT: המספר המקסימלי של צמתים שהמידרוג האוטומטי יכול ליצור במכונה של מאגר הקריאה. המספר הכולל של הצמתים בכל המכונות של מאגר הקריאה באשכול אחד לא יכול להיות גדול מ-20.

  • ‫COOLDOWN_PERIOD: משך הזמן בשניות ש-AlloyDB ממתין לפני שהוא מביא בחשבון את השימוש במשאבים של המכונה במאגר הקריאה באלגוריתם של ההתאמה לעומס. ערך ברירת המחדל הוא 300 שניות.

  • ‫TARGET_CPU_USAGE: יעד ניצול המעבד (CPU) של המכונה במאגר לקריאה בלבד, מבוטא כערך עשרוני בין 0.0 ל-1.0. לדוגמה, 0.7 עבור 70%.

  • ‫CPU_COUNT: מספר המעבדים הווירטואליים מסוג N2 שרוצים להקצות למכונה. צריך לציין --cpu-count או --machine-type.

  • ‫MACHINE_TYPE: בחירה מתוך רשימה של סוגי מכונות נתמכים, כמו n2-highmem-4,‏ c4-highmem-4-lssd או c4a-highmem-4-lssd. למידע נוסף, קראו את המאמר בחירת סוג מכונה של AlloyDB.

יצירת מכונה של מאגר קריאה עם מדיניות שמבוססת על מספר החיבורים

כדי לקבוע איזה ערך להגדיר לדגל --autoscaler-target-connections-count, אפשר לראות את מספר החיבורים הנוכחי למכונה של מאגר קריאה במסוף Google Cloud :

  1. נכנסים לדף Clusters במסוף Google Cloud .

    כניסה לדף Clusters

  2. לוחצים על אשכול בעמודה Resource Name כדי לפתוח את הדף Overview שלו.

  3. בתפריט Chart, בוחרים באפשרות Number of connections וצופים במספר החיבורים של המכונה של מאגר הקריאה במקרא של התרשים.

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

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-cool-down-period-seconds=COOLDOWN_PERIOD \
    --autoscaler-target-connections-count=TARGET_CONNECTIONS_COUNT \
    {--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}

מחליפים את מה שכתוב בשדות הבאים:

  • ‫INSTANCE_ID: המזהה של המכונה במאגר לקריאה בלבד.

  • ‫READ_POOL: מציין את סוג המכונה.

  • ‫NODE_COUNT: המספר המינימלי של צמתים שהמידרוג האוטומטי יכול ליצור במכונה של מאגר הקריאה. צריך לציין מספר בין 1 ל-20, כולל. אי אפשר להוסיף יותר מ-20 צמתים בכל המכונות של מאגר הקריאה באשכול.

  • ‫REGION_ID: האזור שבו נמצאת המכונה.

  • ‫CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.

  • ‫PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.

  • MAX_NODE_COUNT: המספר המקסימלי של צמתים שהמידרוג האוטומטי יכול ליצור במכונה של מאגר הקריאה. המספר הכולל של הצמתים בכל המכונות של מאגר הקריאה באשכול אחד לא יכול להיות יותר מ-20.

  • ‫COOLDOWN_PERIOD: משך הזמן בשניות ש-AlloyDB ממתין לפני שהוא מביא בחשבון את השימוש במשאבים של המכונה במאגר הקריאה באלגוריתם של ההתאמה לעומס. ערך ברירת המחדל הוא 300 שניות.

  • ‫TARGET_CONNECTIONS_COUNT: מספר החיבורים הרצוי למכונה של מאגר הקריאה.

  • ‫CPU_COUNT: מספר המעבדים הווירטואליים מסוג N2 שרוצים להקצות למכונה. צריך לציין את --cpu-count או את --machine-type.

  • ‫MACHINE_TYPE: בחירה מתוך רשימה של סוגי מכונות נתמכים, כמו n2-highmem-4,‏ c4-highmem-4-lssd או c4a-highmem-4-lssd. מידע נוסף זמין במאמר בחירת סוג מכונה ב-AlloyDB.

יצירת מכונה של מאגר קריאה עם מדיניות מבוססת-לוח זמנים

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

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-cool-down-period-seconds=COOLDOWN_PERIOD \
    --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" \
    {--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}

מחליפים את מה שכתוב בשדות הבאים:

  • ‫MAX_NODE_COUNT: המספר המקסימלי של צמתים שהמידרוג האוטומטי יכול ליצור במכונה של מאגר הקריאה. המספר הכולל של הצמתים בכל המכונות של מאגר הקריאה באשכול אחד לא יכול להיות גדול מ-20.

  • ‫COOLDOWN_PERIOD: משך הזמן בשניות ש-AlloyDB ממתין לפני שהוא מביא בחשבון את השימוש במשאבים של מכונת מאגר הקריאה באלגוריתם של ההתאמה האוטומטית לעומס. ערך ברירת המחדל הוא 300 שניות.

  • ‫SCHEDULE_NAME: שם ייחודי ללוח הזמנים של ההתאמה לעומס.

  • ‫CRON_EXPRESSION: לוח הזמנים בפורמט cron שמציין את שעת ההתחלה של אירוע ההתאמה לעומס.

  • ‫DURATION_SECONDS: משך הזמן בשניות שבו לוח הזמנים נשאר פעיל אחרי שהוא מתחיל. אחרי התקופה הזו, המכונה מצמצמת את מספר הצמתים בהתאם לכללי מדיניות אחרים או להגדרה המקורית שלה.

  • ‫TIME_ZONE: אזור זמן אופציונלי לתזמון. לדוגמה, America/Los_Angeles.

  • ‫MIN_NODE_COUNT: המספר המינימלי של הצמתים שהמידרוג האוטומטי מוסיף למכונה של מאגר הקריאה, בזמן שהתזמון פעיל.

  • ‫DESCRIPTION: תיאור טקסט אופציונלי של לוח הזמנים.

  • ‫CPU_COUNT: מספר המעבדים הווירטואליים מסוג N2 שרוצים להקצות למכונה. צריך לציין --cpu-count או --machine-type.

  • ‫MACHINE_TYPE: בחירה מתוך רשימה של סוגי מכונות נתמכים, כמו n2-highmem-4,‏ c4-highmem-4-lssd או c4a-highmem-4-lssd. למידע נוסף, קראו את המאמר בחירת סוג מכונה של 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-cool-down-period-seconds=COOLDOWN_PERIOD \
    --autoscaler-target-cpu-usage=TARGET_CPU_USAGE \
    --autoscaler-target-connections-count=TARGET_CONNECTIONS_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" \
    {--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}

לתיאור של ה-placeholders שבהם משתמשים בפקודה הזו, ראו יצירת מכונה של מאגר קריאה עם מדיניות שמבוססת על מעבד (CPU), יצירת מכונה של מאגר קריאה עם מדיניות שמבוססת על מספר החיבורים ויצירת מכונה של מאגר קריאה עם מדיניות שמבוססת על לוח זמנים.

הפעלה או עדכון של התאמה אוטומטית לעומס (autoscaling) במכונה קיימת של מאגר קריאה

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

כדי להפעיל התאמה אוטומטית לעומס (automatic scaling) בפעם הראשונה במכונה קיימת, או כדי לעדכן מדיניות קיימת, משתמשים בפקודה gcloud alloydb instances update. לדוגמה, כדי לעדכן את יעד ניצול המעבד (CPU), מריצים את הפקודה:

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --enable-autoscaler \
    --autoscaler-target-cpu-usage=NEW_TARGET_CPU_USAGE

מחליפים את NEW_TARGET_CPU_USAGE בניצול היעד החדש של המעבד שרוצים להגדיר למכונה של מאגר הקריאה, מבוטא כערך עשרוני בין 0.0 ל-1.0.

כדי לעדכן את מספר החיבורים ליעד, מריצים את הפקודה הבאה:

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --enable-autoscaler \
    --autoscaler-target-connections-count=NEW_TARGET_CONNECTIONS_COUNT

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

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

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --enable-autoscaler \
    --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 בשם הייחודי של לוח הזמנים החדש או המעודכן להתאמה לעומס. אם השם שציינתם תואם ללוח זמנים קיים, הפקודה מעדכנת את ההגדרות של לוח הזמנים הזה. אם השם לא קיים, הפקודה יוצרת לוח זמנים חדש עם השם הזה.

איך מתבצעת הערכת כללי מדיניות של התאמה אוטומטית לעומס (autoscaling)

כשיש כמה כללי מדיניות פעילים של התאמה אוטומטית לעומס, הכלי להתאמה אוטומטית לעומס מעריך כל מדיניות ובוחר את זו שממליצה על המספר הגבוה ביותר של צמתים.

לדוגמה, נניח שיש הגדרה עם שתי כללי מדיניות:

  • מדיניות מבוססת-מעבד עם יעד ניצול של 60%.
  • מדיניות מבוססת-לו"ז שדורשת מינימום של שלושה צמתים בימי חול בין השעות 08:00 ל-17:00.

אם מדובר ביום חול בצהריים והשימוש ב-CPU הוא 80%, המדיניות שמבוססת על CPU עשויה להמליץ על הגדלת קנה המידה לארבעה צמתים, בעוד שהמדיניות שמבוססת על לוח זמנים ממליצה על שלושה. המידרוג האוטומטי משנה את קנה המידה של המכונה לארבעה צמתים.

התאמה אוטומטית לעומס (Autoscaling) ב-

בנוסף להתאמה אוטומטית לעומס של המכונה של מאגר הקריאה, AlloyDB גם מצמצם את המכונה באופן אוטומטי כשלא צריך כל כך הרבה צומתי קריאה כדי לתמוך בתהליך העבודה. כשמתבצעת התאמה אוטומטית לעומס (autoscaling) של מספר המכונות, המערכת של AlloyDB מצמצמת אופקית (scales in) את מספר הצמתים לערך שהגדרתם בשדה --read-pool-node-count.

כדי לקבוע מתי לצמצם אופקית את מאגר הקריאה, מערכת AlloyDB ממתינה עד שתזמון ההתאמה האוטומטית לעומס לא יהיה פעיל, או עד ששיעור ניצול המעבד או מספר החיבורים יהיו נמוכים מהיעד במשך 10 דקות.

למידע נוסף על התאמה אוטומטית לעומס, קראו את המאמר הסבר על ההחלטות של המידרוג האוטומטי.

השבתת ההתאמה האוטומטית לעומס

כדי להשבית את ההתאמה האוטומטית לעומס, משתמשים בדגל --no-enable-autoscaler. הפעולה הזו מאפסת את מאגר הקריאה למספר הצמתים המקורי שלו לפני שהופעלה ההתאמה האוטומטית לעומס.

gcloud alloydb instances update INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID \
    --no-enable-autoscaler

הצגת מספר הצמתים שהותאמו לעומס (autoscaled)

אתם יכולים לראות את מספר הצמתים שהמידרוג האוטומטי הוסיף או הסיר במכונה.

המסוף

  1. נכנסים לדף Clusters במסוף Google Cloud .

    כניסה לדף Clusters

  2. לוחצים על אשכול בעמודה Resource Name.

  3. בתפריט הניווט, לוחצים על תובנות מערכת.

  4. בוחרים מכונה מהרשימה הנפתחת Instance.

  5. בודקים את מספר הצמתים בקטע מספר הצמתים הפעילים.

gcloud

כדי להשתמש ב-CLI של gcloud, אתם יכולים להתקין ולהפעיל את Google Cloud CLI או להשתמש ב-Cloud Shell.

משתמשים בפקודה gcloud alloydb instances describe כדי להציג את רשימת הצמתים במכונה.

gcloud alloydb instances describe INSTANCE_ID \
     --region=REGION_ID \
     --cluster=CLUSTER_ID \
     --project=PROJECT_ID \
     --view=FULL \
     --format="yaml(nodes)"

מחליפים את מה שכתוב בשדות הבאים:

  • ‫INSTANCE_ID: המזהה של המכונה שמעדכנים.

  • ‫REGION_ID: האזור שבו נמצאת המכונה.

  • ‫CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.

  • ‫PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.