הגדרת VM Manager

ב-Compute Engine אפשר לנהל את מערכות ההפעלה שפועלות במכונות וירטואליות (VM) באמצעות VM Manager.

אפשר להפעיל את VM Manager למכונות וירטואליות ספציפיות, לפרויקט או לכל הפרויקטים בתיקייה או בארגון. כדי לעיין בשלבים הנדרשים להגדרת מכונות וירטואליות לשימוש ב-VM Manager, אפשר לעיין במאמר סקירה כללית של ההגדרה. כדי להפעיל את VM Manager ולהקצות כללי מדיניות של מערכת ההפעלה בארגון באמצעות Terraform, קראו את המאמר הגדרת VM Manager בארגון באמצעות Terraform.

אחרי שמגדירים את VM Manager, אפשר לראות את יומני הביקורת של פעולות API שבוצעו באמצעות OS Config API. איך צופים ביומני הביקורת של VM Manager

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

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

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

    המסוף

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

    gcloud

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

      gcloud init

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

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

    כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.

      התקינו את ה-CLI של Google Cloud.

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

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .

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

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

הפעלת OS Config service API

אפשר להפעיל את OS Config API בפרויקטים ב- Google Cloud באמצעות אחת מהשיטות הבאות:

התפקידים הנדרשים

כדי לקבל את ההרשאה שנדרשת להפעלת ה-API, צריך לבקש מהאדמין להקצות לכם את התפקיד אדמין של Service Usage (roles/serviceusage.serviceUsageAdmin) ב-IAM בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

התפקיד המוגדר מראש הזה מכיל את ההרשאה serviceusage.services.enable, שנדרשת כדי להפעיל את ה-API.

יכול להיות שתוכלו לקבל את ההרשאה הזו גם בתפקידים בהתאמה אישית או בתפקידים מוגדרים מראש.

הפעלת OS Config API בפרויקט אחד

ב Google Cloud פרויקט, מפעילים את OS Config API.

המסוף

  1. במסוף Google Cloud , בוחרים את הפרויקט שבו רוצים להפעיל את ה-API.
  2. עוברים לדף OS Config API.

    ל-OS Config API

  3. לוחצים על Enable.

gcloud

כדי להפעיל את ה-API, מריצים את הפקודה הבאה:

gcloud services enable osconfig.googleapis.com --project=PROJECT_ID

מחליפים את PROJECT_ID במזהה הפרויקט.

הפעלת OS Config API בכמה פרויקטים

כדי להפעיל את OS Config API (VM Manager API) בכל הפרויקטים בארגון או בתיקייה, משתמשים בהפעלה היררכית של שירותים. התכונה הזו מפעילה באופן אוטומטי שירות לכל הפרויקטים הקיימים והחדשים בהיררכיית המשאבים של Google Cloud , כך שלא צריך להפעיל את השירות באופן ידני לכל פרויקט.

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

לחלופין, כדי להפעיל את VM Manager ולהקצות מדיניות מערכת הפעלה בכל הארגון באמצעות Terraform, אפשר לעיין במאמר בנושא הגדרת VM Manager בכל הארגון באמצעות Terraform.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות לניהול הפעלת שירותים, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Service Usage Admin (roles/serviceusage.serviceUsageAdmin) במשאב היעד. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות לניהול הפעלת השירות. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:

ההרשאות הנדרשות

כדי לנהל את הפעלת השירותים, נדרשות ההרשאות הבאות:

  • רשימת שירותים:
    • serviceusage.effectivepolicy.get
    • serviceusage.services.list
    • serviceusage.services.get
  • מפעילים את השירותים:
    • serviceusage.consumerpolicy.get
    • serviceusage.consumerpolicy.update
    • serviceusage.groups.listExpandedMembers
  • השבתת שירותים:
    • serviceusage.consumerpolicy.get
    • serviceusage.consumerpolicy.update
    • serviceusage.consumerpolicy.analyze

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

תיקייה

כדי להפעיל את OS Config API לכל הפרויקטים בתיקייה, מריצים את הפקודה הבאה:

gcloud beta services enable osconfig.googleapis.com \
    --folder=FOLDER_ID

