גילוי מופעים של מכונות וירטואליות ב-Azure

במאמר הזה מוסבר איך להריץ גילוי מלאי בחשבון Azure באמצעות כלי ה-CLI של לקוח הגילוי של Migration Center.

ה-CLI של mcdc מאפשר לכם לאסוף מידע על המכונות הווירטואליות שלכם ב-Azure. לאחר מכן, ממשק mcdc CLI שולח את המידע הזה אל Migration Center, שבו אפשר להמשיך בהערכה.

נתונים שנאספים במהלך גילוי המלאי

ממשק mcdc CLI אוסף את הנתונים הבאים ממכונות וירטואליות ב-Azure:

  • פרטי המופע (מזהה, שם, סוג, מצב)
  • פרטים על סוג המכונה (CPU, זיכרון)
  • פרטים על מערכת ההפעלה (סוג וגרסה)
  • גודל כונן
  • ממשקי רשת (כתובות IP ו-MAC)
  • תגים
  • אזור המכונה
  • מדדי ביצועים (ניצול המעבד, ניצול הזיכרון, קלט/פלט ברשת, קלט/פלט בדיסק)

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

  1. בודקים את הדרישות להורדה ולהרצה של mcdc CLI.
  2. משלימים את השלבים להורדת ה-CLI של mcdc. ‫Migration Center לא תומך ב-Azure PowerShell, לכן צריך להשתמש ב-Azure CLI כדי להריץ את פקודות ה-CLI של mcdc.

אימות ב-Azure

כדי לאפשר ל-mcdc CLI לגשת לסביבת Azure שלכם, אתם צריכים להגדיר את הגישה באמצעות אחת מהשיטות הבאות:

שימוש בפרטי הכניסה הקיימים שלכם ב-Azure

כדי להשתמש בפרטי הכניסה הקיימים שלכם ב-Azure, מריצים את הפקודות של mcdc CLI ישירות מ-Azure Cloud Shell. אם מריצים את mcdc CLI מ-Azure Cloud Shell, אפשר להשתמש בפרטי הכניסה הקיימים בלי סוד לקוח. במקרה כזה, ל-mcdc CLI יש גישה לסביבת Azure שלכם כדי לגלות מכונות וירטואליות, בהתאם להרשאות שניתנו באמצעות פרטי הכניסה.

יצירת סוד לקוח עבור mcdc CLI

כדי לאפשר ל-mcdc CLI לגשת למשאבי Azure, צריך לרשום את mcdc CLI כאפליקציה בחשבון Azure וליצור סוד לקוח.

כדי ליצור סוד לקוח עבור mcdc CLI, פועלים לפי השלבים הבאים:

  1. בפורטל Azure, עוברים לדף App Registration ולוחצים על New registration.
  2. כדי להוסיף פרטי כניסה חדשים של לקוח, לוחצים על הוספת אישור או סוד.
  3. כדי להוסיף סוד לקוח חדש, לוחצים על ‎+ New client secret ומזינים תיאור ותאריך תפוגה לסוד הלקוח.
  4. לוחצים על הוספה.

הסוד של הלקוח מוכן לשימוש. מעתיקים את הערך של הסוד של הלקוח כי תצטרכו אותו בהמשך כשמריצים את פקודות ה-CLI של mcdc.

יצירת תפקיד בהתאמה אישית

כדי לוודא של-mcdc CLI יש את ההרשאות הנדרשות לגישה למשאבי Azure, צריך ליצור תפקיד מותאם אישית עם ההרשאות הנדרשות.

כדי ליצור תפקיד בהתאמה אישית:

  1. בפורטל Azure, עוברים לדף Subscriptions ובוחרים את המינוי ל-Azure.
  2. לוחצים על מזהה המינוי כדי להעתיק אותו.
  3. שומרים את תבנית ה-JSON הבאה ומחליפים את SUBSCRIPTION_ID במזהה המינוי שהעתקתם בשלב 2:

      {
      "properties": {
            "roleName": "Minimum permissions role",
            "description": "This role contains the bare minimum of Azure IAM permissions",
            "assignableScopes": [
                  "/subscriptions/SUBSCRIPTION_ID"
            ],
      "permissions": [
                  {
                  "actions": [
                    "Microsoft.Compute/virtualMachines/read",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Insights/MetricDefinitions/read",
                    "Microsoft.Insights/Metrics/Read",
                    "Microsoft.Network/networkInterfaces/read"
                  ],
                  "notActions": [],
                  "dataActions": [],
                  "notDataActions": []
                  }
            ]
      }
      }
      

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

  4. ב-Azure Portal, עוברים לדף Access control (IAM) (בקרת גישה (IAM)).

  5. כדי להוסיף תפקיד בהתאמה אישית, לוחצים על + הוספה.

  6. לוחצים על Start from JSON (התחלה מקובץ JSON) ואז על Select file (בחירת קובץ) כדי להעלות את קובץ ה-JSON שיצרתם בשלב 3.

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

