התקנת סביבת האורח

בדף הזה מוסבר איך להתקין ידנית את סביבת האורח במכונות וירטואליות (VM). סביבת האורח היא אוסף של סקריפטים, תהליכי רקע וקבצים בינאריים שמכונות צריכות כדי לפעול ב-Compute Engine. מידע נוסף זמין במאמר בנושא סביבת אורח.

ברוב המקרים, אם משתמשים באימג'ים ציבוריים של מערכת הפעלה שסופקו על ידי Google, סביבת האורח נכללת באופן אוטומטי. רשימה מלאה של תמונות מערכת הפעלה שכוללות אוטומטית את סביבת האורח זמינה במאמר פרטים על מערכת ההפעלה.

אם סביבת האורח לא מותקנת או שהיא לא עדכנית, צריך להתקין או לעדכן אותה. כדי לזהות את התרחישים האלה, אפשר לעיין במאמר מתי להתקין או לעדכן את סביבת האורח.

לפני שמתחילים

  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    המסוף

    כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS

    gcloud

    1. התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init
  • הגדרת אזור ותחום כברירת מחדל

מתי כדאי להתקין או לעדכן את סביבת האורח

ברוב המקרים, אין צורך להתקין או לעדכן את סביבת האורח באופן ידני. בקטעים הבאים מוסבר מתי צריך להתקין או לעדכן באופן ידני.

בדיקת דרישות ההתקנה

לפני שמתקינים את סביבת האורח, צריך לבצע את השלבים שבקטע אימות של סביבת האורח כדי לבדוק אם סביבת האורח פועלת במופע. אם סביבת האורח זמינה במופע שלכם אבל היא לא עדכנית, צריך לעדכן את סביבת האורח.

יכול להיות שתצטרכו להתקין את סביבת האורח במקרים הבאים:

  • תמונת מערכת ההפעלה שסופקה על ידי Google לא כוללת את סביבת האורח.

  • מייבאים תמונה בהתאמה אישית או דיסק וירטואלי ל-Compute Engine ובוחרים למנוע התקנה אוטומטית של סביבת האורח.

    כשמייבאים דיסקים וירטואליים או תמונות בהתאמה אישית, אפשר לאפשר ל-Compute Engine להתקין את סביבת האורח בשבילכם. עם זאת, אם בחרתם לא להתקין את סביבת האורח במהלך תהליך הייבוא, תצטרכו להתקין אותה באופן ידני.

  • מעבירים מכונות וירטואליות ל-Compute Engine באמצעות Migrate to Virtual Machines.

הוראות להתקנת סביבת האורח מופיעות במאמר בנושא שיטות התקנה.

בדיקת דרישות העדכון

יכול להיות שתצטרכו לעדכן את סביבת האורח במצבים הבאים:

כדי לעדכן את סביבת האורח, אפשר לעיין במאמר בנושא עדכון סביבת האורח.

שיטות התקנה

יש כמה דרכים להתקין את סביבת האורח. בוחרים אחת מהאפשרויות הבאות:

מערכות הפעלה נתמכות

אפשר להתקין או לעדכן את סביבת האורח במכונות וירטואליות שמשתמשות בגרסאות של תמונות מערכת ההפעלה במחזור החיים של הזמינות הכללית (GA) או בשלב מחזור החיים של התמיכה המורחבת.

כדי לעיין ברשימה של גרסאות תמונות של מערכות הפעלה ובשלב מחזור החיים שלהן ב-Compute Engine, אפשר לעיין במאמר פרטים על מערכות הפעלה.

מגבלות

אי אפשר להתקין ידנית את כלי הייבוא או להשתמש בו כדי להתקין סביבות אורח במערכות הפעלה של Fedora CoreOS ו-Container-optimized (COS). ב-COS, ‏ Google ממליצה להשתמש בתמונות ציבוריות ש-Google מספקת, שכוללות את סביבת האורח כרכיב ליבה.

התקנת סביבת האורח

כדי להתקין ידנית את סביבת האורח, בוחרים אחת מהשיטות הבאות, בהתאם ליכולת שלכם להתחבר למופע:

התקנת סביבת האורח במקום

משתמשים בשיטה הזו כדי להתקין את סביבת האורח אם אפשר להתחבר למכונת היעד באמצעות SSH. אם אתם לא מצליחים להתחבר למופע כדי להתקין את סביבת האורח, אתם יכולים לשכפל את דיסק האתחול ולהשתמש בסקריפט לטעינה בזמן ההפעלה כדי להתקין את סביבת האורח.

ההליך הזה שימושי לתמונות שיובאו אם אתם יכולים להתחבר באמצעות אימות מבוסס-סיסמה של SSH. אפשר גם להשתמש בו כדי להתקין מחדש את סביבת האורח, אם יש לכם לפחות חשבון משתמש אחד עם SSH פונקציונלי שמבוסס על מפתח.