מחליפים את FOLDER_ID במזהה התיקייה.

ארגון

כדי להפעיל את OS Config API לכל הפרויקטים בארגון, מריצים את הפקודה הבאה:

gcloud beta services enable osconfig.googleapis.com \
    --organization=ORGANIZATION_ID

מחליפים את ORGANIZATION_ID במזהה הארגון.

הגדרת המטא-נתונים של VM Manager באמצעות מדיניות הארגון

כדי להגדיר באופן אוטומטי את המטא-נתונים של VM Manager לכל המכונות הווירטואליות החדשות בארגון, בתיקייה או בפרויקט, אתם יכולים להשתמש במדיניות הארגונית "דרישה להגדרת מערכת ההפעלה".

כשמגדירים את האילוץ הבוליאני Require OS Config, התנאים הבאים חלים:

  • השדה enable-osconfig=TRUE כלול במטא-נתונים של הפרויקט בכל הפרויקטים החדשים.
  • בקשות שבהן הערך של enable-osconfig מוגדר ל-FALSE במטא-נתונים של המכונה או הפרויקט נדחות, גם במכונות וירטואליות ובפרויקטים חדשים וגם בקיימים.
  • מדיניות הארגון הזו לא משנה את ערך המטא-נתונים enable-osconfig ל-TRUE במכונות וירטואליות או בפרויקטים שנוצרו לפני הפעלת המדיניות. אם רוצים להפעיל את VM Manager במכונות הווירטואליות או בפרויקטים האלה, מומלץ לעדכן את המטא-נתונים. מידע נוסף מופיע במאמר בנושא הגדרת ערכי המטא-נתונים.

גם אם מדיניות הארגון של OS Config מופעלת, עדיין אפשר להשתמש במטא-נתונים של osconfig-disabled-features כדי להשבית תכונה אחת או יותר של VM Manager.

הפעלת מדיניות הארגון של OS Config

כדי להפעיל את מדיניות OS Config, אתם יכולים להגדיר את האילוץ Require OS Config בארגון כולו, בתיקיות או בפרויקטים ספציפיים באמצעות מסוףGoogle Cloud או Google Cloud CLI.

המסוף

כדי להגדיר את מדיניות הארגון של OS Config מהמסוף, מבצעים את השלבים הבאים:

  1. נכנסים לדף Organization policies במסוף Google Cloud .

    אל מדיניות הארגון

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

  3. בדף Organization policies מוצגת רשימה של אילוצים של מדיניות הארגון שאפשר לסנן.

  4. בוחרים את האילוץ Require OS Config מרשימת האילוצים. בדף פרטי המדיניות שמופיע מתואר האילוץ ומוסבר איך הוא חל.

  5. כדי לעדכן את מדיניות הארגון של המשאב הזה, לוחצים על ניהול המדיניות.

  6. בדף עריכת המדיניות, בוחרים באפשרות במקום המדיניות של המשאב הראשי.

  7. לוחצים על הוספת כלל.

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

  9. כדי לאכוף את המדיניות, לוחצים על הגדרת מדיניות.

gcloud

כדי להגדיר את מדיניות הארגון של OS Config, משתמשים בפקודה gcloud beta resource-manager org-policies enable-enforce.

  1. למצוא את מזהה הארגון.

    gcloud organizations list
  2. מגדירים את האילוץ בארגון. מחליפים את organization-id במזהה הארגון.

    gcloud resource-manager org-policies enable-enforce compute.requireOsConfig \
        --organization=organization-id
    

אפשר גם להחיל את מדיניות הארגון של OS Config על תיקייה או פרויקט באמצעות הדגלים --folder או --project, ומזהה התיקייה ומזהה הפרויקט, בהתאמה.

לתיקיות, מריצים את הפקודה הבאה:

gcloud resource-manager org-policies enable-enforce compute.requireOsConfig \
    --folder=folder-id

לפרויקטים, מריצים את הפקודה הבאה:

gcloud resource-manager org-policies enable-enforce compute.requireOsConfig \
    --project=project-id

מחליפים את מה שכתוב בשדות הבאים:

הפעלת VM Manager בפרויקט

כדי להפעיל את VM Manager בפרויקט, יש שתי אפשרויות:

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

