צפייה בסטטוס של VM Manager בארגון באמצעות מאגר משאבי ענן ו-BigQuery

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

במאמר הזה מוסבר איך להשתמש ב-VM Manager, ב-Cloud Asset Inventory (מאגר משאבי ענן) וב-BigQuery כדי לראות דוחות על הפעלת VM Manager ועל סטטוס מערכת ההפעלה של מכונות Compute Engine בארגון.

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

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

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

    המסוף

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

    gcloud

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

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

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

כדי לקבל את ההרשאות שדרושות לייצוא נתוני משאבים ולהרצת שאילתות ב-BigQuery, בקשו מהאדמין לתת לכם את התפקידים הבאים ב-IAM ברמת הפרויקט, התיקייה או הארגון:

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

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

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

כדי לייצא נתוני משאבים ולהריץ שאילתות ב-BigQuery, צריך את ההרשאות הבאות:

  • cloudasset.assets.exportOSInventories
  • cloudasset.assets.exportResource
  • bigquery.datasets.get
  • bigquery.tables.create
  • bigquery.tables.update
  • bigquery.tables.get
  • bigquery.jobs.create

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

ייצוא נתונים של VM Manager ל-BigQuery

כדי לייצא נתוני מלאי ומשאבים של מערכת הפעלה ל-BigQuery:

  1. מזהים את מזהה הארגון:

    gcloud projects get-ancestors PROJECT_ID
    

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

  2. ייצוא נתוני מלאי מערכות ההפעלה שנאספו על ידי VM Manager ממכונות וירטואליות:

    gcloud asset export \
        --content-type=os-inventory \
        --organization=ORGANIZATION_ID \
        --per-asset-type \
        --bigquery-table="projects/BQ_PROJECT_ID/datasets/DATASET_ID/tables/os"
    

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

    • ‫ORGANIZATION_ID: מזהה הארגון.
    • ‫BQ_PROJECT_ID: מזהה הפרויקט שבו נמצא מערך הנתונים שלכם ב-BigQuery.
    • ‫DATASET_ID: השם של מערך הנתונים ב-BigQuery.
  3. מייצאים את המטא-נתונים של המשאב לטבלה ב-BigQuery:

    gcloud asset export \
        --content-type=resource \
        --organization=ORGANIZATION_ID \
        --per-asset-type \
        --bigquery-table="projects/BQ_PROJECT_ID/datasets/DATASET_ID/tables/res"
    

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

    • ‫ORGANIZATION_ID: מזהה הארגון.
    • ‫BQ_PROJECT_ID: מזהה הפרויקט שבו נמצא מערך הנתונים ב-BigQuery.
    • ‫DATASET_ID: המזהה של מערך הנתונים ב-BigQuery.

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

יצירת דוח סטטוס של VM Manager בארגון

אחרי שמייצאים את נתוני המלאי, אפשר להריץ שאילתת SQL ב-BigQuery כדי ליצור דוח סטטוס של VM Manager. בדוח הזה מוצגים הפרטים הבאים:

  • האם נתוני מלאי של מערכת ההפעלה של VM Manager מדווחים (vmm_data) לכל מכונה וירטואלית.
  • השם הארוך של מערכת ההפעלה (os_info_reported_by_vmm) וגרסת הסוכן של osconfig‏ (osconfig_agent_version) שדווחו על ידי כל מכונה.
  • אם שירות ה-API של osconfig.googleapis.com מופעל (osconfig_enabled_in_project) בפרויקטים בהיררכיה.

כדי ליצור את הדוח:

  1. במסוף Cloud de Confiance , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. בעורך השאילתות, מדביקים את סקריפט ה-SQL הבא:

    SELECT
      vms.project,
      vms.zone,
      vms.instance_name,
      vms.instance_status,
      vms.vmm_data,
      vms.instance_creation_time,
      vms.vmm_info_update_time,
      --  vms.gce_image,
      vms.os_info_reported_by_vmm,
      vms.service_account,
      service.resource.data.state AS osconfig_enabled_in_project,
      vms.osconfig_agent_version
      --  "INFO N/A" as enable_osconfig_metadata_set_in_project,
      --  "INFO N/A" as enable_osconfig_metadata_set_in_instance,
    FROM
    (
      SELECT
        SPLIT(name, '/')[OFFSET(8)] AS instance_name,
        SPLIT(name, '/')[OFFSET(4)] AS project,
        SPLIT(name, '/')[OFFSET(6)] AS zone,
        instances.ancestors,
        instances.resource.data.creationTimestamp AS instance_creation_time,
        instances.resource.data.serviceAccounts[SAFE_OFFSET(0)].email AS service_account,
        CASE WHEN inventory.os_inventory IS NOT NULL THEN TRUE ELSE FALSE END AS vmm_data,
        /*  SPLIT(resource.data.disks[OFFSET(0)].licenses[OFFSET(0)], '/')[OFFSET(9)] as gce_image, */
        inventory.os_inventory.os_info.long_name AS os_info_reported_by_vmm,
        inventory.os_inventory.update_time AS vmm_info_update_time,
        instances.resource.data.status AS instance_status,
        inventory.os_inventory.os_info.osconfig_agent_version
      FROM
        DATASET_ID.res_compute_googleapis_com_Instance AS instances
        LEFT JOIN DATASET_ID.os_compute_googleapis_com_Instance AS inventory
      USING (name)
      --  WHERE instances.resource.data.status = "RUNNING"
    ) AS vms
    LEFT JOIN DATASET_ID.res_serviceusage_googleapis_com_Service AS service
      ON vms.ancestors[OFFSET(0)] = service.resource.data.parent
    WHERE service.resource.data.name = "osconfig.googleapis.com"
    

    מחליפים את הערך DATASET_ID בשם של מערך הנתונים ב-BigQuery.

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

מידע נוסף על שליחת שאילתות על נתונים זמין במאמר הרצת שאילתות.

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

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