בדף הזה מוסבר איך להתקין ידנית את סביבת האורח במכונות וירטואליות (VM). סביבת האורח היא אוסף של סקריפטים, תהליכי רקע וקבצים בינאריים שמכונות צריכות כדי לפעול ב-Compute Engine. מידע נוסף זמין במאמר בנושא סביבת אורח.
ברוב המקרים, אם משתמשים באימג'ים ציבוריים של מערכת הפעלה שסופקו על ידי Google, סביבת האורח נכללת באופן אוטומטי. רשימה מלאה של תמונות מערכת הפעלה שכוללות אוטומטית את סביבת האורח זמינה במאמר פרטים על מערכת ההפעלה.
אם סביבת האורח לא מותקנת או שהיא לא עדכנית, צריך להתקין או לעדכן אותה. כדי לזהות את התרחישים האלה, אפשר לעיין במאמר מתי להתקין או לעדכן את סביבת האורח.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי 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
-
- הגדרת אזור ותחום כברירת מחדל
מתי כדאי להתקין או לעדכן את סביבת האורח
ברוב המקרים, אין צורך להתקין או לעדכן את סביבת האורח באופן ידני. בקטעים הבאים מוסבר מתי צריך להתקין או לעדכן באופן ידני.
בדיקת דרישות ההתקנה
לפני שמתקינים את סביבת האורח, צריך לבצע את השלבים שבקטע אימות של סביבת האורח כדי לבדוק אם סביבת האורח פועלת במופע. אם סביבת האורח זמינה במופע שלכם אבל היא לא עדכנית, צריך לעדכן את סביבת האורח.
יכול להיות שתצטרכו להתקין את סביבת האורח במקרים הבאים:
תמונת מערכת ההפעלה שסופקה על ידי Google לא כוללת את סביבת האורח.
מייבאים תמונה בהתאמה אישית או דיסק וירטואלי ל-Compute Engine ובוחרים למנוע התקנה אוטומטית של סביבת האורח.
כשמייבאים דיסקים וירטואליים או תמונות בהתאמה אישית, אפשר לאפשר ל-Compute Engine להתקין את סביבת האורח בשבילכם. עם זאת, אם בחרתם לא להתקין את סביבת האורח במהלך תהליך הייבוא, תצטרכו להתקין אותה באופן ידני.
מעבירים מכונות וירטואליות ל-Compute Engine באמצעות Migrate to Virtual Machines.
הוראות להתקנת סביבת האורח מופיעות במאמר בנושא שיטות התקנה.
בדיקת דרישות העדכון
יכול להיות שתצטרכו לעדכן את סביבת האורח במצבים הבאים:
יש לך מופעים שמשתמשים בתמונות של מערכת הפעלה מגרסה מוקדמת יותר מ-
v20141218.אתם משתמשים באימג' של מערכת הפעלה שלא כולל את האופטימיזציות של סביבת האורח לדיסקים מקומיים מסוג SSD.
כדי לעדכן את סביבת האורח, אפשר לעיין במאמר בנושא עדכון סביבת האורח.
שיטות התקנה
יש כמה דרכים להתקין את סביבת האורח. בוחרים אחת מהאפשרויות הבאות:
כלי הייבוא. כלי הייבוא הוא האפשרות המומלצת. עם זאת, כלי הייבוא מתקין את סביבת האורח ומבצע גם עדכוני הגדרה אחרים בתמונה, כמו הגדרת רשתות, הגדרת טוען האתחול והתקנת Google Cloud CLI. הוראות מפורטות מופיעות במאמר יצירת תמונה שאפשר להפעיל ממנה את המחשב.
כלי הייבוא תומך במגוון רחב של מערכות הפעלה וגרסאות. מידע נוסף זמין בדף הפרטים של מערכת ההפעלה.
התקנה ידנית. צריך לבחור אחת מהאפשרויות:
- מתחברים למכונה באמצעות SSH או RDP ומתקינים את סביבת האורח במקום
- משכפלים את דיסק האתחול ומתקינים את סביבת האורח באמצעות סקריפט לטעינה בזמן ההפעלה.
מערכות הפעלה נתמכות
אפשר להתקין או לעדכן את סביבת האורח במכונות וירטואליות שמשתמשות בגרסאות של תמונות מערכת ההפעלה במחזור החיים של הזמינות הכללית (GA) או בשלב מחזור החיים של התמיכה המורחבת.
כדי לעיין ברשימה של גרסאות תמונות של מערכות הפעלה ובשלב מחזור החיים שלהן ב-Compute Engine, אפשר לעיין במאמר פרטים על מערכות הפעלה.
מגבלות
אי אפשר להתקין ידנית את כלי הייבוא או להשתמש בו כדי להתקין סביבות אורח במערכות הפעלה של Fedora CoreOS ו-Container-optimized (COS). ב-COS, Google ממליצה להשתמש בתמונות ציבוריות ש-Google מספקת, שכוללות את סביבת האורח כרכיב ליבה.
התקנת סביבת האורח
כדי להתקין ידנית את סביבת האורח, בוחרים אחת מהשיטות הבאות, בהתאם ליכולת שלכם להתחבר למופע:
- אם אתם יכולים להתחבר למכונה באמצעות SSH או RDP, תתקינו את סביבת האורח במקום.
- אם אי אפשר להתחבר למופע, צריך להתקין את סביבת האורח על ידי שכפול דיסק האתחול שלה ושימוש בסקריפט לטעינה בזמן ההפעלה.
התקנת סביבת האורח במקום
משתמשים בשיטה הזו כדי להתקין את סביבת האורח אם אפשר להתחבר למכונת היעד באמצעות SSH. אם אתם לא מצליחים להתחבר למופע כדי להתקין את סביבת האורח, אתם יכולים לשכפל את דיסק האתחול ולהשתמש בסקריפט לטעינה בזמן ההפעלה כדי להתקין את סביבת האורח.
ההליך הזה שימושי לתמונות שיובאו אם אתם יכולים להתחבר באמצעות אימות מבוסס-סיסמה של SSH. אפשר גם להשתמש בו כדי להתקין מחדש את סביבת האורח, אם יש לכם לפחות חשבון משתמש אחד עם SSH פונקציונלי שמבוסס על מפתח.
CentOS/RHEL/Rocky
מבצעים את השלבים שמתאימים לגרסת CentOS/RHEL/Rocky שבה אתם משתמשים.
גרסה 10 ואילך
- מוודאים שגרסת מערכת ההפעלה נתמכת.
קובעים את הגרסה של CentOS/RHEL/Rocky. לאחר מכן, יוצרים את קובץ מאגר המקור,
/etc/yum.repos.d/google-cloud.repo:eval $(grep VERSION_ID /etc/os-release) sudo tee /etc/yum.repos.d/google-cloud.repo << EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key-v${VERSION_ID%%.*}.gpg EOMמעדכנים את רשימות החבילות:
sudo yum makecache sudo yum updateinfo
מתקינים את חבילות סביבת האורח:
sudo yum install -y google-compute-engine google-osconfig-agent
מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
גרסה 9 או גרסה ישנה יותר
- מוודאים שגרסת מערכת ההפעלה נתמכת.
קובעים את הגרסה של CentOS/RHEL/Rocky. לאחר מכן, יוצרים את קובץ מאגר המקור,
/etc/yum.repos.d/google-cloud.repo:eval $(grep VERSION_ID /etc/os-release) sudo tee /etc/yum.repos.d/google-cloud.repo << EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOMמעדכנים את רשימות החבילות:
sudo yum makecache sudo yum updateinfo
מתקינים את חבילות סביבת האורח:
sudo yum install -y google-compute-engine google-osconfig-agent
מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
Debian
מבצעים את השלבים שמתאימים לגרסת Debian.
Debian 13 ואילך
- מוודאים שגרסת מערכת ההפעלה נתמכת.
מתקינים את מפתח ה-GPG של המאגר הציבורי ב-
/etc/apt/keyrings:sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpgקובעים את שם הפצת Debian. לאחר מכן, יוצרים את קובץ רשימת המקורות,
/etc/apt/sources.list.d/google-cloud.list:eval $(grep VERSION_CODENAME /etc/os-release) sudo tee /etc/apt/sources.list.d/google-cloud.list << EOM deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main EOMמעדכנים את רשימות החבילות:
sudo apt updateמתקינים את חבילות סביבת האורח:
sudo apt install -y gce-configs-trixie google-compute-engine google-osconfig-agentמפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף שלו כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
Debian 12 וגרסאות קודמות
- מוודאים שגרסת מערכת ההפעלה נתמכת.
מתקינים את מפתח ה-GPG של המאגר הציבורי ב-
/etc/apt/keyrings:sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpgקובעים את שם הפצת Debian. לאחר מכן יוצרים את קובץ רשימת המקורות,
/etc/apt/sources.list.d/google-cloud.list:eval $(grep VERSION_CODENAME /etc/os-release) sudo tee /etc/apt/sources.list.d/google-cloud.list << EOM deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-${VERSION_CODENAME}-stable main EOMמעדכנים את רשימות החבילות:
sudo apt updateמתקינים את חבילות סביבת האורח:
sudo apt install -y google-cloud-packages-archive-keyring sudo apt install -y google-compute-engine google-osconfig-agentמפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
Ubuntu
מוודאים שגרסת מערכת ההפעלה נתמכת.
מפעילים את מאגר Universe. Canonical מפרסמת חבילות עבור סביבת האורח שלה במאגר Universe.
sudo apt-add-repository universe
מעדכנים את רשימות החבילות:
sudo apt update
מתקינים את חבילות סביבת האורח:
sudo apt install -y google-compute-engine google-osconfig-agent
מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף שלו כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
SLES
מוודאים שגרסת מערכת ההפעלה נתמכת.
הפעלת מודול הענן הציבורי
product=$(sudo SUSEConnect --list-extensions | grep -o "sle-module-public-cloud.*") [[ -n "$product" ]] && sudo SUSEConnect -p "$product"
מעדכנים את רשימות החבילות:
sudo zypper refresh
מתקינים את חבילות סביבת האורח:
sudo zypper install -y google-guest-{agent,configs,oslogin} \ google-osconfig-agent sudo systemctl enable /usr/lib/systemd/system/google-*מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.
מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.
Windows
לפני שמתחילים, צריך לוודא שגרסת מערכת ההפעלה נתמכת.
כדי להתקין את סביבת האורח של Windows, מריצים את הפקודות הבאות בשורת פקודה של PowerShell בגרסה 3.0 ומעלה עם הרשאות אדמין. הפקודה Invoke-WebRequest דורשת PowerShell בגרסה 3.0 ואילך.
מורידים ומתקינים את
GooGet.[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest https://github.com/google/googet/releases/download/v2.18.3/googet.exe -OutFile $env:temp\googet.exe; & "$env:temp\googet.exe" -root C:\ProgramData\GooGet -noconfirm install -sources ` https://packages.cloud.google.com/yuck/repos/google-compute-engine-stable googet; Remove-Item "$env:temp\googet.exe"
במהלך ההתקנה,
GooGetמוסיף תוכן לסביבת המערכת. אחרי שההתקנה מסתיימת, מפעילים מסוף PowerShell חדש. לחלופין, צריך לציין את הנתיב המלא לקובץgooget.exe(C:\ProgramData\GooGet\googet.exe).פותחים מסוף חדש ומוסיפים את מאגר
google-compute-engine-stable.googet addrepo google-compute-engine-stable https://packages.cloud.google.com/yuck/repos/google-compute-engine-stable
מתקינים את חבילות הליבה של סביבת האורח של Windows.
googet -noconfirm install google-compute-engine-windows ` google-compute-engine-sysprep google-compute-engine-metadata-scripts ` google-compute-engine-vss google-osconfig-agent
מתקינים את חבילת סביבת האורח של Windows (אופציונלי).
googet -noconfirm install google-compute-engine-auto-updater
שימוש בפקודה
googetכדי לראות את החבילות הזמינות, מריצים את הפקודה
googet available.כדי לראות את החבילות המותקנות, מריצים את הפקודה
googet installed.כדי לעדכן לגרסת החבילה האחרונה, מריצים את הפקודה
googet update.כדי להציג פקודות נוספות, מריצים את הפקודה
googet help.
שכפול דיסק האתחול ושימוש בסקריפט לטעינה בזמן ההפעלה
אם אתם לא מצליחים להתחבר למופע כדי להתקין ידנית את סביבת האורח, אתם יכולים להתקין אותה באמצעות התהליך הזה, שכולל את השלבים הבאים שאפשר לבצע במסוף Cloud de Confiance או ב-Cloud Shell.
השיטה הזו רלוונטית רק להפצות של Linux. ב-Windows, אפשר להשתמש באחת משתי שיטות ההתקנה האחרות.
משתמשים ב-Cloud Shell כדי להריץ את התהליך הזה. כדי להריץ את התהליך הזה אם אתם לא משתמשים ב-Cloud Shell, צריך להתקין את מעבד ה-JSON של שורת הפקודה jq.
המעבד הזה מסנן את הפלט של ה-CLI של gcloud.
ב-Cloud Shell, הכלי jq מותקן מראש.
CentOS/RHEL/Rocky
מבצעים את השלבים שמתאימים לגרסת CentOS/RHEL/Rocky שבה אתם משתמשים.
גרסה 10 ואילך
מוודאים שגרסת מערכת ההפעלה נתמכת.
יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע של rescue.
מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.
מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.
export PROB_INSTANCE_NAME=VM_NAME
מחליפים את VM_NAME בשם המכונה הבעייתית.
מפסיקים את המופע הבעייתי.
gcloud compute instances stop "$PROB_INSTANCE_NAME"
מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.
export PROB_INSTANCE_DISK="$(gcloud compute instances describe \ "$PROB_INSTANCE_NAME" --format='json' | jq -r \ '.disks[] | select(.boot == true) | .source')"
יוצרים קובץ snapshot של דיסק האתחול.
export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot" gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \ --snapshot-names "$DISK_SNAPSHOT"יוצרים דיסק חדש מקובץ ה-snapshot.
export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk" gcloud compute disks create "$NEW_DISK" \ --source-snapshot="$DISK_SNAPSHOT"מוחקים את תמונת המצב.
gcloud compute snapshots delete "$DISK_SNAPSHOT"
מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא
/dev/sdb. ב-CentOS/RHEL/Rocky Linux, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של הבסיס. לכן, מזהה עוצמת הקול צריך להיות/dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblkכדי לקבוע את מזהה עוצמת הקול.gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
מתחברים למכונת החילוץ באמצעות SSH.
gcloud compute ssh rescue
מבצעים את השלבים הבאים במופע החילוץ.
מבצעים Mount לנפח הבסיס של הדיסק החדש.
export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol" DEV="/dev/sdb1" sudo mkdir "$NEW_DISK_MOUNT_POINT" sudo mount -o nouuid "$DEV" "$NEW_DISK_MOUNT_POINT"
יוצרים את הסקריפט
rc.local.cat <<'EOF' >/tmp/rc.local #!/bin/bash echo "== Installing Google guest environment for CentOS/RHEL/Rocky Linux ==" sleep 30 # Wait for network. echo "Determining CentOS/RHEL/Rocky Linux version..." eval $(grep VERSION_ID /etc/os-release) if [[ -z $VERSION_ID ]]; then echo "ERROR: Could not determine version of CentOS/RHEL/Rocky Linux." exit 1 fi echo "Updating repo file..." tee "/etc/yum.repos.d/google-cloud.repo" << EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key-v${VERSION_ID%%.*}.gpg EOM echo "Running yum makecache..." yum makecache echo "Running yum updateinfo..." yum updateinfo echo "Running yum install google-compute-engine..." yum install -y google-compute-engine rpm -q google-compute-engine if [[ $? -ne 0 ]]; then echo "ERROR: Failed to install ${pkg}." fi echo "Removing this rc.local script." rm /etc/rc.d/rc.local # Move back any previous rc.local: if [[ -f "/etc/moved-rc.local" ]]; then echo "Restoring a previous rc.local script." mv "/etc/moved-rc.local" "/etc/rc.d/rc.local" fi echo "Restarting the instance..." reboot EOFמגבים את קובץ
rc.localהקיים, מעבירים את סקריפטrc.localהזמני למקומו בדיסק המותקן, ואז מגדירים את ההרשאה שלו להפעלה בעת האתחול. הסקריפט הזמני מחליף את הסקריפט המקורי כשהאתחול מסתיים. כדי לעשות זאת, מריצים את הפקודה הבאה:if [ -f "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" ]; then sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" \ "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local" fi sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.
sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \ "$NEW_DISK_MOUNT_POINT"
יוצאים מסשן ה-SSH למכונת ההצלה.
מנתקים את הדיסק החדש ממופע החילוץ.
gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.
מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.
לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.
כשמופע ההחלפה מופעל, הסקריפט הזמני
rc.localמופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמניrc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME
מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.
המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני
rc.localיסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.מוודאים שאפשר להתחבר למכונה באמצעות SSH.
אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.
גרסה 9 או גרסה ישנה יותר
מוודאים שגרסת מערכת ההפעלה נתמכת.
יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע של rescue.
מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.
מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.
export PROB_INSTANCE_NAME=VM_NAME
מחליפים את VM_NAME בשם המכונה הבעייתית.
מפסיקים את המופע הבעייתי.
gcloud compute instances stop "$PROB_INSTANCE_NAME"
מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.
export PROB_INSTANCE_DISK="$(gcloud compute instances describe \ "$PROB_INSTANCE_NAME" --format='json' | jq -r \ '.disks[] | select(.boot == true) | .source')"
יוצרים קובץ snapshot של דיסק האתחול.
export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot" gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \ --snapshot-names "$DISK_SNAPSHOT"יוצרים דיסק חדש מקובץ ה-snapshot.
export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk" gcloud compute disks create "$NEW_DISK" \ --source-snapshot="$DISK_SNAPSHOT"מחיקת תמונת המצב:
gcloud compute snapshots delete "$DISK_SNAPSHOT"
מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא
/dev/sdb. ב-CentOS/RHEL/Rocky Linux, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של הבסיס. לכן, מזהה עוצמת הקול צריך להיות/dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblkכדי לקבוע את מזהה עוצמת הקול.gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
מתחברים למכונת החילוץ באמצעות SSH.
gcloud compute ssh rescue
מבצעים את השלבים הבאים במופע החילוץ.
מבצעים Mount לנפח הבסיס של הדיסק החדש.
export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol" DEV="/dev/sdb1" sudo mkdir "$NEW_DISK_MOUNT_POINT" sudo mount -o nouuid "$DEV" "$NEW_DISK_MOUNT_POINT"
יוצרים את הסקריפט
rc.local.cat <<'EOF' >/tmp/rc.local #!/bin/bash echo "== Installing Google guest environment for CentOS/RHEL/Rocky Linux ==" sleep 30 # Wait for network. echo "Determining CentOS/RHEL/Rocky Linux version..." eval $(grep VERSION_ID /etc/os-release) if [[ -z $VERSION_ID ]]; then echo "ERROR: Could not determine version of CentOS/RHEL/Rocky Linux." exit 1 fi echo "Updating repo file..." tee "/etc/yum.repos.d/google-cloud.repo" << EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM echo "Running yum makecache..." yum makecache echo "Running yum updateinfo..." yum updateinfo echo "Running yum install google-compute-engine..." yum install -y google-compute-engine rpm -q google-compute-engine if [[ $? -ne 0 ]]; then echo "ERROR: Failed to install ${pkg}." fi echo "Removing this rc.local script." rm /etc/rc.d/rc.local # Move back any previous rc.local: if [[ -f "/etc/moved-rc.local" ]]; then echo "Restoring a previous rc.local script." mv "/etc/moved-rc.local" "/etc/rc.d/rc.local" fi echo "Restarting the instance..." reboot EOFמגבים את קובץ
rc.localהקיים, מעבירים את סקריפטrc.localהזמני למקומו בדיסק המותקן, ואז מגדירים את ההרשאה שלו להפעלה בעת האתחול. הסקריפט הזמני מחליף את הסקריפט המקורי כשהאתחול מסתיים. כדי לעשות זאת, מריצים את הפקודה הבאה:if [ -f "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" ]; then sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" \ "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local" fi sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.
sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \ "$NEW_DISK_MOUNT_POINT"
יוצאים מסשן ה-SSH למכונת ההצלה.
מנתקים את הדיסק החדש ממופע החילוץ.
gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.
מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.
לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.
כשמופע ההחלפה מופעל, הסקריפט הזמני
rc.localמופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמניrc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME
מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.
המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני
rc.localיסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.מוודאים שאפשר להתחבר למכונה באמצעות SSH.
אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.
Debian
לוודא שגרסת מערכת ההפעלה נתמכת
יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע החילוץ.
מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.
מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.
export PROB_INSTANCE_NAME=VM_NAME
מחליפים את VM_NAME בשם המכונה הבעייתית.
מפסיקים את המופע הבעייתי.
gcloud compute instances stop "$PROB_INSTANCE_NAME"
מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.
export PROB_INSTANCE_DISK="$(gcloud compute instances describe \ "$PROB_INSTANCE_NAME" --format='json' | jq -r \ '.disks[] | select(.boot == true) | .source')"
יוצרים קובץ snapshot של דיסק האתחול.
export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot" gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \ --snapshot-names "$DISK_SNAPSHOT"יוצרים דיסק חדש מקובץ ה-snapshot.
export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk" gcloud compute disks create "$NEW_DISK" \ --source-snapshot="$DISK_SNAPSHOT"מחיקת תמונת המצב:
gcloud compute snapshots delete "$DISK_SNAPSHOT"
מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא
/dev/sdb. ב-Debian, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול הבסיסית. לכן, מזהה עוצמת הקול צריך להיות/dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblkכדי לקבוע את מזהה עוצמת הקול.gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
מתחברים למכונת החילוץ באמצעות SSH.
gcloud compute ssh rescue
מבצעים את השלבים הבאים במופע החילוץ.
מבצעים Mount לנפח הבסיס של הדיסק החדש.
export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol" DEV="/dev/sdb1" sudo mkdir "$NEW_DISK_MOUNT_POINT" sudo mount "$DEV" "$NEW_DISK_MOUNT_POINT"
יוצרים את הסקריפט
rc.local.cat <<'EOF' >/tmp/rc.local #!/bin/bash echo "== Installing Google guest environment for Debian ==" export DEBIAN_FRONTEND=noninteractive sleep 30 # Wait for network. echo "Determining Debian version..." eval $(grep VERSION_CODENAME /etc/os-release) if [[ -z $VERSION_CODENAME ]]; then echo "ERROR: Could not determine Debian version." exit 1 fi echo "Adding GPG key for Google cloud repo." curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpg echo "Updating repo file..." tee "/etc/apt/sources.list.d/google-cloud.list" << EOM deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-${VERSION_CODENAME}-stable main EOM echo "Running apt update..." apt update echo "Installing packages..." for pkg in google-cloud-packages-archive-keyring google-compute-engine; do echo "Running apt install ${pkg}..." apt install -y ${pkg} if [[ $? -ne 0 ]]; then echo "ERROR: Failed to install ${pkg}." fi done echo "Removing this rc.local script." rm /etc/rc.local # Move back any previous rc.local: if [[ -f "/etc/moved-rc.local" ]]; then echo "Restoring a previous rc.local script." mv "/etc/moved-rc.local" "/etc/rc.local" fi echo "Restarting the instance..." reboot EOFמגבים את קובץ
rc.localהקיים, מעבירים את סקריפטrc.localהזמני למקומו בדיסק המותקן, ואז מגדירים את ההרשאה שלו להפעלה בעת האתחול. הסקריפט הזמני מחליף את הסקריפט המקורי כשהאתחול מסתיים. כדי לעשות זאת, מריצים את הפקודה הבאה:if [[ -f "$NEW_DISK_MOUNT_POINT/etc/rc.local" ]]; then sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.local" \ "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local" fi sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.local" sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.local" sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.local"
מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.
sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
יוצאים מסשן ה-SSH למכונת ההצלה.
מנתקים את הדיסק החדש ממופע החילוץ.
gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
יוצרים מכונה חדשה שתשמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.
מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.
לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.
כשמופע ההחלפה מופעל, הסקריפט הזמני
rc.localמופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמניrc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME
מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.
המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני
rc.localיסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.מוודאים שאפשר להתחבר למכונה באמצעות SSH.
אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.
Ubuntu
לוודא שגרסת מערכת ההפעלה נתמכת
יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע החילוץ.
מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.
מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.
export PROB_INSTANCE_NAME=VM_NAME
מחליפים את VM_NAME בשם המכונה הבעייתית.
מפסיקים את המופע הבעייתי.
gcloud compute instances stop "$PROB_INSTANCE_NAME"
מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.
export PROB_INSTANCE_DISK="$(gcloud compute instances describe \ "$PROB_INSTANCE_NAME" --format='json' | jq -r \ '.disks[] | select(.boot == true) | .source')"
יוצרים קובץ snapshot של דיסק האתחול.
export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot" gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \ --snapshot-names "$DISK_SNAPSHOT"יוצרים דיסק חדש מקובץ ה-snapshot.
export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk" gcloud compute disks create "$NEW_DISK" \ --source-snapshot="$DISK_SNAPSHOT"מחיקת תמונת המצב:
gcloud compute snapshots delete "$DISK_SNAPSHOT"
מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא
/dev/sdb. ב-Ubuntu, כברירת מחדל, התווית של נפח הבסיס היא 1, ולכן מזהה הנפח צריך להיות*/dev/sdb*. כדי להגדיר הגדרות בהתאמה אישית, משתמשים ב-lsblkכדי לקבוע את מזהה הנפח.gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
מתחברים למכונת החילוץ באמצעות SSH.
gcloud compute ssh rescue
מבצעים את השלבים הבאים במופע החילוץ.
מבצעים Mount לנפח הבסיס של הדיסק החדש.
export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol" DEV="/dev/sdb1" sudo mkdir "$NEW_DISK_MOUNT_POINT" sudo mount "$DEV" "$NEW_DISK_MOUNT_POINT"
יוצרים את הסקריפט
rc.local.cat <<'EOF' >/tmp/rc.local #!/bin/bash echo "== Installing a Linux guest environment for Ubuntu ==" sleep 30 # Wait for network. echo "Running apt update..." apt update echo "Installing packages..." echo "Running apt install google-compute-engine..." apt install -y google-compute-engine if [[ $? -ne 0 ]]; then echo "ERROR: Failed to install ${pkg}." fi echo "Removing this rc.local script." rm /etc/rc.local # Move back any previous rc.local: if [[ -f "/etc/moved-rc.local" ]]; then echo "Restoring a previous rc.local script." mv "/etc/moved-rc.local" "/etc/rc.local" fi echo "Restarting the instance..." reboot EOFמגבים את קובץ
rc.localהקיים, מעבירים את סקריפטrc.localהזמני למקומו בדיסק המותקן, ואז מגדירים את ההרשאה שלו להפעלה בעת האתחול. הסקריפט הזמני מחליף את הסקריפט המקורי כשהאתחול מסתיים. כדי לעשות זאת, מריצים את הפקודה הבאה:if [[ -f "$NEW_DISK_MOUNT_POINT/etc/rc.local" ]]; then sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.local" \ "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local" fi sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.local" sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.local" sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.local"
מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.
sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
יוצאים מסשן ה-SSH למכונת ההצלה.
מנתקים את הדיסק החדש ממופע החילוץ.
gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
יוצרים מכונה חדשה שתשמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.
מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.
לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.
כשמופע ההחלפה מופעל, הסקריפט הזמני
rc.localמופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמניrc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME
מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.
המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני
rc.localיסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.מוודאים שאפשר להתחבר למכונה באמצעות SSH.
אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.
עדכון סביבת האורח
אם מופיעה הודעה שסביבת האורח מיושנת, צריך לעדכן את החבילות של מערכת ההפעלה באופן הבא:
CentOS/RHEL/Rocky
כדי לעדכן את מערכות ההפעלה CentOS, RHEL ו-Rocky Linux, מריצים את הפקודות הבאות:
sudo yum makecache sudo yum install google-compute-engine google-compute-engine-oslogin \ google-guest-agent google-osconfig-agent
Debian
כדי לעדכן מערכות הפעלה של Debian, מריצים את הפקודות הבאות:
sudo apt update sudo apt install google-compute-engine google-compute-engine-oslogin \ google-guest-agent google-osconfig-agent
Ubuntu
כדי לעדכן מערכות הפעלה של Ubuntu, מריצים את הפקודות הבאות:
sudo apt update sudo apt install google-compute-engine google-compute-engine-oslogin \ google-guest-agent google-osconfig-agent
SLES
כדי לעדכן מערכות הפעלה של SLES, מריצים את הפקודות הבאות:
sudo zypper refresh
sudo zypper install google-guest-{agent,configs,oslogin} \
google-osconfig-agent
Windows
כדי לעדכן מערכות הפעלה של Windows, מריצים את הפקודה הבאה:
googet update
אימות סביבת האורח
כדי לבדוק אם סביבת אורח מותקנת, בודקים את יומני המערכת שמוצגים במסוף בזמן הפעלת המופע, או מציגים את רשימת החבילות המותקנות בזמן החיבור למופע.
הצגת יומני המסוף הצפויים עבור סביבת האורח
בטבלה הזו מופיע סיכום של הפלט הצפוי של יומני המסוף שנוצרים על ידי מופעים עם סביבות אורח תקינות בזמן ההפעלה שלהם.
| מערכת הפעלה | ניהול השירות | הפלט הצפוי |
|---|---|---|
| CentOS/RHEL/Rocky Linux Debian Ubuntu SLES מערכת הפעלה שמותאמת לקונטיינרים 89 ואילך |
systemd | google_guest_agent: GCE Agent Started (version YYYYMMDD.NN) google_metadata_script_runner: Starting startup scripts (version YYYYMMDD.NN) OSConfigAgent Info: OSConfig Agent (version YYYYMMDD.NN) |
| מערכת הפעלה שמותאמת לקונטיינרים, גרסה 85 ומגרסאות ישנות יותר | systemd | Started Google Compute Engine Accounts Daemon Started Google Compute Engine Network Daemon Started Google Compute Engine Clock Skew Daemon Started Google Compute Engine Instance Setup Started Google Compute Engine Startup Scripts Started Google Compute Engine Shutdown Scripts |
| Windows | GCEGuestAgent: GCE Agent Started (version YYYYMMDD.NN) GCEMetadataScripts: Starting startup scripts (version YYYYMMDD.NN) OSConfigAgent Info: OSConfig Agent (version YYYYMMDD.NN) |
כדי להציג את יומני המסוף של מופע, פועלים לפי השלבים הבאים.
המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
- בוחרים את המופע שרוצים לבדוק.
- להפעיל מחדש או לאפס את המכונה.
- בקטע Logs, לוחצים על יציאה טורית 1 (console).
- מחפשים את הפלט הצפוי בטבלה שמופיעה לפני השלבים האלה.
gcloud
- להפעיל מחדש או לאפס את המכונה.
משתמשים בפקודת המשנה
gcloud compute instances get-serial-port-outputכדי להתחבר באמצעות Google Cloud CLI. לדוגמה:gcloud compute instances get-serial-port-output VM_NAME
מחליפים את VM_NAME בשם המכונה שרוצים לבדוק.
מחפשים את הפלט הצפוי בטבלה שמופיעה לפני השלבים האלה.
צפייה בשירותים שנטענו לפי גרסת מערכת ההפעלה
בקטע הזה מופיע סיכום של השירותים שצריך לטעון במופעים עם סביבות אורח תקינות. צריך להריץ את הפקודה כדי להציג את רשימת השירותים אחרי שמתחברים למופע. לכן, אפשר לבצע את הבדיקה הזו רק אם יש לכם גישה למופע.
CentOS/RHEL/Rocky
כדי לראות את השירותים שנטענו בהפצות של CentOS, RHEL ו-Rocky Linux, מריצים את הפקודה הבאה:
sudo systemctl list-unit-files | grep google | grep enabled
הפלט אמור להיראות כך:
google-disk-expand.service enabled google-guest-agent.service enabled google-osconfig-agent.service enabled google-shutdown-scripts.service enabled google-startup-scripts.service enabled google-oslogin-cache.timer enabled
Debian
כדי לראות את השירותים שנטענו בהפצות של Debian, מריצים את הפקודה הבאה:
sudo systemctl list-unit-files | grep google | grep enabled
הפלט אמור להיראות כך:
google-disk-expand.service enabled google-guest-agent.service enabled google-osconfig-agent.service enabled google-shutdown-scripts.service enabled google-startup-scripts.service enabled google-oslogin-cache.timer enabled
Ubuntu
כדי לראות את השירותים שנטענו בהפצות של Ubuntu, מריצים את הפקודה הבאה:
sudo systemctl list-unit-files | grep google | grep enabled
הפלט אמור להיראות כך:
google-guest-agent.service enabled google-osconfig-agent.service enabled google-shutdown-scripts.service enabled google-startup-scripts.service enabled google-oslogin-cache.timer enabled
מערכת הפעלה שמותאמת לקונטיינרים
כדי לראות את השירותים שנטענו בהפצות של מערכת הפעלה שמותאמת לקונטיינרים, מריצים את הפקודה הבאה:
sudo systemctl list-unit-files | grep google
הפלט אמור להיראות כך:
var-lib-google.mount disabled google-guest-agent.service disabled google-osconfig-agent.service disabled google-osconfig-init.service disabled google-oslogin-cache.service static google-shutdown-scripts.service disabled google-startup-scripts.service disabled var-lib-google-remount.service static google-oslogin-cache.timer disabled
SLES 12+
כדי לראות את השירותים שנטענו בגרסאות SLES 12 ואילך, מריצים את הפקודה הבאה:
sudo systemctl list-unit-files | grep google | grep enabled
הפלט אמור להיראות כך:
google-guest-agent.service enabled google-osconfig-agent.service enabled google-shutdown-scripts.service enabled google-startup-scripts.service enabled google-oslogin-cache.timer enabled
Windows
כדי לראות את השירותים שנטענו בהפצות של Windows, מריצים את הפקודה הבאה:
Get-Service GCEAgent Get-ScheduledTask GCEStartup
הפלט אמור להיראות כך:
Running GCEAgent GCEAgent GCEStartup Ready
הצגת חבילות מותקנות לפי גרסת מערכת ההפעלה
בקטע הזה מופיע סיכום של החבילות שצריך להתקין במופעים עם סביבות אורח פעילות. צריך להריץ את הפקודה כדי להציג את רשימת החבילות המותקנות אחרי שמתחברים למופע. לכן, אפשר לבצע את הבדיקה הזו רק אם יש לכם גישה למופע.
מידע נוסף על החבילות האלה זמין במאמר בנושא רכיבים של סביבת האורח.
CentOS/RHEL/Rocky
כדי להציג את החבילות המותקנות ואת גרסאות החבילות בהפצות של CentOS, RHEL ו-Rocky Linux, מריצים אחת מהפקודות הבאות:
כדי לראות את החבילות המותקנות, מריצים את הפקודה הבאה:
rpm -qa --queryformat '%{NAME}\n' | grep -iE 'google|gce'הפלט אמור להיראות כך: רשימת החבילות עשויה להשתנות. יכול להיות שגם רכיבים כמו
google-cloud-cli-anthoscliייכללו. תמונות RHEL יכולות להכיל חבילות ספציפיות לגרסה, לדוגמה,google-rhui-client-rhel8, או וריאציות ספציפיות ל-SAP.google-osconfig-agent google-compute-engine-oslogin google-guest-agent gce-disk-expand google-compute-engine google-cloud-cli google-cloud-ops-agent
כדי לראות את גרסאות החבילה, מריצים את הפקודה הבאה:
rpm -qa --queryformat '%{NAME}-%{VERSION}\n' | grep -iE 'google|gce'הפלט אמור להיראות כך: רשימת החבילות עשויה להשתנות. יכול להיות שגם רכיבים כמו
google-cloud-cli-anthoscliייכללו. תמונות RHEL יכולות להכיל חבילות ספציפיות לגרסה, לדוגמה,google-rhui-client-rhel8, או וריאציות ספציפיות ל-SAP.google-osconfig-agent-20251028.00 google-compute-engine-oslogin-20250821.00 google-guest-agent-20251205.00 gce-disk-expand-20250820.00 google-compute-engine-20250821.00 google-cloud-cli-551.0.0 google-cloud-ops-agent-2.63.0-1
Debian
כדי לראות את החבילות המותקנות בהפצות של Debian, מריצים את הפקודה הבאה:
apt list --installed | grep -i google
הפלט אמור להיראות כך:
gce-disk-expand google-cloud-packages-archive-keyring google-cloud-sdk google-compute-engine-oslogin google-compute-engine google-guest-agent google-osconfig-agent
SUSE (SLES)
כדי לראות את החבילות המותקנות ואת גרסאות החבילות בהפצות של SUSE (SLES), מריצים אחת מהפקודות הבאות:
כדי לראות את החבילות המותקנות, מריצים את הפקודה הבאה:
rpm -qa --queryformat '%{NAME}\n' | grep -iE 'google|gce'הפלט אמור להיראות כך:
google-guest-configs google-osconfig-agent google-guest-oslogin google-guest-agent
כדי לראות את גרסאות החבילה, מריצים את הפקודה הבאה:
rpm -qa --queryformat '%{NAME}-%{VERSION}\n' | grep -iE 'google|gce'הפלט אמור להיראות כך:
google-guest-configs-20260112.00 google-osconfig-agent-20251028.00 google-compute-engine-oslogin-20250821.00 google-guest-agent-20251205.00
Ubuntu
כדי לראות את החבילות המותקנות ואת גרסאות החבילות בהפצות של Ubuntu, מריצים את הפקודה הבאה:
apt list --installed | grep -i google
הפלט אמור להיראות כך:
google-compute-engine-oslogin google-compute-engine google-guest-agent google-osconfig-agent
Windows
כדי לראות את החבילות המותקנות ואת גרסאות החבילות בהפצות של Windows, מריצים את הפקודה הבאה:
googet installed
הפלט אמור להיראות כך:
certgen googet google-compute-engine-auto-updater google-compute-engine-driver-gga google-compute-engine-driver-netkvm google-compute-engine-driver-pvpanic google-compute-engine-driver-vioscsi google-compute-engine-metadata-scripts google-compute-engine-powershell google-compute-engine-sysprep google-compute-engine-vss google-compute-engine-windows google-osconfig-agent
המאמרים הבאים
- כדאי לקרוא את הטיפים לפתרון בעיות.
- מידע נוסף על מטא-נתונים
- מידע נוסף על מפתחות SSH