הקצאת התפקיד בהתאמה אישית ל-mcdc CLI

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

כדי להקצות תפקיד בהתאמה אישית ל-mcdc CLI, פועלים לפי השלבים הבאים:

  1. ב-Azure Portal, עוברים לדף Access control (IAM) (בקרת גישה (IAM)).
  2. לוחצים על + הוספה ואז על הוספת הקצאת תפקיד.
  3. בתפקיד בהתאמה אישית שיצרתם (יצירת תפקיד בהתאמה אישית), מזינים m2vm ובוחרים את התפקיד.
  4. לוחצים על הבא.
  5. לוחצים על + בחירת חברים, מחפשים את mcdc CLI שרשמתם בקטע רישום mcdc CLI ולוחצים על בחירה.
  6. כדי לבדוק ולהקצות את התפקיד בהתאמה אישית לאפליקציה, לוחצים על בדיקה + הקצאה.

גילוי מכונות וירטואליות ב-Azure

כדי לאסוף פרטי מלאי ממופעי מכונות וירטואליות ב-Azure, פועלים לפי השלבים הבאים:

  1. במסוף של שורת הפקודה, עוברים לספרייה שבה הורדתם את ה-CLI של mcdc.

  2. מריצים את הגילוי:

    Azure Cloud Shell

    כדי לגלות מכונות וירטואליות מ-Azure Cloud Shell באמצעות פרטי הכניסה הקיימים שלכם ל-Azure, מריצים את הפקודה הבאה:

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --host-credentials
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --host-credentials
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

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

    • TENANT_ID: המזהה הייחודי של הדייר ב-Azure Active Directory‏ (AAD).
    • SUBSCRIPTION_ID: מזהה המינוי שרוצים לגלות. הדגל הזה הוא אופציונלי. אם הוא לא מצוין, המערכת תאסוף את כל המינויים בדייר.
    • RESOURCE_GROUP: קבוצת משאבי Azure שמכילה את המופעים של המכונות הווירטואליות שרוצים לגלות. הסימון הזה הוא אופציונלי.

    סוד לקוח

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

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

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

    • TENANT_ID: המזהה הייחודי של הדייר ב-Azure Active Directory ‏ (AAD).
    • CLIENT_ID: מספר הלקוח שיצרתם בקטע רישום ה-CLI של mcdc.
    • CLIENT_SECRET: סוד הלקוח שיצרתם בקטע רישום mcdc CLI.
    • SUBSCRIPTION_ID: מזהה המינוי שרוצים לגלות. הדגל הזה הוא אופציונלי. אם לא מציינים אותו, המערכת אוספת את כל המינויים בדייר.
    • RESOURCE_GROUP: קבוצת משאבי Azure שמכילה את המופעים של המכונות הווירטואליות שרוצים לגלות. הסימון הזה הוא אופציונלי.

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

  [+] Collecting Azure VM instances...
  Collecting region eu-west-1
  Collected 73 Azure VM instances
  [✓] Collection completed.

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

Linux

./mcdc discover ls

Windows

mcdc.exe discover ls

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

    VM Assets
    PLATFORM VM ID                        NAME              COLLECTED DATA   OS                          IP ADDRESSES
    4f7bd883-b9cd-42e8-a67d-af3ec82b7f29  abc-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.1
    b5bcefcc-5565-4e45-a05a-fac055f73f14  def-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.2
    sfbcesdc-8865-4e4t-a0sf-f8sfyjf75723  ghi-ol9.3         AZUREVM          Linux/UNIX                  192.0.2.3

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