‫CentOS/RHEL/Rocky

מבצעים את השלבים שמתאימים לגרסת CentOS/RHEL/Rocky שבה אתם משתמשים.

גרסה 10 ואילך

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.
  2. קובעים את הגרסה של 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
    
  3. מעדכנים את רשימות החבילות:

    sudo yum makecache
    sudo yum updateinfo
    
  4. מתקינים את חבילות סביבת האורח:

    sudo yum install -y google-compute-engine google-osconfig-agent
    
  5. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  6. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

גרסה 9 או גרסה ישנה יותר

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.
  2. קובעים את הגרסה של 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
    
  3. מעדכנים את רשימות החבילות:

    sudo yum makecache
    sudo yum updateinfo
    
  4. מתקינים את חבילות סביבת האורח:

    sudo yum install -y google-compute-engine google-osconfig-agent
    
  5. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  6. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

Debian

מבצעים את השלבים שמתאימים לגרסת Debian.

‫Debian 13 ואילך

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.
  2. מתקינים את מפתח ה-GPG של המאגר הציבורי ב-/etc/apt/keyrings:

    sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpg
    
  3. קובעים את שם הפצת 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
    
  4. מעדכנים את רשימות החבילות:

    sudo apt update
    
  5. מתקינים את חבילות סביבת האורח:

    sudo apt install -y gce-configs-trixie google-compute-engine google-osconfig-agent
    
  6. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף שלו כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  7. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

‫Debian 12 וגרסאות קודמות

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.
  2. מתקינים את מפתח ה-GPG של המאגר הציבורי ב-/etc/apt/keyrings:

    sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpg
    
  3. קובעים את שם הפצת 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
    
  4. מעדכנים את רשימות החבילות:

    sudo apt update
    
  5. מתקינים את חבילות סביבת האורח:

    sudo apt install -y google-cloud-packages-archive-keyring
    sudo apt install -y google-compute-engine google-osconfig-agent
    
  6. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  7. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

Ubuntu

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.

  2. מפעילים את מאגר Universe. ‫Canonical מפרסמת חבילות עבור סביבת האורח שלה במאגר Universe.

    sudo apt-add-repository universe
  3. מעדכנים את רשימות החבילות:

    sudo apt update
  4. מתקינים את חבילות סביבת האורח:

    sudo apt install -y google-compute-engine google-osconfig-agent
    
  5. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף שלו כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  6. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

SLES

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.

  2. הפעלת מודול הענן הציבורי

    product=$(sudo SUSEConnect --list-extensions | grep -o "sle-module-public-cloud.*")
    [[ -n "$product" ]] && sudo SUSEConnect -p "$product"
    
  3. מעדכנים את רשימות החבילות:

    sudo zypper refresh
  4. מתקינים את חבילות סביבת האורח:

    sudo zypper install -y google-guest-{agent,configs,oslogin} \
    google-osconfig-agent
    sudo systemctl enable /usr/lib/systemd/system/google-*
    
  5. מפעילים מחדש את המכונה. לאחר מכן, בודקים את יומן המסוף כדי לוודא שסביבת האורח נטענת כשהיא מופעלת מחדש.

  6. מתחברים למופע באמצעות SSH כדי לאמת. הוראות מפורטות זמינות במאמר בנושא התחברות למופע באמצעות SSH.

Windows

לפני שמתחילים, צריך לוודא שגרסת מערכת ההפעלה נתמכת.