גלילה ידנית

כדי להגדיר את VM Manager באופן ידני, מבצעים את השלבים הבאים:

  1. בפרויקט Google Cloud , מפעילים את OS Config API.
  2. בכל מכונה וירטואלית, בודקים אם הסוכן OS Config מותקן. אם הסוכן עדיין לא מותקן, מתקינים את הסוכן של OS Config.
  3. בפרויקט או בכל מכונה וירטואלית, מגדירים מטא-נתונים של המכונה לסוכן OS Config. השלב הזה נדרש כדי להפעיל את סוכן OS Config ב-VM או בפרויקט.
  4. מוודאים שלכל המכונות הווירטואליות יש חשבון שירות שמחובר אליהן. אתם לא צריכים להקצות תפקידי IAM לחשבון השירות הזה. מנהל מכונות ה-VM משתמש בחשבון השירות הזה כדי לחתום על בקשות לשירות ה-API.
  5. אם המכונה הווירטואלית פועלת ברשת פרטית של ענן וירטואלי פרטי (VPC) ואין לה גישה לאינטרנט הציבורי, צריך להפעיל גישה פרטית ל-Google.
  6. אם אתם משתמשים בשרת proxy ל-HTTP עבור המכונות הווירטואליות, צריך להגדיר שרת proxy ל-HTTP.
  7. אופציונלי. בפרויקט או בכל מכונה וירטואלית, משביתים את התכונות שלא צריך.

אוטומטי

בפעם הראשונה שנכנסים לאחד מהדפים של VM Manager במסוףGoogle Cloud , אפשר לבחור להפעיל את VM Manager באופן אוטומטי.

אם תפעלו לפי השלבים המודרכים, תוכלו להשתמש בהפעלה האוטומטית כדי לבצע את הפעולות הבאות:

  • הפעלת VM Manager ‏ (OS Config API) ב Google Cloud פרויקט
  • הפעלת סוכני OS Config בכל המכונות הווירטואליות בפרויקט Google Cloud שבהן הסוכן מותקן

הפעלה אוטומטית.

בדיקה אם סוכן OS Config מותקן

סוכן OS Config מותקן כברירת מחדל בתמונות של CentOS,‏ מערכת הפעלה שמותאמת לקונטיינרים‏ (COS),‏ Debian,‏ Red Hat Enterprise Linux‏ (RHEL),‏ Rocky Linux,‏ SLES,‏ Ubuntu ו-Windows Server עם תאריך בנייה של v20200114 ואילך. מידע על גרסאות של מערכות הפעלה שבהן מותקן הסוכן OS Config זמין במאמר פרטים על מערכת ההפעלה. הסוכנים האלה לא פעילים עד שמפעילים את המטא-נתונים של הסוכן ומפעילים את ה-API של השירות.

Linux

כדי לבדוק אם הסוכן מותקן במכונת ה-VM של Linux, מריצים את הפקודה הבאה:

sudo systemctl status google-osconfig-agent

אם הסוכן מותקן ופועל, הפלט דומה לזה:

