במאמר הזה מוסבר איך להפעיל או להשבית תצוגות וירטואליות במכונה וירטואלית (VM).
אם אפליקציה שפועלת במכונה הווירטואלית דורשת מכשיר תצוגה, אבל אתם לא צריכים את הביצועים של GPU, אתם יכולים להגדיר את המכונה הווירטואלית כך שתשתמש במכשירי תצוגה וירטואליים. הפעלת מסכים וירטואליים במכונה וירטואלית מאפשרת להריץ במכונה הווירטואלית מכשירים של מסכים וירטואליים, כמו כלים לניהול מערכות מרחוק, תוכנות לשולחן עבודה מרוחק וצילום מסך.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות להפעלה או להשבתה של תצוגות וירטואליות במכונה וירטואלית, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין מכונות של Compute (v1) (roles/compute.instanceAdmin.v1) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות להפעלה או להשבתה של תצוגות וירטואליות במכונה וירטואלית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להפעיל או להשבית תצוגות וירטואליות במכונה וירטואלית, צריך את ההרשאות הבאות:
-
כדי להפעיל או להשבית מסכים וירטואליים במכונה וירטואלית קיימת:
compute.instances.updateDisplayDeviceבמכונה הווירטואלית -
כדי ליצור מכונה וירטואלית עם תצוגות וירטואליות מופעלות:
-
compute.instances.createבפרויקט - כדי להשתמש באימג' בהתאמה אישית ליצירת המכונה הווירטואלית (VM):
compute.images.useReadOnlyבקובץ אימג' - כדי להשתמש ב-snapshot ליצירת המכונה הווירטואלית:
compute.snapshots.useReadOnlyבקובץ ה-snapshot - כדי להשתמש בתבנית של הגדרות מכונה ליצירת המכונה הווירטואלית:
compute.instanceTemplates.useReadOnlyבתבנית של הגדרות המכונה - כדי להקצות רשת מדור קודם למכונה הווירטואלית:
compute.networks.useבפרויקט - כדי לציין כתובת IP סטטית למכונה הווירטואלית:
compute.addresses.useבפרויקט - כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת מדור קודם:
compute.networks.useExternalIpבפרויקט - כדי לציין רשת משנה למכונה הווירטואלית:
compute.subnetworks.useבפרויקט או ברשת המשנה שנבחרה - כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת VPC:
compute.subnetworks.useExternalIpבפרויקט או ברשת המשנה שנבחרה - כדי להגדיר מטא-נתונים של המכונה הווירטואלית:
compute.instances.setMetadataבפרויקט - כדי להגדיר תגים למכונה הווירטואלית:
compute.instances.setTagsבמכונה הווירטואלית - כדי להגדיר תוויות למכונה הווירטואלית:
compute.instances.setLabelsבמכונה הווירטואלית - כדי להגדיר חשבון שירות לשימוש של המכונה הווירטואלית:
compute.instances.setServiceAccountבמכונה הווירטואלית - כדי ליצור דיסק חדש למכונה הווירטואלית:
compute.disks.createבפרויקט - כדי לצרף דיסק קיים במצב קריאה-בלבד או במצב קריאה וכתיבה:
compute.disks.useבדיסק - כדי לצרף דיסק קיים במצב קריאה-בלבד:
compute.disks.useReadOnlyבדיסק
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
תמחור
אין עלויות שקשורות להפעלה או להשבתה של מסכים וירטואליים במכונה וירטואלית.
הגבלות
במכונות וירטואליות שמופעל בהן מסך וירטואלי, חלות המגבלות הבאות:
אם במכונה הווירטואלית פועל קובץ אימג' של מערכת הפעלה Windows מבוססת x64 בגרסה מוקדמת יותר מגרסה
v20190312, אחרי שמפעילים את המסכים הווירטואליים במכונה הווירטואלית, צריך להתקין את מנהל ההתקן של המסך הווירטואלי כמו שמתואר במסמך הזה. אם במכונה הווירטואלית פועלת גרסה מאוחרת יותר של קובץ אימג' של מערכת ההפעלה, הדרייבר כבר מותקן בקובץ האימג' של מערכת ההפעלה.אפשר להשתמש במכשיר תצוגה וירטואלי במכונה הווירטואלית רק אחרי שמערכת ההפעלה של האורח מופעלת ומנהל ההתקן של התצוגה הווירטואלית מאותחל.
אי אפשר להשתמש במכשירים של צגים וירטואליים במכונות וירטואליות שמריצות את פלטפורמת המעבד Sandy Bridge.
אי אפשר להשתמש במכשירי תצוגה וירטואלית ב-T2A Arm VMs.
הפעלת מסכים וירטואליים במכונה וירטואלית
כדי להפעיל תצוגות וירטואליות במכונה וירטואלית, בוחרים באחת מהשיטות הבאות שמתוארות במסמך הזה:
אם במכונה הווירטואלית מופעל קובץ אימג' של מערכת הפעלה Windows מבוססת x64 בגרסה מוקדמת יותר מגרסה v20190312, אחרי שמפעילים את המסכים הווירטואליים במכונה הווירטואלית, צריך להתקין את מנהל ההתקן של המסך הווירטואלי כמו שמתואר במסמך הזה.
יצירת מכונה וירטואלית עם הפעלה של מסכים וירטואליים
כדי ליצור מכונה וירטואלית עם תצוגות וירטואליות מופעלות, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Create an instance במסוף Cloud de Confiance .
מציינים את המאפיינים של המכונה הווירטואלית, כולל השם, האזור וסוג המכונה.
בקטע הצגת המכשיר, מסמנים את התיבה הפעלת הצגת המכשיר.
כדי ליצור את המכונה הווירטואלית (VM), לוחצים על האפשרות Create.
gcloud
כדי ליצור מכונה וירטואלית עם תצוגות וירטואליות מופעלות, משתמשים בפקודה gcloud compute instances create עם הדגל --enable-display-device.
gcloud compute instances create VM_NAME \
--enable-display-device \
--machine-type=MACHINE_TYPE \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
VM_NAME: שם ה-VM.
MACHINE_TYPE: סוג המכונה שבה רוצים להשתמש עבור המכונה הווירטואלית.
ZONE: האזור שבו רוצים ליצור את המכונה הווירטואלית.
Terraform
כדי ליצור מכונה וירטואלית עם תצוגות וירטואליות מופעלות, משתמשים במשאב Terraform עם הארגומנט enable_display שמוגדר לערך true.
לדוגמה, כדי ליצור מכונה וירטואלית באזור us-central1-c עם הפעלת תצוגות וירטואליות, ולציין את f1-micro כסוג המכונה, משתמשים במשאב הבא:
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
REST
כדי ליצור מכונה וירטואלית עם תצוגות וירטואליות מופעלות, שולחים בקשת POST אל ה-method instances.insert.
בגוף הבקשה, כוללים את השדה enableDisplay עם הערך true.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"name": "VM_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "project/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"displayDevice": {
"enableDisplay": true
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו רוצים ליצור את המכונה הווירטואלית.
ZONE: האזור שבו רוצים ליצור את המכונה הווירטואלית.
VM_NAME: שם ה-VM.
MACHINE_TYPE: סוג המכונה שבה רוצים להשתמש עבור המכונה הווירטואלית.
IMAGE_PROJECT: פרויקט התמונה שמכיל את תמונת מערכת ההפעלה, לדוגמהdebian-cloud. מידע נוסף על פרויקטים של תמונות נתמכות זמין במאמר תמונות ציבוריות.
IMAGE: מציינים אחת מהאפשרויות הבאות:גרסה ספציפית של תמונת מערכת ההפעלה – לדוגמה,
debian-12-bookworm-v20240617.משפחת תמונות, שצריכה להיות בפורמט
family/IMAGE_FAMILY. המאפיין הזה מציין את תמונת מערכת ההפעלה העדכנית ביותר שלא הוצאה משימוש. לדוגמה, אם מצייניםfamily/debian-12, נעשה שימוש בגרסה העדכנית ביותר במשפחת תמונות Debian 12. מידע נוסף על שימוש במשפחות של תמונות זמין במאמר בנושא שיטות מומלצות לשימוש במשפחות של תמונות.
מידע נוסף על יצירת מכונה וירטואלית זמין במאמר יצירת מכונה של Compute Engine והפעלה שלה.
הפעלת מסכים וירטואליים במכונה וירטואלית קיימת
לפני שמפעילים מסכים וירטואליים במכונה וירטואלית, חשוב לעצור את המכונה הווירטואלית.
כדי להפעיל תצוגות וירטואליות במכונה וירטואלית קיימת, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
בעמודה Name (שם), לוחצים על שם המכונה הווירטואלית.
ייפתח דף הפרטים של המכונה הווירטואלית.
לוחצים על עריכה.
ייפתח הדף לעריכת המאפיינים של המכונה הווירטואלית.
בקטע הצגת המכשיר, מסמנים את התיבה הפעלת הצגת המכשיר.
לוחצים על Save.
gcloud
כדי להפעיל תצוגות וירטואליות במכונה וירטואלית קיימת, משתמשים בפקודה gcloud compute instances update עם הדגל --enable-display-device.
gcloud compute instances update VM_NAME \
--enable-display-device \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
VM_NAME: שם ה-VM.
ZONE: האזור שבו נמצאת המכונה הווירטואלית.
REST
כדי להפעיל תצוגות וירטואליות במכונה וירטואלית קיימת, צריך לשלוח בקשת POST ל-method instances.updateDisplayDevice.
בגוף הבקשה, כוללים את השדה enableDisplay ומגדירים אותו לערך true.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateDisplayDevice
{
"enableDisplay": true
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו נמצאת המכונה הווירטואלית.
ZONE: האזור שבו נמצאת המכונה הווירטואלית.
VM_NAME: שם ה-VM.
השבתה של מסכים וירטואליים במכונת VM קיימת
לפני שמשביתים את המסכים הווירטואליים במכונה וירטואלית, חשוב לעצור את המכונה הווירטואלית.
כדי להשבית תצוגות וירטואליות במכונה וירטואלית קיימת, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
בעמודה Name (שם), לוחצים על שם המכונה הווירטואלית.
ייפתח דף הפרטים של המכונה הווירטואלית.
לוחצים על עריכה.
ייפתח הדף לעריכת המאפיינים של המכונה הווירטואלית.
בקטע הצגת מכשיר, מבטלים את הסימון בתיבה הפעלת הצגת מכשיר.
לוחצים על Save.
gcloud
כדי להשבית צגים וירטואליים במכונה וירטואלית קיימת, משתמשים בפקודה gcloud compute instances update עם הדגל --no-enable-display-device.
gcloud compute instances update VM_NAME \
--no-enable-display-device \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
VM_NAME: שם ה-VM.
ZONE: האזור שבו נמצאת המכונה הווירטואלית.
REST
כדי להשבית מסכים וירטואליים במכונה וירטואלית קיימת, צריך לשלוח בקשת POST ל-method instances.updateDisplayDevice.
בגוף הבקשה, כוללים את השדה enableDisplay ומגדירים אותו לערך false.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateDisplayDevice
{
"enableDisplay": false
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו נמצאת המכונה הווירטואלית.
ZONE: האזור שבו נמצאת המכונה הווירטואלית.
VM_NAME: שם ה-VM.
התקנה של מנהל ההתקן של התצוגה הווירטואלית
אם הפעלתם מסכים וירטואליים במכונת Windows וירטואלית שמופעל בה דיסק של מערכת הפעלה של Windows בגרסה מוקדמת יותר מגרסה v20190312, כדי להשתמש במכשיר מסך וירטואלי במכונה הווירטואלית, אתם צריכים להתקין את מנהל ההתקן של המסך הווירטואלי שסופק על ידי Cloud de Confiance by S3NS. אם במכונה הווירטואלית פועלת גרסה עדכנית יותר של קובץ אימג' של מערכת ההפעלה, מנהל ההתקן כבר מותקן ואפשר לדלג על הקטע הזה.
כדי להתקין את מנהל ההתקן של התצוגה הווירטואלית במכונה וירטואלית עם תצוגות וירטואליות מופעלות, צריך לבצע את הפעולות הבאות:
פותחים טרמינל ב-PowerShell כאדמין.
מתקינים את הרכיב
google-compute-engine-driver-gga:googet install google-compute-engine-driver-gga
אחרי שמפעילים מחדש את המכונה הווירטואלית, אפשר לוודא שהדרייבר הותקן בצורה נכונה כמו שמתואר בקטע הבא.
אימות ההתקנה של מנהל ההתקן של המסך הווירטואלי
אם הייתם צריכים להתקין באופן ידני את מנהל ההתקן של התצוגה הווירטואלית במכונה וירטואלית של Windows, כמו שמתואר בקטע הקודם, אתם יכולים לוודא שההתקנה בוצעה בהצלחה באופן הבא:
אם עדיין לא עשיתם זאת, מתחברים למכונה הווירטואלית של Windows.
פותחים את 'ניהול המכשירים'.
ברשימה Device Manager (ניהול מכשירים), ברשימה Display adapters (מתאמי תצוגה), מוודאים שמנהל ההתקן של Google Graphics Array (GGA) מופיע.
אם הדרייבר לא מופיע ברשימה, צריך להתקין מחדש את הדרייבר של המסך הווירטואלי כמו שמתואר במסמך הזה.