יצירת קבוצת MIG עם כמה סוגי מכונות

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

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

אפשר גם לקרוא על תרחישים בסיסיים אחרים ליצירת MIG.

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

יצירת MIG עם כמה סוגי מכונות

המסוף

  1. נכנסים לדף Instance groups במסוף Cloud de Confiance .

    כניסה לדף Instance groups

  2. לוחצים על Create instance group.

  3. בשדה Name, מזינים שם ל-MIG.

  4. ברשימה Instance template, בוחרים את תבנית של הגדרות מכונה שרוצים להשתמש בה עבור ה-MIG.

  5. כדי לציין את מספר המופעים ולהוסיף בחירות של מופעים, צריך לבצע את הפעולות הבאות:

    1. עוברים לקטע מיקום בדף ומגדירים מיקום באופן הבא:

      1. בוחרים באפשרות אזורים מרובים.

      2. בתפריטים הנפתחים Regions ו-Zones, בוחרים אזור ואת התחומים שבהם רוצים ליצור את המכונות הווירטואליות ב-MIG. אם בחרתם תבנית של הגדרות מכונה אזורית, האזור של התבנית הזו נבחר כברירת מחדל.

      3. בשדה Target distribution shape, בוחרים באפשרות Balanced,‏ Any או Any single zone.

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

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

    2. עוברים לקטע Autoscaling בדף ומוחקים את ההגדרה של שינוי הגודל האוטומטי באופן הבא:

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

      2. בתיבת הדו-שיח שנפתחת, לוחצים על מחיקה.

    3. גוללים חזרה לשדה Number of instances (מספר המופעים).

  6. בשדה Number of instances (מספר המופעים), מציינים את מספר המכונות הווירטואליות שרוצים בקבוצה.

  7. בקטע Instance selections (בחירת מופעים), לוחצים על Add selections (הוספת בחירות).

    נפתח החלון בחירת מופעים.

    1. לוחצים על הוספת בחירת מופע.

    2. בקטע New instance selection (בחירת מופע חדש):

      1. בשדה Name, מזינים שם לבחירת המופע.

      2. בקטע Machine types (סוגי מכונות), לוחצים על Add machine type (הוספת סוג מכונה), בוחרים סוג מכונה שרוצים להוסיף לבחירת המכונה ולוחצים על Done (סיום).

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

      3. אחרי שמסיימים להוסיף את סוגי המכונות, לוחצים על סיום.

  8. בחלון Instance selections (בחירת מופעים), לוחצים על Done (סיום).

  9. משאירים את שאר השדות בהגדרות ברירת המחדל שלהם או משנים אותם לפי הצורך.

  10. לוחצים על יצירה.

gcloud

כדי ליצור קבוצת MIG אזורית עם כמה סוגי מכונות, משתמשים בפקודה instance-groups managed create באופן הבא:

gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --region REGION \
    --size TARGET_SIZE \
    --template INSTANCE_TEMPLATE_URL \
    --target-distribution-shape SHAPE \
    --instance-redistribution-type none \
    --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...

קבוצות MIG אזוריות לא תומכות בהפעלה גמישה של מכונות. עם זאת, אם רוצים ליצור קבוצת מופעים מנוהלת באזור יחיד, צריך להגדיר את צורת ההפצה של היעד ל-any-single-zone. בנוסף, אם רוצים אזור ספציפי, משתמשים בany-single-zone צורת ההפצה וכוללים את הדגל --zones ZONE.

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

  • ‫INSTANCE_GROUP_NAME: השם של ה-MIG.
  • ‫REGION: האזור שבו רוצים ליצור את קבוצת ה-MIG.
  • ‫TARGET_SIZE: מספר המכונות הווירטואליות שרוצים שקבוצת ה-MIG תיצור ותתחזק.
  • ‫INSTANCE_TEMPLATE_URL: כתובת ה-URL של תבנית של הגדרות מכונה שרוצים להשתמש בה כדי ליצור מכונות ב-MIG. כתובת ה-URL יכולה להכיל את המזהה או את השם של תבנית של הגדרות מכונה. מציינים אחד מהערכים הבאים:
    • לתבנית של הגדרות מכונה אזורית: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • לתבנית גלובלית של הגדרות מכונה: INSTANCE_TEMPLATE_ID
  • ‫SHAPE: צורת ההתפלגות של היעד. הערך יכול להיות balanced,‏ any או any-single-zone.
  • ‫MACHINE_TYPE: סוגי המכונות שרוצים להגדיר ב-MIG. לדוגמה: n1-standard-16,n2-standard-16,e2-standard-16.

Terraform

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

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

resource "google_compute_region_instance_group_manager" "default" {
  name               = "flex-igm"
  base_instance_name = "tf-test-flex-igm"
  region             = "us-central1"

  target_size                      = 3
  distribution_policy_target_shape = "ANY_SINGLE_ZONE"

  version {
    instance_template = google_compute_instance_template.default.id
  }

  instance_flexibility_policy {
    instance_selections {
      name          = "default-instance-selection"
      machine_types = ["n1-standard-16", "n2-standard-16", "e2-standard-16"]
    }
  }

  update_policy {
    instance_redistribution_type = "NONE"
    type                         = "OPPORTUNISTIC"
    minimal_action               = "REPLACE"
    max_surge_fixed              = 0
    max_unavailable_fixed        = 6
  }
}

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

REST

כדי ליצור קבוצת MIG אזורית עם כמה סוגי מכונות, שולחים בקשת POST אל ה-method‏ regionInstanceGroupManagers.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": TARGET_SIZE,
  "instanceTemplate": "INSTANCE_TEMPLATE_URL",
  "distributionPolicy": {
    "targetShape": "SHAPE"
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2",
          ...
        ]
      }
    }
  }
}

קבוצות MIG אזוריות לא תומכות בהפעלה גמישה של מכונות. עם זאת, אם רוצים ליצור קבוצת מופעים מנוהלת באזור יחיד, צריך להגדיר את צורת ההפצה של היעד ל-ANY_SINGLE_ZONE. בנוסף, אם רוצים אזור ספציפי, צריך להשתמש בANY_SINGLE_ZONE צורת ההפצה ולכלול את השדה distributionPolicy.zones[].zone בבקשה.

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

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫REGION: האזור שבו רוצים ליצור את קבוצת ה-MIG.
  • ‫INSTANCE_GROUP_NAME: השם של ה-MIG.
  • ‫TARGET_SIZE: מספר המכונות הווירטואליות שרוצים שקבוצת ה-MIG תיצור ותתחזק.
  • ‫INSTANCE_TEMPLATE_URL: כתובת ה-URL של תבנית של הגדרות מכונה שרוצים להשתמש בה כדי ליצור מכונות ב-MIG. כתובת ה-URL יכולה להכיל את המזהה או את השם של תבנית של הגדרות מכונה. מציינים אחד מהערכים הבאים:
    • לתבנית של הגדרות מכונה אזורית: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • לתבנית גלובלית של הגדרות מכונה: INSTANCE_TEMPLATE_ID
  • ‫SHAPE: צורת ההתפלגות של היעד. הערך יכול להיות BALANCED,‏ ANY או ANY_SINGLE_ZONE.
  • ‫INSTANCE_SELECTION: השם של רשימת סוגי המכונות.
  • ‫MACHINE_TYPE: סוגי המכונות שרוצים להגדיר ב-MIG. לדוגמה: "n1-standard-16","n2-standard-16","e2-standard-16".

המאמרים הבאים