google-osconfig-agent.service - Google OSConfig Agent
Loaded: loaded (/lib/systemd/system/google-osconfig-agent.service; enabled; vendor preset:
Active: active (running) since Wed 2020-01-15 00:14:22 UTC; 6min ago
Main PID: 369 (google_osconfig)
 Tasks: 8 (limit: 4374)
Memory: 102.7M
CGroup: /system.slice/google-osconfig-agent.service
        └─369 /usr/bin/google_osconfig_agent

אם הסוכן לא מותקן, צריך להתקין את הסוכן של OS Config.

Windows

כדי לבדוק אם הסוכן מותקן במכונת ה-VM של Windows, מריצים את הפקודה הבאה:

PowerShell Get-Service google_osconfig_agent

אם הסוכן מותקן ופועל, הפלט דומה לזה:

Status   Name               DisplayName
------   ----               -----------
Running  google_osconfig... Google OSConfig Agent

אם הסוכן לא מותקן, צריך להתקין את הסוכן של OS Config.

התקנת סוכן OS Config

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

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

התקנה ידנית של הסוכן

אתם יכולים להשתמש באפשרות הזו כדי להתקין את סוכן OS Config במכונה וירטואלית קיימת.

כדי להתקין את הסוכן, מבצעים את השלבים הבאים:

  1. מתחברים למכונה הווירטואלית שבה רוצים להתקין את סוכן OS Config.

  2. מתקינים את סוכן OS Config.

    Windows Server

    כדי להתקין את סוכן OS Config בשרת Windows, מריצים את הפקודה הבאה:

    googet -noconfirm install google-osconfig-agent
    

    Ubuntu

    כדי להתקין את סוכן OS Config ב-VM של Ubuntu, מריצים את הפקודות הבאות:

    1. מגדירים את מאגר Ubuntu.

      • בגרסאות Ubuntu 20.04 ואילך, מריצים את הפקודות הבאות:

        1. מוסיפים את מאגר Ubuntu.

          sudo su -c "echo 'deb http://packages.cloud.google.com/apt google-compute-engine-focal-stable main' > \
          /etc/apt/sources.list.d/google-compute-engine.list"
          
        2. מייבאים את Google Cloud המפתח הציבורי.

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
          
      • בגרסאות Ubuntu 18.04 ואילך, מריצים את הפקודות הבאות:

        1. מוסיפים את מאגר Ubuntu.

          sudo su -c "echo 'deb http://packages.cloud.google.com/apt google-compute-engine-bionic-stable main' > \
          /etc/apt/sources.list.d/google-compute-engine.list"
          
        2. מייבאים את המפתח הציבורי של Google Cloud .

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
          
      • ב-Ubuntu 16.04, מריצים את הפקודות הבאות:

        1. מוסיפים את המאגר של Ubuntu.

          sudo su -c "echo 'deb http://packages.cloud.google.com/apt google-compute-engine-xenial-stable main'> \
          /etc/apt/sources.list.d/google-compute-engine.list"
          
        2. מייבאים את Google Cloud המפתח הציבורי.

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
          
    2. מתקינים את סוכן OS Config.

      sudo apt update
      sudo apt -y install google-osconfig-agent
      

    ‫Debian

    כדי להתקין את הסוכן של OS Config במכונת Debian וירטואלית, מריצים את הפקודות הבאות:

    sudo apt update
    sudo apt -y install google-osconfig-agent
    

    הוספת Google Cloud המאגר והמפתח הציבורי

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

    אחרי שמוסיפים את המאגר ומייבאים את המפתח, אפשר להריץ את הפקודות כדי להתקין את הסוכן של OS Config.

    1. מגדירים את מאגר הענן של Debian:

      ‫Debian 13 ואילך

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

        sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpg
        
      2. קובעים את שם הפצת 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
        

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

      1. מתקינים את מפתח ה-GPG של המאגר הציבורי:

        curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
        
      2. קובעים את שם הפצת 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 http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main
        deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-${VERSION_CODENAME} main
        EOM
        

    RHEL/CentOS/Rocky

    כדי להתקין את סוכן OS Config במכונה וירטואלית של RHEL 7/8, ‏ CentOS 7/8 או Rocky Linux 8/9, מריצים את הפקודה הבאה:

    sudo yum -y install google-osconfig-agent
    

    SLES/openSUSE

    כדי להתקין את סוכן OS Config במכונת SLES או openSUSE VM, מריצים את הפקודות הבאות:

    1. מגדירים את המאגר של SLES.

      • ב-SLES 12, מריצים את הפקודה הבאה:

        sudo su -c "cat > /etc/zypp/repos.d/google-compute-engine.repo <<EOM
        [google-compute-engine]
        name=Google Compute Engine
        baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-sles12-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"
        
      • ב-SLES 15 וב-OpenSUSE 15, מריצים את הפקודה הבאה:

        sudo su -c "cat > /etc/zypp/repos.d/google-compute-engine.repo <<EOM
        [google-compute-engine]
        name=Google Compute Engine
        baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-sles15-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"
        
        
    2. מייבאים את מפתחות ה-GPG של Google Cloud.

      sudo rpm --import https://packages.cloud.google.com/yum/doc/yum-key.gpg \
      --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      
    3. מתקינים את סוכן OS Config.

      sudo zypper -n --gpg-auto-import-keys install --from google-compute-engine google-osconfig-agent
      

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

אתם יכולים גם להשתמש בפקודות ההתקנה הידנית כדי ליצור סקריפט לטעינה בזמן ההפעלה שמתקין את סוכן OS Config במהלך יצירת ה-VM.

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

    לדוגמה, אם משתמשים בפקודה gcloud compute instances create כדי ליצור מכונת VM של Debian 10, הפקודה תיראה כך:

    gcloud compute instances create VM_NAME \
       --image-family=debian-10 --image-project=debian-cloud \
       --metadata startup-script='#! /bin/bash
       apt update
       apt -y install google-osconfig-agent'

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

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

הגדרת ערכי המטא-נתונים

אתם יכולים להגדיר מטא-נתונים של מכונה בכל מכונה וירטואלית, או מטא-נתונים של פרויקט שחלים על כל המכונות הווירטואליות בפרויקט.

בפרויקט Google Cloud או במכונה הווירטואלית, מגדירים את ערך המטא-נתונים enable-osconfig ל-TRUE. הגדרת ערך המטא-נתונים enable-osconfig ל-TRUE מאפשרת את הפעולות הבאות:

  • תיקון
  • מדיניות מערכת ההפעלה
  • ניהול מלאי של מערכת ההפעלה
    • בגרסה הקודמת של ניהול מלאי מערכות הפעלה, צריך גם להגדיר את ערך המטא-נתונים enable-guest-attributes ל-TRUE. אם לא מוגדרים שני ערכי המטא-נתונים, בלוח הבקרה מוצג הערך no data עבור המכונה הווירטואלית. הפעולה הזו לא נדרשת בגרסה החדשה. מידע על שתי הגרסאות של ניהול מלאי מערכות הפעלה זמין במאמר גרסאות של ניהול מלאי מערכות הפעלה.

המסוף

אפשר להחיל את ערכי המטא-נתונים על Google Cloud פרויקטים או מכונות וירטואליות באמצעות אחת מהאפשרויות הבאות:

  • אפשרות 1: מגדירים את enable-osconfig במטא-נתונים ברמת הפרויקט, כדי שההגדרה תחול על כל המכונות הווירטואליות בפרויקט.

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

      מעבר אל Metadata

    2. לוחצים על Edit.

    3. מוסיפים את רשומת המטא-נתונים הבאה:

      מפתח: enable-osconfig
      ערך: TRUE

      בגרסה הקודמת של ניהול מלאי מערכות הפעלה, צריך להגדיר גם את enable-osconfig וגם את enable-guest-attributes:

      • מפתח: enable-osconfig
        ערך: TRUE
      • מפתח: enable-guest-attributes
        ערך: TRUE
    4. לוחצים על שמירה כדי להחיל את השינויים.

  • אפשרות 2: מגדירים את enable-osconfig במטא-נתונים של המכונה הווירטואלית כשיוצרים מופע.

    1. נכנסים לדף Create an instance במסוף Google Cloud .

      כניסה לדף Create an instance

    2. מציינים את פרטי המכונה הווירטואלית.

    3. מרחיבים את הקטע אפשרויות מתקדמות ומבצעים את הפעולות הבאות:

      1. מרחיבים את הקטע Management.
      2. בקטע Metadata (מטא-נתונים), לוחצים על Add item (הוספת פריט) ומוסיפים את רשומות המטא-נתונים הבאות:

        מפתח: enable-osconfig
        ערך: TRUE.

        בגרסה הקודמת של ניהול מלאי מערכות הפעלה, צריך להגדיר גם את enable-osconfig וגם את enable-guest-attributes:

        • מפתח: enable-osconfig
          ערך: TRUE
        • מפתח: enable-guest-attributes
          ערך: TRUE
    4. כדי ליצור את המכונה הווירטואלית (VM), לוחצים על האפשרות Create.

  • אפשרות 3: מגדירים את enable-osconfig במטא-נתונים של מכונה וירטואלית קיימת.

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

      כניסה לדף VM instances

    2. לוחצים על שם המכונה הווירטואלית שרוצים להגדיר לה את ערך המטא-נתונים.

    3. בדף פרטי המופע, לוחצים על עריכה כדי לערוך את ההגדרות.

    4. בקטע מטא-נתונים בהתאמה אישית, מוסיפים את רשומות המטא-נתונים הבאות:

      מקש: enable-osconfig
      ערך: TRUE.

      בגרסה הקודמת של ניהול מלאי של מערכת ההפעלה, מגדירים גם את enable-osconfig וגם את enable-guest-attributes:

      • מפתח: enable-osconfig
        ערך: TRUE
      • מפתח: enable-guest-attributes
        ערך: TRUE
    5. לוחצים על שמירה כדי להחיל את השינויים על המכונה הווירטואלית.

gcloud

משתמשים בפקודה project-info add-metadata או בפקודה instances add-metadata עם הדגל --metadata=enable-osconfig=TRUE.

אתם יכולים להחיל את ערכי המטא-נתונים על הפרויקטים או המכונות הווירטואליות באמצעות אחת מהאפשרויות הבאות:

  • אפשרות 1: מגדירים את enable-osconfig במטא-נתונים ברמת הפרויקט, כך שההגדרה תחול על כל המכונות הווירטואליות בפרויקט:

    gcloud compute project-info add-metadata \
      --project PROJECT_ID \
      --metadata=enable-osconfig=TRUE
    

    בגרסה הקודמת של ניהול מלאי מערכות הפעלה, צריך להגדיר גם את enable-osconfig וגם את enable-guest-attributes:

    gcloud compute project-info add-metadata \
      --project PROJECT_ID \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    

    מחליפים את PROJECT_ID במזהה הפרויקט.

  • אפשרות 2: מגדירים את enable-osconfig במטא-נתונים של מכונה קיימת.

    gcloud compute instances add-metadata VM_NAME \
      --metadata=enable-osconfig=TRUE
    

    בגרסה הקודמת של ניהול מלאי של מערכת ההפעלה, מגדירים גם את enable-osconfig וגם את enable-guest-attributes:

    gcloud compute instances add-metadata VM_NAME \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    

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

  • אפשרות 3: מגדירים את enable-osconfig במטא-נתונים של המופע כשיוצרים מופע.

    gcloud compute instances create VM_NAME \
      --metadata=enable-osconfig=TRUE
    

    בגרסה הקודמת של ניהול מלאי מערכות הפעלה, צריך להגדיר גם את enable-osconfig וגם את enable-guest-attributes:

    gcloud compute instances create VM_NAME \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    

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

REST

אפשר להגדיר את ערך המטא-נתונים ברמת Google Cloud הפרויקט או ברמת המכונה.

חובה להוסיף את צמד המפתח/ערך הבא כחלק ממאפיין המטא-נתונים:

  • מפתח: enable-osconfig
    ערך: TRUE

בגרסה הקודמת של ניהול מלאי של מערכת ההפעלה, צריך להוסיף גם את צמד המפתח/ערך הבא:

  • מפתח: enable-guest-attributes
    ערך: TRUE

הגדרת שרת Proxy ל-HTTP

אם אתם משתמשים ב-Proxy ל-HTTP למכונות הווירטואליות, מריצים את הפקודות הבאות כדי להגדיר את משתני הסביבה http_proxy ו-https_proxy. כדי לאפשר לסוכן OS Config לגשת לשרת המטא-נתונים המקומי, צריך להגדיר את משתנה הסביבה no_proxy כך שיחריג את שרת המטא-נתונים (169.254.169.254 ו-fd20:ce::254).

Linux

במערכות הפעלה מבוססות Linux שמשתמשות ב-systemd, מוסיפים את משתני הסביבה של ה-proxy ליחידה google-osconfig-agent.service בתור המשתמש root:

mkdir -p /etc/systemd/system/google-osconfig-agent.service.d
cat >/etc/systemd/system/google-osconfig-agent.service.d/override.conf <<EOF
[Service]
Environment="http_proxy=http://PROXY_IP:PROXY_PORT" \
  "https_proxy=http://PROXY_IP:PROXY_PORT" \
  "no_proxy=169.254.169.254,fd20:ce::254,metadata,metadata.google.internal"
EOF

מחליפים את PROXY_IP ואת PROXY_PORT בכתובת ה-IP ובמספר היציאה של שרת proxy, בהתאמה.

מפעילים מחדש את שירות הסוכן OS Config:

systemctl daemon-reload
systemctl restart google-osconfig-agent

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

tr '\0' '\n' < /proc/$(systemctl show -p MainPID --value google-osconfig-agent)/environ

Windows

מריצים את הפקודות הבאות משורת פקודה של אדמין.

  setx http_proxy http://PROXY_IP:PROXY_PORT /m
  setx https_proxy http://PROXY_IP:PROXY_PORT /m
  setx no_proxy 169.254.169.254,fd20:ce::254,metadata,metadata.google.internal /m

מחליפים את PROXY_IP ו-PROXY_PORT בכתובת ה-IP ובמספר היציאה של שרת ה-proxy, בהתאמה.

‫Google ממליצה להחריג את *.googleapis.com על ידי הוספת משתנה הסביבה no_proxy כדי למנוע בעיות בחיבור מ-OS Config agent. אם רוצים לחבר רק מכונות וירטואליות ספציפיות לסוכן OS Config, צריך להוסיף תחילית לאזור שבו נמצאות המכונות הווירטואליות, ולהשתמש בפורמט [zone-name]-osconfig.googleapis.com. לדוגמה, us-central1-f-osconfig.googleapis.com.

השבתת תכונות שאין צורך בהן

אם יש תכונות שלא צריך, אפשר להשבית אותן על ידי הגדרת ערכי המטא-נתונים הבאים: osconfig-disabled-features=FEATURE1,FEATURE2.

מחליפים את FEATURE1,FEATURE2 באחד מהערכים הבאים:

  • ניהול מלאי של מערכת ההפעלה: osinventory
  • מדיניות בנושא תיקונים ומערכת הפעלה: tasks
  • מדיניות אורחים במערכת ההפעלה (בטא): guestpolicies

כדי להשבית את ערכי המטא-נתונים, משתמשים באחת מהשיטות הבאות.

המסוף

אפשר להשבית את ערכי המטא-נתונים ב Google Cloud פרויקטים או במכונות הווירטואליות באמצעות אחת מהאפשרויות הבאות:

  • אפשרות 1: משביתים את התכונה במטא-נתונים ברמת הפרויקט, כך שהיא תחול על כל המופעים בפרויקט.

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

      מעבר למטא-נתונים

    2. לוחצים על Edit.

    3. מוסיפים את רשומת המטא-נתונים הבאה:

      מפתח: osconfig-disabled-features
      ערך: FEATURE1,FEATURE2

      לדוגמה:
      מפתח: osconfig-disabled-features
      ערך: osinventory,guestpolicies

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

  • אפשרות 2: השבתת התכונה במטא-נתונים של מכונה וירטואלית קיימת.

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

      כניסה לדף VM instances

    2. לוחצים על שם המכונה הווירטואלית שבה רוצים להגדיר את ערך המטא-נתונים.

    3. בדף Instance details, לוחצים על Edit כדי לערוך את ההגדרות של המכונה הווירטואלית.

    4. בקטע מטא-נתונים בהתאמה אישית, מוסיפים את רשומות המטא-נתונים הבאות:

      מפתח: osconfig-disabled-features
      ערך: FEATURE1,FEATURE2

      לדוגמה:
      מפתח: osconfig-disabled-features
      ערך: osinventory

    5. לוחצים על שמירה כדי להחיל את השינויים על המכונה הווירטואלית.

gcloud

משתמשים בפקודה project-info add-metadata או בפקודה instances add-metadata gcloud עם הדגל --metadata=osconfig-disabled-features.

אם משביתים כמה תכונות, הפורמט של הדגל צריך להיות --metadata=osconfig-disabled-features=FEATURE1,FEATURE2. ראו דוגמה 2.

דוגמאות

דוגמה 1 כדי להשבית את Patch ברמת Google Cloud הפרויקט באמצעות Google Cloud CLI, מריצים את הפקודה הבאה:

gcloud compute project-info add-metadata \
    --project PROJECT_ID \
    --metadata=osconfig-disabled-features=tasks

דוגמה 2 כדי להשבית את מדיניות מערכת ההפעלה ואת ניהול המלאי של מערכת ההפעלה ברמת הפרויקט באמצעות Google Cloud CLI, מריצים את הפקודה הבאה:

gcloud compute project-info add-metadata \
    --project PROJECT_ID \
    --metadata=osconfig-disabled-features=osinventory,guestpolicies

מחליפים את PROJECT_ID במזהה הפרויקט.

REST

אפשר להגדיר את ערך המטא-נתונים ברמת Google Cloud הפרויקט או ברמת המכונה.

צמד המפתח/ערך הבא נדרש כחלק מהמאפיין metadata:

  • מקש: osconfig-disabled-features
  • ערך: יכול להיות כל אחת מהאפשרויות הבאות או שילוב שלהן:
    • osinventory
    • tasks
    • guestpolicies

הדרישות לסוכן OS Config פעיל

כדי שהסוכן OS Config ייחשב כפעיל וככזה שניתן לחייב עליו, הוא צריך לעמוד בכל הדרישות הבאות:

  • צריך להגדיר את VM Manager.
  • המכונה הווירטואלית צריכה להיות במצב RUNNING, וסוכן OS Config צריך לתקשר עם שירות OS Config.

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

אימות ההגדרה

אחרי שמסיימים את תהליך ההגדרה, אפשר לאמת את ההגדרה.

הצגת הגדרות התכונות של VM Manager בפרויקט

כדי לבדוק אם כל התכונות של VM Manager מופעלות בפרויקט שלכם:

gcloud

משתמשים בפקודה gcloud compute os-config project-feature-settings describe באופן הבא:

gcloud compute os-config project-feature-settings describe \
    --project PROJECT_ID

הפלט של הפקודה אמור להיראות כך:

name: projects/my-project/locations/global/projectFeatureSettings
patchAndConfigFeatureSet: OSCONFIG_C

הערך OSCONFIG_C מייצג את כל התכונות של VM Manager, והערך OSCONFIG_B מייצג את התכונות המוגבלות.

REST

כדי לראות את התכונות של VM Manager ברמת Google Cloud הפרויקט, יוצרים בקשת GET אל ה-method‏ projects.locations.global.getProjectFeatureSettings.

   GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/global/projectFeatureSettings
   

מחליפים את PROJECT_ID במזהה הפרויקט.

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

{
 "name": "projects/my-project/locations/global/projectFeatureSettings",
 "patchAndConfigFeatureSet": "OSCONFIG_C"
}

הערך OSCONFIG_C מייצג את כל התכונות של VM Manager, והערך OSCONFIG_B מייצג את התכונות המוגבלות.

הפעלת כל הפונקציות של VM Manager

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

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

המסוף

  1. נכנסים לדף OS policies במסוף Google Cloud .

מעבר למדיניות של מערכת ההפעלה

  1. לוחצים על Enable full VM Manager functionality כדי להפעיל את כל התכונות של VM Manager.

    הפעלה אוטומטית של VM Manager מלא.

gcloud

כדי להפעיל את כל התכונות של VM Manager בפרויקט Google Cloud , משתמשים בפקודה gcloud compute os-config project-feature-settings update:

gcloud compute os-config project-feature-settings update \
    --project PROJECT_ID \
    --patch-and-config-feature-set=full

REST

כדי להפעיל את כל התכונות של VM Manager Google Cloud ברמת הפרויקט, שולחים בקשת PATCH אל השיטה projects.locations.global.updateProjectFeatureSettings.

   PATCH https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/global/projectFeatureSettings
   {
     "name": "projects/PROJECT_ID/locations/global/projectFeatureSettings",
     "patchAndConfigFeatureSet": "OSCONFIG_C"
   }
   

מחליפים את PROJECT_ID במזהה הפרויקט. הערך OSCONFIG_C מייצג את כל התכונות של VM Manager.

השבתת הסוכן OS Config

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

Linux

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

sudo systemctl stop google-osconfig-agent
sudo systemctl disable google-osconfig-agent

Windows

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

PowerShell Stop-Service google_osconfig_agent [-StartupType disabled]

מה השלב הבא?