המסמך הזה מיועד לבעלי אפליקציות ולאדמינים של פלטפורמות שמריצים את Google Distributed Cloud. במאמר הזה מוסבר איך ליצור סוגי מכונות וירטואליות ולהשתמש בהם, או לציין באופן ידני את משאבי ה-CPU והזיכרון כשיוצרים מכונות וירטואליות שמשתמשות ב-VM Runtime ב-GDC.
לפני שמתחילים
כדי להשלים את המסמך הזה, תצטרכו גישה למקורות המידע הבאים:
- גישה ל-Google Distributed Cloud מגרסה 1.12.0 (
anthosBareMetalVersion: 1.12.0) ואילך של אשכול. אפשר להשתמש בכל סוג של אשכול שיכול להריץ עומסי עבודה. אם צריך, אפשר לנסות את Google Distributed Cloud ב-Compute Engine או לעיין בסקירה הכללית על יצירת אשכולות. - כלי הלקוח
virtctlמותקן כפלאגין שלkubectl. במקרה הצורך, מתקינים את כלי הלקוח virtctl.
יצירת VM
כשיוצרים מכונה וירטואלית, אפשר לציין באופן ידני את דרישות ה-CPU והזיכרון. היכולת הזו מאפשרת לכם ליצור מכונות וירטואליות עם משאבי מחשוב מתאימים לצרכים של האפליקציה.
כדי ליצור מכונת VM ולציין באופן ידני את דרישות המעבד והזיכרון, פועלים לפי השלבים הבאים.
CLI
משתמשים ב-
kubectlכדי ליצור מכונה וירטואלית:kubectl virt create vm VM_NAME \ --image ubuntu20.04 \ --cpu CPU_NUMBER \ --memory MEMORY_SIZEמחליפים את הערכים הבאים:
-
VM_NAME: השם של ה-VM. מידע נוסף על מגבלות שמות זמין במאמר שמות ומזהים של אובייקטים. -
CPU_NUMBER: מספר המעבדים הווירטואליים (vCPU) שיוקצו למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1 ל-96 מעבדים וירטואליים.
-
MEMORY_SIZE: כמות הזיכרון להקצאה למכונה הווירטואלית.- אפשר להקצות ל-VM זיכרון בנפח של 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: השם של ה-VM. מידע נוסף על מגבלות שמות זמין במאמר שמות ומזהים של אובייקטים. -
VCPU_NUMBER: מספר ליבות ה-vCPU להקצאה למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1 ל-96 מעבדים וירטואליים.
-
MEMORY_SIZE: כמות הזיכרון להקצאה למכונה הווירטואלית.- אפשר להקצות ל-VM זיכרון בנפח של 1M עד 1T. מידע נוסף מופיע במאמר יחידות משאבי זיכרון.
המכונה הווירטואלית מתחברת לרשת
eth0שמוגדרת כברירת מחדלpod-network.דיסק האתחול בשם
VM_NAME-boot-dvחייב להיות קיים. מידע נוסף זמין במאמר בנושא יצירה וניהול של דיסקים וירטואליים.-
שומרים את מניפסט המכונה הווירטואלית וסוגרים את העורך.
יוצרים את המכונה הווירטואלית באמצעות
kubectl:kubectl apply -f my-custom-vm.yaml
יצירה של סוגי מכונות וירטואליות ושימוש בהם
כשמפעילים את VM Runtime ב-GDC, מוגדר משאב חדש בהתאמה אישית מסוג VirtualMachineType. ההגדרה הזו משמשת לציון משאבי מעבד וזיכרון של מכונה וירטואלית. אתם יכולים ליצור סוגים של מכונות וירטואליות עבור עומסי העבודה השונים שאתם צריכים, ולהחיל על המכונות הווירטואליות קבוצה עקבית של משאבי מחשוב על סמך הסוגים האלה.
אם VM Runtime on GDC מופעל ב-Google Distributed Cloud, הפקודה vm-controller-manager מתקינה סוג מוגדר מראש של מכונה וירטואלית. ההגדרה הבאה מציגה את סוג המכונה הווירטואלית שמוגדר כברירת מחדל: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 המוגדר מראש. סוג מכונת ה-VM המוגדר מראש מותקן מחדש אם הוא לא קיים באשכול בכל פעם שמפעילים או מפעילים מחדש את vm-controller-manager, למשל אם מחקתם את סוג מכונת ה-VM.
יצירת סוג VM
אתם יכולים ליצור סוגים משלכם של מכונות וירטואליות שיתאימו לצרכים של עומסי העבודה שלכם.
יוצרים מניפסט
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: השם של ה-VM. מידע נוסף על מגבלות שמות זמין במאמר שמות ומזהים של אובייקטים. -
VCPU_NUMBER: מספר ליבות ה-vCPU להקצאה למכונה הווירטואלית.- אפשר להקצות למכונה וירטואלית בין 1 ל-96 מעבדים וירטואליים.
-
MEMORY_SIZE: כמות הזיכרון להקצאה למכונה הווירטואלית.- אפשר להקצות ל-VM זיכרון בנפח של 1M עד 1T. מידע נוסף מופיע במאמר יחידות משאבי זיכרון.
-
שומרים את מניפסט סוג מכונת ה-VM וסוגרים את העורך.
יוצרים את סוג המכונה הווירטואלית באמצעות
kubectl:kubectl apply -f my-vm-type.yaml
יצירת מכונה וירטואלית באמצעות סוג מכונה וירטואלית
מציינים סוג של מכונה וירטואלית במניפסט VirtualMachine כדי להחיל הגדרות מוגדרות מראש על המכונה הווירטואלית.compute
יוצרים קובץ מניפסט
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 הזה, מציינים את השם של סוג המכונה הווירטואלית בהתאמה אישית שיצרתם בקטע הקודם, כמו
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.