ב-VM Runtime on GDC אתם יכולים להגדיר סוגים מותאמים אישית של מכונות וירטואליות, או לציין באופן ידני את משאבי המעבד (CPU) והזיכרון בהתאם לדרישות של עומס העבודה. במאמרי עזרה הזה מוסבר איך ליצור מכונה וירטואלית עם הקצאות ספציפיות של מעבד (CPU) והקצאת זיכרון, ואיך להגדיר סוגי מכונות וירטואליות לשימוש חוזר ולהשתמש בהם.
לפני שמתחילים
כדי להשלים את המשימות שבמסמך הזה, אתם צריכים גישה למשאבים הבאים:
- גישה לאשכול של Google Distributed Cloud בגרסה 1.12.0 (
anthosBareMetalVersion: 1.12.0) ואילך. אפשר להשתמש בכל סוג של אשכול שיכול להריץ עומסי עבודה. במקרה הצורך, תוכלו לנסות את Google Distributed Cloud ב-Compute Engine או לעיין בסקירה הכללית על יצירת אשכולות. - כלי הלקוח של
virtctlמותקן כפלאגין שלkubectl. אם צריך, מתקינים את כלי הלקוח virtctl.
יצירת VM
כשיוצרים מכונה וירטואלית, אפשר לציין ידנית את דרישות המעבד והזיכרון. כך תוכלו ליצור מכונות וירטואליות עם משאבי המחשוב המתאימים לצורכי האפליקציה שלכם.
כדי ליצור מכונה וירטואלית ולציין ידנית את דרישות המעבד והזיכרון, בצעו את הפעולות הבאות:
CLI
משתמשים ב-
kubectlכדי ליצור מכונה וירטואלית:kubectl virt create vm VM_NAME \ --image ubuntu20.04 \ --cpu CPU_NUMBER \ --memory MEMORY_SIZEמחליפים את הערכים הבאים:
-
VM_NAME: השם של המכונה הווירטואלית. מידע נוסף על מגבלות השמות מופיע במאמר שמות ומזהים של אובייקטים. -
CPU_NUMBER: מספר המעבדים הווירטואליים (vCPUs) שיוקצו למכונה הווירטואלית.- אפשר להקצות בין 1 ל-96 מעבדי vCPU למכונה וירטואלית.
-
MEMORY_SIZE: כמות הזיכרון שצריך להקצות למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1M ל-1T זיכרון. מידע נוסף מופיע במאמר יחידות משאבי זיכרון.
-
מניפסט
יוצרים מניפסט של
VirtualMachine, למשל my-custom-vm.yaml, בעורך לבחירתכם:nano my-custom-vm.yamlמעתיקים ומדביקים את המניפסט הבא ב-YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: cpu: vcpus: VCPU_NUMBER memory: capacity: MEMORY_SIZE interfaces: - name: eth0 networkName: pod-network default: true disks: - virtualMachineDiskName: VM_NAME-boot-dv boot: trueבקובץ ה-YAML הזה, מגדירים את הפרטים הבאים:
-
VM_NAME: השם של המכונה הווירטואלית. מידע נוסף על מגבלות השמות מופיע במאמר שמות ומזהים של אובייקטים. -
VCPU_NUMBER: מספר המעבדים הווירטואליים שיוקצו למכונה הווירטואלית.- אפשר להקצות בין 1 ל-96 מעבדי vCPU למכונה וירטואלית.
-
MEMORY_SIZE: כמות הזיכרון שצריך להקצות למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1M ל-1T זיכרון. מידע נוסף מופיע במאמר יחידות משאבי זיכרון.
המכונה הווירטואלית מתחברת
eth0לרשתpod-networkשמוגדרת כברירת מחדל.דיסק האתחול בשם
VM_NAME-boot-dvכבר צריך להיות קיים. מידע נוסף זמין במאמר יצירה וניהול של דיסקים וירטואליים.-
שומרים וסוגרים את המניפסט של המכונה הווירטואלית בכלי העריכה.
יוצרים את המכונה הווירטואלית באמצעות
kubectl:kubectl apply -f my-custom-vm.yaml
יצירה ושימוש בסוגי מכונות וירטואליות
כשמפעילים את VM Runtime on GDC, הגדרה חדשה של משאב בהתאמה אישית (CRD) מסוג VirtualMachineType זמינה. ההגדרה הזו משמשת לציון משאבי המעבד (CPU) והזיכרון של מכונה וירטואלית. אתם יכולים ליצור סוגים של מכונות וירטואליות לעומסי העבודה השונים שאתם צריכים, ולהחיל קבוצה עקבית של משאבי מחשוב על מכונות וירטואליות על סמך הסוגים האלה.
אם סביבת זמן הריצה של VM ב-GDC מופעלת ב-Google Distributed Cloud, ה-vm-controller-manager מתקין סוג VM מוגדר מראש. ההגדרה הבאה מציגה את סוג ברירת המחדל של המכונה הווירטואלית example-machinetype:
apiVersion: vm.cluster.gke.io/v1
kind: VirtualMachineType
metadata:
name: "example-machinetype"
labels:
vm.cluster.gke.io/predefined-machinetype: "true"
spec:
cpu:
vcpus: 2
memory:
capacity: 4G
אי אפשר לעדכן את סוג המכונה הווירטואלית המוגדר מראש. סוג המכונה הווירטואלית שהוגדר מראש מותקן מחדש אם הוא לא קיים באשכול בכל פעם ש-vm-controller-manager מופעל או מופעל מחדש, למשל אם מחקתם את סוג המכונה הווירטואלית.
יצירת סוג של מכונה וירטואלית
אתם יכולים ליצור סוגים משלכם של מכונות וירטואליות שיתאימו לצורכי המחשוב של עומסי העבודה שלכם.
יוצרים מניפסט של
VirtualMachineType, כמו my-vm-type.yaml, בעורך לבחירתכם:nano my-vm-type.yamlמעתיקים ומדביקים את המניפסט הבא ב-YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachineType metadata: name: my-vm-type spec: cpu: vcpus: VCPU_NUMBER memory: capacity: MEMORY_SIZEבסוג הזה של מכונה וירטואלית, אתם מגדירים את הפרטים הבאים:
-
VM_NAME: השם של המכונה הווירטואלית. מידע נוסף על מגבלות השמות מופיע במאמר שמות ומזהים של אובייקטים. -
VCPU_NUMBER: מספר המעבדים הווירטואליים שיוקצו למכונה הווירטואלית.- אפשר להקצות בין 1 ל-96 מעבדי vCPU למכונה וירטואלית.
-
MEMORY_SIZE: כמות הזיכרון שצריך להקצות למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1M ל-1T זיכרון. מידע נוסף מופיע במאמר יחידות משאבי זיכרון.
-
שומרים וסוגרים את המניפסט של סוג ה-VM בכלי העריכה.
יוצרים את סוג המכונה הווירטואלית באמצעות
kubectl:kubectl apply -f my-vm-type.yaml
יצירת מכונה וירטואלית לפי סוג
כדי להחיל הגדרות compute מוגדרות מראש על המכונה הווירטואלית, צריך לציין סוג מכונה וירטואלית במניפסט של VirtualMachine.
יוצרים מניפסט של
VirtualMachine, כמו my-custom-vm.yaml, בכלי העריכה שבוחרים.nano my-custom-vm.yamlמעתיקים ומדביקים את המניפסט הבא ב-YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineTypeName: my-vm-type interfaces: - name: eth0 networkName: pod-network default: true disks: - virtualMachineDiskName: VM_NAME-boot-dv boot: trueבקובץ ה-YAML הזה, מציינים את השם של סוג ה-VM בהתאמה אישית שיצרתם בקטע הקודם, למשל
my-vm-type, כערך שלvirtualMachineTypeName.המכונה הווירטואלית מתחברת
eth0לרשתpod-networkשמוגדרת כברירת מחדל.דיסק האתחול בשם
VM_NAME-boot-dvכבר צריך להיות קיים. מידע נוסף זמין במאמר יצירה וניהול של דיסקים וירטואליים.שומרים וסוגרים את המניפסט של המכונה הווירטואלית בכלי העריכה.
יוצרים את המכונה הווירטואלית באמצעות
kubectl:kubectl apply -f my-custom-vm.yaml
המאמרים הבאים
- עריכת מכונה וירטואלית ב-Google Distributed Cloud
- כשכבר לא צריך את המכונות הווירטואליות, מוחקים אותן ב-Google Distributed Cloud.