במאמר הזה מוסבר איך להריץ גילוי מלאי בחשבון Azure באמצעות כלי ה-CLI של לקוח הגילוי של Migration Center.
ה-CLI של mcdc מאפשר לכם לאסוף מידע על המכונות הווירטואליות שלכם ב-Azure. לאחר מכן, ממשק mcdc CLI שולח את המידע הזה אל Migration Center, שבו אפשר להמשיך בהערכה.
נתונים שנאספים במהלך גילוי המלאי
ממשק mcdc CLI אוסף את הנתונים הבאים ממכונות וירטואליות ב-Azure:
- פרטי המופע (מזהה, שם, סוג, מצב)
- פרטים על סוג המכונה (CPU, זיכרון)
- פרטים על מערכת ההפעלה (סוג וגרסה)
- גודל כונן
- ממשקי רשת (כתובות IP ו-MAC)
- תגים
- אזור המכונה
- מדדי ביצועים (ניצול המעבד, ניצול הזיכרון, קלט/פלט ברשת, קלט/פלט בדיסק)
לפני שמתחילים
- בודקים את הדרישות להורדה ולהרצה של
mcdcCLI. - משלימים את השלבים להורדת ה-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, פועלים לפי השלבים הבאים:
- בפורטל Azure, עוברים לדף App Registration ולוחצים על New registration.
- כדי להוסיף פרטי כניסה חדשים של לקוח, לוחצים על הוספת אישור או סוד.
- כדי להוסיף סוד לקוח חדש, לוחצים על + New client secret ומזינים תיאור ותאריך תפוגה לסוד הלקוח.
- לוחצים על הוספה.
הסוד של הלקוח מוכן לשימוש. מעתיקים את הערך של הסוד של הלקוח כי תצטרכו אותו בהמשך כשמריצים את פקודות ה-CLI של mcdc.
יצירת תפקיד בהתאמה אישית
כדי לוודא של-mcdc CLI יש את ההרשאות הנדרשות לגישה למשאבי Azure, צריך ליצור תפקיד מותאם אישית עם ההרשאות הנדרשות.
כדי ליצור תפקיד בהתאמה אישית:
- בפורטל Azure, עוברים לדף Subscriptions ובוחרים את המינוי ל-Azure.
- לוחצים על מזהה המינוי כדי להעתיק אותו.
שומרים את תבנית ה-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": [] } ] } }
מידע נוסף על פרטי ההרשאות זמין במאמר בנושא פרטי הרשאות.
ב-Azure Portal, עוברים לדף Access control (IAM) (בקרת גישה (IAM)).
כדי להוסיף תפקיד בהתאמה אישית, לוחצים על + הוספה.
לוחצים על Start from JSON (התחלה מקובץ JSON) ואז על Select file (בחירת קובץ) כדי להעלות את קובץ ה-JSON שיצרתם בשלב 3.
כדי לבדוק את הקלט, לוחצים על בדיקה + יצירה, ואז כדי ליצור את התפקיד בהתאמה אישית, לוחצים על יצירה.
הקצאת התפקיד בהתאמה אישית ל-mcdc CLI
אחרי שיוצרים את התפקיד בהתאמה אישית, צריך להקצות אותו לאפליקציית mcdc CLI כדי להעניק לה את ההרשאות הנדרשות.
כדי להקצות תפקיד בהתאמה אישית ל-mcdc CLI, פועלים לפי השלבים הבאים:
- ב-Azure Portal, עוברים לדף Access control (IAM) (בקרת גישה (IAM)).
- לוחצים על + הוספה ואז על הוספת הקצאת תפקיד.
- בתפקיד בהתאמה אישית שיצרתם (יצירת תפקיד בהתאמה אישית), מזינים
m2vmובוחרים את התפקיד. - לוחצים על הבא.
- לוחצים על + בחירת חברים, מחפשים את
mcdcCLI שרשמתם בקטע רישוםmcdcCLI ולוחצים על בחירה. - כדי לבדוק ולהקצות את התפקיד בהתאמה אישית לאפליקציה, לוחצים על בדיקה + הקצאה.
גילוי מכונות וירטואליות ב-Azure
כדי לאסוף פרטי מלאי ממופעי מכונות וירטואליות ב-Azure, פועלים לפי השלבים הבאים:
במסוף של שורת הפקודה, עוברים לספרייה שבה הורדתם את ה-CLI של
mcdc.מריצים את הגילוי:
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: סוד הלקוח שיצרתם בקטע רישום
mcdcCLI. - 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