כדי להתקין את סביבת האורח של Windows, מריצים את הפקודות הבאות בשורת פקודה של PowerShell בגרסה 3.0 ומעלה עם הרשאות אדמין. הפקודה Invoke-WebRequest דורשת PowerShell בגרסה 3.0 ואילך.

  1. מורידים ומתקינים את 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).

  2. פותחים מסוף חדש ומוסיפים את מאגר google-compute-engine-stable.

    googet addrepo google-compute-engine-stable https://packages.cloud.google.com/yuck/repos/google-compute-engine-stable
  3. מתקינים את חבילות הליבה של סביבת האורח של Windows.

    googet -noconfirm install google-compute-engine-windows `
    google-compute-engine-sysprep google-compute-engine-metadata-scripts `
    google-compute-engine-vss google-osconfig-agent
    
  4. מתקינים את חבילת סביבת האורח של 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 ואילך

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.

  2. יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע של rescue.

  3. מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.

    1. מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.

      export PROB_INSTANCE_NAME=VM_NAME

      מחליפים את VM_NAME בשם המכונה הבעייתית.

    2. מפסיקים את המופע הבעייתי.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. יוצרים קובץ snapshot של דיסק האתחול.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. יוצרים דיסק חדש מקובץ ה-snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. מוחקים את תמונת המצב.

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא /dev/sdb. ב-CentOS/RHEL/Rocky Linux, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של הבסיס. לכן, מזהה עוצמת הקול צריך להיות /dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblk כדי לקבוע את מזהה עוצמת הקול.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. מתחברים למכונת החילוץ באמצעות SSH.

    gcloud compute ssh rescue
  6. מבצעים את השלבים הבאים במופע החילוץ.

    1. מבצעים 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"
      
    2. יוצרים את הסקריפט 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
      
    3. מגבים את קובץ 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"
      
    4. מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \
      "$NEW_DISK_MOUNT_POINT"
    5. יוצאים מסשן ה-SSH למכונת ההצלה.

  7. מנתקים את הדיסק החדש ממופע החילוץ.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.

    3. מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.

    4. לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.

    כשמופע ההחלפה מופעל, הסקריפט הזמני rc.local מופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמני rc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.

    המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני rc.local יסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.

  9. מוודאים שאפשר להתחבר למכונה באמצעות SSH.

    אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.

גרסה 9 או גרסה ישנה יותר

  1. מוודאים שגרסת מערכת ההפעלה נתמכת.

  2. יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע של rescue.

  3. מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.

    1. מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.

      export PROB_INSTANCE_NAME=VM_NAME

      מחליפים את VM_NAME בשם המכונה הבעייתית.

    2. מפסיקים את המופע הבעייתי.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. יוצרים קובץ snapshot של דיסק האתחול.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. יוצרים דיסק חדש מקובץ ה-snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. מחיקת תמונת המצב:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא /dev/sdb. ב-CentOS/RHEL/Rocky Linux, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של הבסיס. לכן, מזהה עוצמת הקול צריך להיות /dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblk כדי לקבוע את מזהה עוצמת הקול.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. מתחברים למכונת החילוץ באמצעות SSH.

    gcloud compute ssh rescue
  6. מבצעים את השלבים הבאים במופע החילוץ.

    1. מבצעים 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"
      
    2. יוצרים את הסקריפט 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
      
    3. מגבים את קובץ 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"
      
    4. מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \
      "$NEW_DISK_MOUNT_POINT"
    5. יוצאים מסשן ה-SSH למכונת ההצלה.

  7. מנתקים את הדיסק החדש ממופע החילוץ.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.

    3. מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.

    4. לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.

    כשמופע ההחלפה מופעל, הסקריפט הזמני rc.local מופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמני rc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.

    המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני rc.local יסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.

  9. מוודאים שאפשר להתחבר למכונה באמצעות SSH.

    אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.

Debian

  1. לוודא שגרסת מערכת ההפעלה נתמכת

  2. יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע החילוץ.

  3. מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.

    1. מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.

      export PROB_INSTANCE_NAME=VM_NAME

      מחליפים את VM_NAME בשם המכונה הבעייתית.

    2. מפסיקים את המופע הבעייתי.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. יוצרים קובץ snapshot של דיסק האתחול.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. יוצרים דיסק חדש מקובץ ה-snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. מחיקת תמונת המצב:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא /dev/sdb. ב-Debian, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול הבסיסית. לכן, מזהה עוצמת הקול צריך להיות /dev/sdb1. כדי להגדיר תצורות בהתאמה אישית, משתמשים ב-lsblk כדי לקבוע את מזהה עוצמת הקול.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. מתחברים למכונת החילוץ באמצעות SSH.

    gcloud compute ssh rescue
  6. מבצעים את השלבים הבאים במופע החילוץ.

    1. מבצעים 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"
      
    2. יוצרים את הסקריפט 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
      
    3. מגבים את קובץ 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"
      
    4. מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
    5. יוצאים מסשן ה-SSH למכונת ההצלה.

  7. מנתקים את הדיסק החדש ממופע החילוץ.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. יוצרים מכונה חדשה שתשמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.

    3. מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.

    4. לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.

    כשמופע ההחלפה מופעל, הסקריפט הזמני rc.local מופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמני rc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.

    המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני rc.local יסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.

  9. מוודאים שאפשר להתחבר למכונה באמצעות SSH.

    אחרי שמוודאים שהמופע החלופי פועל, אפשר להפסיק או למחוק את המופע הבעייתי.

