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

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

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

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

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

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

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

    המסוף

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

    gcloud

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

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

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

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

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

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

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

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

  • תמונת מערכת ההפעלה שסופקה על ידי 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.

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

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

השיטה הזו רלוונטית רק להפצות של לינוקס. ב-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, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של ה-root. לכן, מזהה עוצמת הקול צריך להיות /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. יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את המופע החלופי באמצעות מסוף Google Cloud :

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

      כניסה לדף 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, כברירת מחדל, עוצמת הקול הראשונה בדיסק משמשת כעוצמת הקול של ה-root. לכן, מזהה עוצמת הקול צריך להיות /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. יוצרים מכונה שתשמש כמכונה חלופית. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את המופע החלופי באמצעות מסוף Google Cloud :

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

      כניסה לדף 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. יוצרים מופע חדש שישמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את המופע החלופי באמצעות מסוף Google Cloud :

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

      כניסה לדף 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. יוצרים מופע חדש שישמש כתחליף. כשיוצרים את המכונה החלופית, מציינים את הדיסק החדש כדיסק האתחול. אפשר ליצור את המופע החלופי באמצעות מסוף Google Cloud :

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

      כניסה לדף 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 במסוף Google Cloud .

    כניסה לדף 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

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