במדריך הזה נסביר איך ליצור קבוצת מופעי מכונה מנוהלים (MIG) שמשתמשת בסוג מכונה H4D. קבוצת המכונות המנוהלת יוצרת מכונות וירטואליות מסוג Flex-start – מכונות וירטואליות (VM) שפועלות עד שבעה ימים במחיר מוזל. כשיוצרים מכונות וירטואליות ב-Compute Engine בדרך הזו, הן ממוקמות קרוב אחת לשנייה כדי לצמצם את זמן האחזור ברשת, ולכן הן אידיאליות להרצת עומסי עבודה של HPC.
יצירת MIG מאפשרת לכם לנהל כמה מכונות וירטואליות כישות אחת. כל מכונה וירטואלית ב-MIG מבוססת על תבנית של הגדרות מכונה. קבוצות MIG מציעות זמינות וגמישות גבוהות, כי הן מנהלות את המכונות הווירטואליות בקבוצה באופן אוטומטי. מידע נוסף על MIGs זמין במאמר קבוצות מופעי מכונה מנוהלים.
מידע על אפשרויות ליצירת מכונות וירטואליות (VM) וקלאסטרים של HPC זמין במאמר סקירה כללית של יצירת קלאסטרים של HPC.
המדריך הזה מיועד למהנדסי HPC, לאדמינים ולמפעילים של פלטפורמות, ולמומחי נתונים ו-MPI שרוצים ליצור קבוצה של מכונות HPC מקושרות לעומסי עבודה קצרים. במכונות שנוצרות לא נעשה שימוש במתזמר לניהול מכונות או לתזמון משימות.
מטרות
- אופציונלי: מבקשים מכסה של מכונות וירטואליות שניתנות להפסקה לפני הזמן.
- אופציונלי: יוצרים רשתות של ענן וירטואלי פרטי (VPC).
- אופציונלי: יוצרים מדיניות עומס עבודה.
- יוצרים תבנית של הגדרות מכונה.
- יוצרים קבוצת MIG ובקשה לשינוי כמות.
- לפנות מקום.
עלויות
במדריך הזה נעשה שימוש ברכיבים של Cloud de Confiance by S3NSשהשימוש בהם כרוך בתשלום, כולל:
כדי להעריך את העלויות בהתאם לשימוש הצפוי, אתם יכולים להשתמש במחשבון העלויות.
לפני שמתחילים
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים פרויקט ב- Cloud de Confiance .
התפקידים שנדרשים כדי לבחור או ליצור פרויקט
- בחירת פרויקט: כדי לבחור פרויקט לא נדרש תפקיד IAM ספציפי – אתם יכולים לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד 'יצירת פרויקטים' (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
-
יוצרים Cloud de Confiance פרויקט:
gcloud projects create PROJECT_ID
מחליפים את
PROJECT_IDבשם של פרויקט Cloud de Confiance שיוצרים. -
בוחרים את הפרויקט שיצרתם ב- Cloud de Confiance :
gcloud config set project PROJECT_ID
מחליפים את
PROJECT_IDבשם הפרויקט ב- Cloud de Confiance .
מפעילים את ממשק ה-API הנדרש, אם הוא עדיין לא מופעל:
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable compute.googleapis.com
-
נותנים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/compute.instanceAdmin.v1,roles/compute.networkAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
USER_IDENTIFIER: המזהה של חשבון המשתמש חשבון. דוגמאות מופיעות במאמר ייצוג המשתמשים במאגרי כוח עבודה בכללי מדיניות IAM. -
ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
-
אופציונלי: שליחת בקשה למכסה של מכונות וירטואליות שניתן להפסיק
המכונות הווירטואליות שנוספו ל-MIG צורכות מכסה אזורית. כל מכונה וירטואלית באזור יכולה לנצל את המכסות של מכונות וירטואליות, קבוצות של מכונות וירטואליות, מעבדים ודיסקים, בלי קשר לתחום.
כשמשתמשים ב-Flex-start, המכסה יכולה להיות רגילה או ניתנת להפסקה לפני הזמן.
- מכסה רגילה: אם לפרויקט אין מכסה של מכונות VM שניתנות להפסקה לפני הזמן, ומעולם לא ביקשתם מכסה כזו, המשאבים של המכונה יצרכו מכסה רגילה.
- מכסה של מכונות שניתנות להפסקה: בקשה למכסות של מכונות שניתנות להפסקה יכולה לעזור לכם לשפר את הזמינות של המכסות, על ידי מתן מכסות נפרדות למשאבים זמניים. עם זאת, אחרי ש-Compute Engine מקצה לכם מכסה של מכונות VM שניתנות להפסקה לפני הזמן באזור מסוים, כל המשאבים הרלוונטיים צורכים רק את המכסה הזו. אם המכסה הזו מוצתה, צריך לבקש מכסה נוספת של משאבי מכונות וירטואליות שניתן לקטוע.
כדי לבקש מכסה של מכונות וירטואליות שניתנות להפסקה לפני הזמן, פועלים לפי השלבים שמפורטים במאמר שליחת בקשה לשינוי המכסות.
סוגי המכסות הנדרשות
כדי להשתמש בקבוצות של מכונות, צריכה להיות לכם מכסה זמינה לכל המשאבים שבהם הקבוצה משתמשת (לדוגמה, מכסת מעבד (CPU)) ומכסה זמינה למשאב הקבוצה עצמו. יכול להיות שייעשה שימוש בסוגי המכסות הבאים עבור מכונות H4D, בהתאם לסוג המכונה שבו נעשה שימוש במכונות:
| משאב | מכסה רגילה | מכסה של מופעים זמניים שניתנים להפסקה |
|---|---|---|
| מעבדים (CPU) | CPUS_PER_VM_FAMILY |
Preemptible CPUs |
| כונני SSD מקומיים | Local SSD per machine family (GB) |
Preemptible Local SSDs (GB) |
כדי ליצור את המשאבים במדריך הזה, יכול להיות שתצטרכו את המכסה האזורית הנוספת הבאה:
- קבוצת מופעי מכונה מנוהלים בתחום מוגדר (תחום יחיד):
Instance group managersו-Instance groups Google Cloud Hyperdisk:
Hyperdisk Balanced Capacity (GB)Hyperdisk Balanced Throughput (MB/s)Hyperdisk Balanced IOPS
אופציונלי: יצירת רשתות VPC
אלא אם משביתים אותה, לכל פרויקט יש רשת ברירת מחדל שאפשר להשתמש בה כדי לספק קישוריות רשת למכונות. כשיוצרים מכונה וירטואלית, אפשר לציין רשת VPC ותת-רשת. אם לא מציינים את ההגדרה הזו, המערכת משתמשת ברשת ובתת-הרשת שמוגדרות כברירת מחדל.
אפשר להגדיר מכונות H4D כך שישתמשו ב-Cloud RDMA. Cloud RDMA מאפשר יכולות העברת הודעות אמינות עם זמן אחזור נמוך באמצעות מנהל התקן של רשת IRDMA שתומך בגישה ישירה מרחוק לזיכרון (RDMA) בין מכונות של Compute Engine.
במדריך הזה:
- כדי להגדיר את מופעי H4D לשימוש ב-Cloud RDMA, צריך לבצע את השלבים שבקטע הזה.
- אם אתם לא רוצים להשתמש ב-Cloud RDMA, אתם יכולים לדלג על הקטע הזה ולהשתמש ברשת שמוגדרת כברירת מחדל.
כדי להגדיר את רשתות ה-VPC של Falcon לשימוש עם המכונות, אתם יכולים לפעול לפי ההוראות המתועדות או להשתמש בסקריפט שסופק.
מדריכי הוראות
כדי ליצור את הרשתות, אתם יכולים להשתמש בהוראות הבאות:
כדי ליצור את רשתות המארח עבור
GVNICממשקי הרשת, אפשר לעיין במאמר יצירה וניהול של רשתות VPC.אם אתם מגדירים רק ממשק רשת אחד של
GVNIC, אתם יכולים להשתמש ברשת VPC ברירת המחדל וברשת המשנה האוטומטית שנמצאת באותו אזור של המכונה.כדי ליצור רשת לממשק הרשת
IRDMA, קראו את המאמר יצירת רשת VPC עם פרופיל רשת Falcon VPC. משתמשים בערך ברירת המחדל של יחידת השידור המקסימלית (MTU) עבור רשת Falcon VPC, שהוא8896.
Script
אפשר ליצור עד תשעה ממשקי רשת מסוג gVNIC וממשק רשת אחד מסוג IRDMA לכל מכונה. כל ממשק רשת חייב להיות מחובר לרשת נפרדת. כדי ליצור את הרשתות, אפשר להשתמש בסקריפט הבא, שיוצר שתי רשתות ל-gVNIC ורשת אחת ל-IRDMA.
- אופציונלי: לפני שמריצים את הסקריפט, מציגים את הפרופילים של רשת ה-VPC של Falcon כדי לוודא שיש פרופיל זמין.
gcloud compute network-profiles list
מעתיקים את הקוד הבא ומריצים אותו בחלון מעטפת של Linux.
#!/bin/bash # Set the number of GVNIC interfaces to create. You can create up to 9. NUM_GVNIC=NUMBER_OF_GVNIC # Create regular VPC networks and subnets for the GVNIC interfaces for N in $(seq 0 $(($NUM_GVNIC - 1))); do gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \ --subnet-mode=custom gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --region=REGION \ --range=10.$N.0.0/16 gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,icmp \ --source-ranges=10.0.0.0/8 done # Create SSH firewall rules gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=IP_RANGE # Optional: Create a firewall rule for the external IP address for the # first GVNIC network interface gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=icmp \ --source-ranges=IP_RANGE # Create a Falcon VPC network for the Cloud RDMA network interface gcloud compute networks create RDMA_NAME_PREFIX-irdma \ --network-profile=ZONE-vpc-falcon \ --subnet-mode custom # Create a subnet in the Falcon VPC network gcloud compute networks subnets create RDMA_NAME_PREFIX-irdma-sub \ --network=RDMA_NAME_PREFIX-irdma \ --region=REGION \ --range=10.2.0.0/16 # offset to avoid overlap with GVNIC subnet rangesמחליפים את מה שכתוב בשדות הבאים:
-
NUMBER_OF_GVNIC: מספר ממשקי ה-gVNIC שרוצים ליצור. צריך לציין מספר בין 1 ל-9. -
GVNIC_NAME_PREFIX: התחילית של השם שמשמשת לרשת ה-VPC הרגילה ולרשת המשנה שמשתמשת בסוג GVNIC NIC. -
REGION: האזור שבו רוצים ליצור את הרשתות. הערך הזה צריך להתאים לאזור שצוין בדגל--network-profileכשיוצרים את רשת ה-VPC של Falcon. לדוגמה, אם מציינים את האזורeurope-west4-b, המחוז הואeurope-west4. -
IP_RANGE: טווח כתובות ה-IP מחוץ לרשת ה-VPC שמשמשות לכללי חומת האש של SSH. השיטה המומלצת היא לציין את טווחי כתובות ה-IP הספציפיים שמהם צריך לאפשר גישה, ולא את כל המקורות של IPv4 או IPv6. אל תשתמשו ב-0.0.0.0/0או ב-::/0כטווח מקור, כי זה מאפשר תנועה מכל מקורות IPv4 או IPv6, כולל מקורות מחוץ ל- Cloud de Confiance by S3NS. -
RDMA_NAME_PREFIX: התחילית של השם שמשמשת לרשת ה-VPC ולרשת המשנה שמשתמשת בסוג ה-NIC של IRDMA. -
ZONE: האזור שבו רוצים ליצור את הרשתות ואת המכונות של Compute Engine. אפשר להשתמש ב-us-central1-aאו ב-europe-west4-b.
-
אופציונלי: כדי לוודא שמשאבי רשת ה-VPC נוצרו בהצלחה, בודקים את הגדרות הרשת במסוף Cloud de Confiance :
- במסוף Cloud de Confiance , נכנסים לדף רשתות VPC.
- מחפשים ברשימה את הרשתות שיצרתם בשלב הקודם.
- כדי לראות את רשתות המשנה, כללי חומת האש והגדרות רשת אחרות, לוחצים על שם הרשת.
אופציונלי: יצירת מדיניות עומס עבודה
אם אתם רוצים ש-Compute Engine ימקם מכונות וירטואליות בבלוק אחד או בבלוקים סמוכים, אתם צריכים ליצור מדיניות עומסי עבודה כדי לציין את מיקום המכונות. עם זאת, אם אתם רוצים ש-Compute Engine ימקם את המכונות שלכם בבלוק ספציפי, דלגו על השלב הזה וציינו את שם הבלוק בזיקה להזמנה כשאתם יוצרים את התבנית של הגדרות המכונה.
כדי ליצור מדיניות עומס עבודה, בוחרים באחת מהאפשרויות הבאות:
gcloud
כדי ליצור מדיניות של עומס עבודה, משתמשים
בפקודה gcloud compute resource-policies create workload-policy.
-
כדי להקצות מכונות וירטואליות על בסיס המאמץ המרבי, מציינים את הדגל
--type=high-throughputבפקודה:gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --region=REGION -
כדי להגדיר מיקום משותף קפדני של מכונות וירטואליות, מציינים את הדגלים
--max-topology-distanceו---type=high-throughputבפקודה:gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --max-topology-distance=TOPOLOGY_DISTANCE \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
-
WORKLOAD_POLICY_NAME: השם של מדיניות עומסי העבודה. -
TOPOLOGY_DISTANCE: המרחק המקסימלי בטופולוגיה. מציינים את אחד מהערכים הבאים:- כדי למקם מכונות וירטואליות באותו בלוק משנה:
SUBBLOCK - כדי למקם מכונות וירטואליות באותו בלוק:
BLOCK - כדי להציב מכונות וירטואליות באותו אשכול:
CLUSTER
הערה: מרחק מקסימלי קצר יותר יכול להפחית את הסבירות לזמינות של המכונה הווירטואלית. מידע נוסף זמין במאמר בנושא מאפיין המרחק המקסימלי בטופולוגיה. - כדי למקם מכונות וירטואליות באותו בלוק משנה:
-
REGION: האזור שבו רוצים ליצור את מדיניות עומס העבודה. מציינים את האזור שבו רוצים ליצור את קבוצת ה-MIG, ומוודאים שסוג המכונה שרוצים להשתמש בה זמין. למידע נוסף על אזורים ותחומים, קראו את המאמר אזורים ותחומים זמינים.
REST
כדי ליצור מדיניות של עומס עבודה, שולחים בקשת POST אל ה-method resourcePolicies.insert.
-
כדי להקצות מכונות וירטואליות לפי מידת הזמינות, מציינים את השדה
typeבבקשה:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT" } } -
כדי להגדיר מיקום משותף קפדני של מכונות וירטואליות, מציינים את השדות
maxTopologyDistanceו-typeבבקשה באופן הבא:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT", "maxTopologyDistance": "TOPOLOGY_DISTANCE" } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט -
REGION: האזור שבו רוצים ליצור את מדיניות עומס העבודה. מציינים אזור שבו רוצים ליצור את קבוצת ה-MIG ואת סוג המכונה שרוצים להשתמש בה. מידע על אזורים ותחומים זמין במאמר אזורים ותחומים זמינים. -
WORKLOAD_POLICY_NAME: השם של מדיניות עומסי העבודה. -
TOPOLOGY_DISTANCE: המרחק המקסימלי בטופולוגיה. מציינים אחד מהערכים הבאים:- כדי להציב מכונות וירטואליות באותו בלוק משנה:
SUBBLOCK - כדי למקם מכונות וירטואליות באותו בלוק:
BLOCK - כדי להציב מכונות וירטואליות באותו אשכול:
CLUSTER
הערה: הגדרה של מרחק מקסימלי קצר יותר עשויה להקטין את הסבירות לזמינות של מכונה וירטואלית. מידע נוסף זמין במאמר בנושא מאפיין המרחק המקסימלי בטופולוגיה. - כדי להציב מכונות וירטואליות באותו בלוק משנה:
יצירת תבנית של הגדרות מכונה
כדי להשתמש באפשרות של צריכת משאבים עם התחלה גמישה, יוצרים קבוצת MIG ריקה ואז יוצרים בקשה לשינוי הגודל של קבוצת ה-MIG. כשהקיבולת שביקשתם תהיה זמינה, Compute Engine יקצה אותה וייצור את המכונות ב-MIG. אפשר לקבל משאבים עד שבעה ימים.
כדי לציין את מאפייני המכונה והצריכה של כל מכונה בקבוצת המכונות המנוהלת, יוצרים תבנית של הגדרות מכונה באחת מהשיטות הבאות:
gcloud
כדי ליצור תבנית של הגדרות מכונה אזורית, משתמשים בפקודה
gcloud compute instance-templates create.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--network-interface=nic-type=GVNIC, \
network=GVNIC_NAME_PREFIX-net-0, \
subnet=GVNIC_NAME_PREFIX-sub-0, \
stack-type=STACK_TYPE, \
address=EXTERNAL_IPV4_ADDRESS \
--network-interface=nic-type=GVNIC, \
network=GVNIC_NAME_PREFIX-net-1, \
subnet=GVNIC_NAME_PREFIX-sub-1,no-address \
--network-interface=nic-type=IRDMA, \
network=RDMA_NAME_PREFIX-irdma, \
subnet=RDMA_NAME_PREFIX-irdma-sub, \
stack-type=IPV4_ONLY,no-address \
--instance-termination-action=DELETE \
--max-run-duration=RUN_DURATION \
--maintenance-policy=TERMINATE \
--provisioning-model=FLEX_START
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_TEMPLATE_NAME: השם של התבנית של הגדרות המכונה. -
MACHINE_TYPE: סוג המכונה H4D שבה רוצים להשתמש עבור המופע. -
IMAGE_FAMILY: משפחת קובצי האימג' של מערכת ההפעלה שבה רוצים להשתמש. כאן אפשר למצוא רשימה של מערכות ההפעלה הנתמכות. -
IMAGE_PROJECT: מזהה הפרויקט של תמונת מערכת ההפעלה. -
REGION: האזור שבו רוצים ליצור את התבנית של הגדרות המכונה. מציינים אזור שבו זמין סוג המכונה שרוצים להשתמש בו. -
DISK_SIZE: גודל דיסק האתחול ב-GiB.
GVNIC_NAME_PREFIX: התחילית של השם שבו השתמשתם כשאתם יצרתם את רשתות ה-VPC הרגילות ואת רשתות המשנה של ממשקי ה-gVNIC.אם אתם משתמשים ברשת ברירת המחדל, צריך לכלול רק שדה
--network-interfaceאחד, כשהשדהnic-typeמוגדר לערךGVNIC. בנוסף, צריך להשמיט את ההגדרותnetworkו-subnetworkבממשק הרשת הזה.-
STACK_TYPE: אופציונלי: סוג ה-stack לשימוש בממשק gVNIC. צריך לצייןIPV4_ONLYאוIPV4_IPV6. אם לא תציינו ערך, המערכת תשתמש בערך ברירת המחדלIPV4_ONLY.
EXTERNAL_IPV4_ADDRESS: אופציונלי: כתובת IPv4 חיצונית סטטית לשימוש עם ממשק הרשת gVNIC. צריך לשריין כתובת IPv4 חיצונית מראש. מבצעים אחת מהפעולות הבאות:- צריך לציין כתובת IPv4 תקינה מרשת המשנה.
- אם אתם לא רוצים שלממשק הרשת תהיה כתובת IP חיצונית, השתמשו בדגל
no-address. - מציינים את הערך
address=''אם רוצים שממשק הרשת יקבל כתובת IP חיצונית זמנית.
כדי לציין כתובת IPv6 חיצונית לממשק הרשת של gVNIC, צריך להשתמש בדגל
--external-ipv6-address.
RDMA_NAME_PREFIX: תחילית השם שבה השתמשתם כשייצרתם את רשת ה-VPC ואת תת-הרשת לממשק הרשת של IRDMA.אם אתם לא משתמשים ב-Cloud RDMA עם מכונות H4D, השמיטו את השדה
--network-interfaceבממשק IRDMA.-
RUN_DURATION: משך הזמן שבו רוצים שהמכונות המבוקשות יפעלו. צריך להזין את הערך כמספר ימים, שעות, דקות או שניות, ואחריו את האותיותd,h,mו-sבהתאמה. לדוגמה, מציינים30mל-30 דקות או1d2h3m4sליום אחד, שעתיים, שלוש דקות וארבע שניות. הערך צריך להיות בין 10 דקות ל-7 ימים.
REST
כדי ליצור תבנית של הגדרות מכונה אזורית, שולחים בקשת POST אל
ה-method regionInstanceTemplates.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name":"INSTANCE_TEMPLATE_NAME",
"properties":{
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb":"DISK_SIZE",
"diskType":"hyperdisk-balanced",
"sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode":"READ_WRITE",
"type":"PERSISTENT"
}
],
"machineType":"MACHINE_TYPE",
"networkInterfaces": [
{
"network": "GVNIC_NAME_PREFIX-net-0",
"subnetwork": "GVNIC_NAME_PREFIX-sub-0",
"accessConfigs": [
{
"type": "ONE_TO_ONE_NAT",
"name": "External IP",
"natIP": "EXTERNAL_IPV4_ADDRESS"
}
],
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "GVNIC_NAME_PREFIX-net-1",
"subnetwork": "GVNIC_NAME_PREFIX-sub-1",
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "RDMA_NAME_PREFIX-irdma",
"subnetwork": "RDMA_NAME_PREFIX-irdma-sub",
"stackType": "IPV4_ONLY",
"nicType": "IRDMA",
}
],
,
"scheduling": {
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": RUN_DURATION
},
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START"
}
}
}
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_TEMPLATE_NAME: השם של התבנית של הגדרות המכונה. -
MACHINE_TYPE: סוג המכונה שבה משתמשים. מציינים סוג מכונה H4D. מידע נוסף זמין במאמר סוגי מכונות H4D. -
IMAGE_FAMILY: משפחת התמונות של תמונת מערכת ההפעלה שרוצים להשתמש בה. כאן אפשר למצוא רשימה של מערכות ההפעלה הנתמכות. -
IMAGE_PROJECT: מזהה הפרויקט של קובץ האימג' של מערכת ההפעלה. -
REGION: האזור שבו רוצים ליצור את התבנית של הגדרות המכונה. מציינים אזור שבו זמין סוג המכונה שרוצים להשתמש בו. למידע נוסף על אזורים, קראו את המאמר אזורים ותחומים. -
DISK_SIZE: גודל דיסק האתחול ב-GiB.
GVNIC_NAME_PREFIX: התחילית של השם שבו השתמשתם כשאתם יצרתם את רשתות ה-VPC הרגילות ואת רשתות המשנה של ממשקי ה-gVNIC.אם אתם משתמשים ברשת ברירת המחדל, צריך לכלול רק שדה
--network-interfaceאחד עם השדהnic-typeשמוגדר לערךGVNIC. בנוסף, צריך להשמיט את ההגדרותnetworkו-subnetworkמממשק הרשת הזה.
EXTERNAL_IPV4_ADDRESS: אופציונלי: כתובת IPv4 חיצונית סטטית לשימוש עם ממשק הרשת gVNIC. צריך לשריין כתובת IPv4 חיצונית מראש.כדי לציין כתובת IPv6 חיצונית לממשק הרשת של GVNIC, משתמשים בדגל
--external-ipv6-address.
RDMA_NAME_PREFIX: תחילית השם שבה השתמשתם כשייצרתם את רשת ה-VPC ואת תת-הרשת לממשק הרשת של IRDMA.אם אתם לא משתמשים ב-Cloud RDMA עם מכונות H4D, השמיטו את השדה
--network-interfaceבממשק IRDMA.-
RUN_DURATION: משך הזמן, בשניות, שבו רוצים שהמופעים המבוקשים יפעלו. הערך צריך להיות בין600, שהוא 600 שניות (10 דקות), לבין604800, שהוא 604,800 שניות (שבעה ימים).
אחרי שיוצרים את תבנית של הגדרות מכונה, אפשר לראות את התבנית כדי לראות את המזהה שלה ולבדוק את מאפייני המכונה.
יצירת קבוצת MIG עם בקשה לשינוי כמות
כדי ליצור את כל המכונות המבוקשות עם התחלה גמישה (Flex-start) בו-זמנית, יוצרים קבוצת מופעים מנוהלת (MIG) ואז יוצרים בקשה לשינוי כמות בקבוצת המופעים המנוהלת, כמו שמתואר בקטע הזה.
יצירת קבוצת ה-MIG
כדי ליצור את ה-MIG, בוחרים באחת מהאפשרויות הבאות:
gcloud
כדי ליצור קבוצת MIG אזורית או אזורית:
-
כדי ליצור קבוצת MIG אזורית, משתמשים בפקודה
instance-groups managed createבאופן הבא:gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --workload-policy=WORKLOAD_POLICY_URL \ --zone=ZONE -
כדי ליצור קבוצת MIG אזורית, משתמשים בפקודה
instance-groups managed createבאופן הבא.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none
אם רוצים להחיל מדיניות עומסי עבודה על קבוצת ה-MIG, צריך לכלול בפקודה את הדגל
--workload-policy.
REST
כדי ליצור קבוצת MIG אזורית או קבוצת MIG של אזור, מבצעים את הפעולות הבאות:
- כדי ליצור קבוצת MIG אזורית, שולחים בקשת
POSTל-methodinstanceGroupManagers.insert, באופן הבא:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" }, "resourcePolicies": { "workloadPolicy": "WORKLOAD_POLICY_URL" } } - כדי ליצור קבוצת MIG אזורית, שולחים בקשת
POSTל-methodregionInstanceGroupManagers.insert, באופן הבא:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" }, "resourcePolicies": { "workloadPolicy": "WORKLOAD_POLICY_URL" } }
אם רוצים להחיל מדיניות עומסי עבודה על קבוצת ה-MIG, צריך לכלול את
השדה resourcePolicies.workloadPolicy בגוף הבקשה.
יצירת בקשה לשינוי גודל
כדי ליצור את הבקשה לשינוי כמות ב-MIG, בוחרים אחת מהאפשרויות הבאות:
gcloud
כדי ליצור בקשה לשינוי גודל:
-
כדי ליצור בקשה לשינוי כמות בקבוצת MIG אזורית, משתמשים בפקודה
instance-groups managed resize-requests createבאופן הבא:gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ POPULATION_METHOD \ --zone=ZONE - כדי ליצור בקשה לשינוי כמות בקבוצת MIG אזורית, משתמשים בפקודה
instance-groups managed resize-requests createבגרסת בטא באופן הבא:gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ POPULATION_METHOD \ --region=REGION
אם רוצים להחיל מדיניות של עומס עבודה על ה-MIG, צריך לכלול את הדגל
--workload-policy בפקודה.
REST
כדי ליצור בקשה לשינוי כמות ב-MIG אזורי או ב-MIG של אזור, פועלים לפי השלבים הבאים:
- כדי ליצור בקשה לשינוי כמות בקבוצת MIG אזורית, שולחים בקשת
POSTל-methodinstanceGroupManagerResizeRequests.insertבאופן הבא:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", POPULATION_METHOD } - כדי ליצור בקשה לשינוי כמות בקבוצת MIG אזורית, שולחים בקשת
POSTל-methodbeta.regionInstanceGroupManagerResizeRequests.insertבאופן הבא:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", POPULATION_METHOD }
אם רוצים להחיל מדיניות עומסי עבודה על קבוצת ה-MIG, צריך לכלול את השדה resourcePolicies.workloadPolicy בגוף הבקשה.
הסרת המשאבים
כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, אפשר למחוק את הפרויקט שמכיל את המשאבים או להשאיר את הפרויקט ולמחוק את המשאבים הנפרדים.
מחיקת הפרויקט
כדי למחוק Cloud de Confiance פרויקט:
gcloud projects delete PROJECT_ID
מחיקת המשאבים
thought מוחקים את ה-MIG ואת המכונות.
אם מצב המחיקה האוטומטית של הדיסקים הוגדר ל-
Falseבתבנית של הגדרות המכונה, הדיסקים לא נמחקים באופן אוטומטי כשמוחקים את מכונת ה-VM. אפשר למחוק את הדיסקים באחת מהשיטות הבאות:המסוף
- נכנסים לדף Disks במסוף Cloud de Confiance .
בוחרים את השורות שמכילות את הדיסקים שיצרתם במדריך הזה. מוודאים שהעמודה In use by ריקה בכל דיסק.
לוחצים על Delete ואז על Delete כדי לאשר.
gcloud
משתמשים בפקודה
gcloud compute disks delete.gcloud compute disks delete DISK_NAME \ --project PROJECT_ID --zone ZONEמחליפים את מה שכתוב בשדות הבאים:
- DISK_NAME : שם הדיסק שרוצים למחוק
- PROJECT_ID: מזהה הפרויקט שמכיל את הדיסק
- ZONE: האזור של הדיסק
REST
משתמשים ב-
disks.deletemethod כדי למחוק את הדיסקים.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAMEמחליפים את מה שכתוב בשדות הבאים:
- PROJECT_ID: מזהה הפרויקט שמכיל את הדיסק
- ZONE: האזור של הדיסק
- DISK_NAME : שם הדיסק שרוצים למחוק