Ubuntu

  1. לוודא שגרסת מערכת ההפעלה נתמכת

  2. יוצרים מכונה חדשה שתשמש כמכונת החילוץ. נותנים למופע הזה את השם rescue. מופע החילוץ הזה לא צריך להריץ את אותה מערכת הפעלה של Linux כמו המופע הבעייתי. בדוגמה הזו נעשה שימוש ב-Debian 9 במופע החילוץ.

  3. מפסיקים את המכונה הבעייתית ויוצרים עותק של דיסק האתחול שלה.

    1. מגדירים שם משתנה למופע הבעייתי. המשתנה הזה מפשט את ההפניה למופע בשלבים מאוחרים יותר.

      export PROB_INSTANCE_NAME=VM_NAME

      מחליפים את VM_NAME בשם המכונה הבעייתית.

    2. מפסיקים את המופע הבעייתי.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. מקבלים את השם של דיסק האתחול של המכונה הווירטואלית הבעייתית.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. יוצרים קובץ snapshot של דיסק האתחול.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. יוצרים דיסק חדש מקובץ ה-snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. מחיקת תמונת המצב:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. מחברים את הדיסק החדש למכונת החילוץ ומפעילים את אמצעי האחסון הבסיסי של מכונת החילוץ. ההליך הזה מצרף רק דיסק נוסף אחד, ולכן מזהה המכשיר של הדיסק החדש הוא /dev/sdb. ב-Ubuntu, כברירת מחדל, התווית של נפח הבסיס היא 1, ולכן מזהה הנפח צריך להיות */dev/sdb*. כדי להגדיר הגדרות בהתאמה אישית, משתמשים ב-lsblk כדי לקבוע את מזהה הנפח.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. מתחברים למכונת החילוץ באמצעות SSH.

    gcloud compute ssh rescue
  6. מבצעים את השלבים הבאים במופע החילוץ.

    1. מבצעים 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"
      
    2. יוצרים את הסקריפט 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
      
    3. מגבים את קובץ 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"
      
    4. מבטלים את הטעינה של נפח הבסיס של הדיסק החדש.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
    5. יוצאים מסשן ה-SSH למכונת ההצלה.

  7. מנתקים את הדיסק החדש ממופע החילוץ.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. יוצרים מכונה חדשה שתשמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את מופע ההחלפה באמצעות מסוף Cloud de Confiance :

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. לוחצים על המופע הבעייתי ואז על יצירת מופע דומה.

    3. מציינים שם למכונה החלופית. בקטע דיסק אתחול לוחצים על Change ואז על Existing Disks. בוחרים את הדיסק החדש.

    4. לוחצים על יצירה. המופע החלופי מתחיל אוטומטית אחרי שהוא נוצר.

    כשמופע ההחלפה מופעל, הסקריפט הזמני rc.local מופעל וסביבת האורח מותקנת. כדי לעקוב אחרי התקדמות הסקריפט, בודקים את היומנים של המסוף כדי לראות את השורות שנוצרו על ידי הסקריפט הזמני rc.local. כדי להציג את היומנים, מריצים את הפקודה הבאה:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    מחליפים את REPLACEMENT_VM_NAME בשם שהקציתם למכונה החלופית.

    המופע החלופי יופעל מחדש באופן אוטומטי כשהסקריפט הזמני rc.local יסתיים. במהלך האתחול השני, אפשר לבדוק את יומן המסוף כדי לוודא שסביבת האורח נטענת.

  9. מוודאים שאפשר להתחבר למכונה באמצעות 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)

כדי להציג את יומני המסוף של מופע, פועלים לפי השלבים הבאים.

המסוף

  1. נכנסים לדף VM instances במסוף Cloud de Confiance .

    כניסה לדף VM instances

    1. בוחרים את המופע שרוצים לבדוק.
    2. להפעיל מחדש או לאפס את המכונה.
    3. בקטע Logs, לוחצים על יציאה טורית 1 (console)‎.
    4. מחפשים את הפלט הצפוי בטבלה שמופיעה לפני השלבים האלה.

gcloud

  1. להפעיל מחדש או לאפס את המכונה.
  2. משתמשים בפקודת המשנה gcloud compute instances get-serial-port-output כדי להתחבר באמצעות Google Cloud CLI. לדוגמה:

    gcloud compute instances get-serial-port-output VM_NAME

    מחליפים את VM_NAME בשם המכונה שרוצים לבדוק.

  3. מחפשים את הפלט הצפוי בטבלה שמופיעה לפני השלבים האלה.

צפייה בשירותים שנטענו לפי גרסת מערכת ההפעלה

בקטע הזה מופיע סיכום של השירותים שצריך לטעון במופעים עם סביבות אורח תקינות. צריך להריץ את הפקודה כדי להציג את רשימת השירותים אחרי שמתחברים למופע. לכן, אפשר לבצע את הבדיקה הזו רק אם יש לכם גישה למופע.

‫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

המאמרים הבאים