پرش به مطلب اصلی

راهنمای ایمپورت فایل های OVA آوید به VMware

پیش‌نیازها​

فایل‌ها و پوشه‌های زیر باید از سامانه files.cloudavid.com قسمت VM Images دانلود شوند:

موردتوضیح
Import-VMs-from-OVA.ps1اسکریپت پاورشل
نرم افزار VMware ovftoolابزار جانبی که اسکریپت به آن نیاز دارد
فایل‌های .ovaفایل‌های ماشین‌های مجازی موردنظر که باید ایمپورت شوند
نرم افزار Powershellترمینال پیشفرض در ویندوز 10 و 11

برای دانلود فایل های ova حتما از یک نرم افزار مدیریت دانلود استفاده کنید و از وجود فضای کافی روی هارددیسک خود اطمینان حاصل کنید.


مرحله ۱: آماده‌سازی فایل‌ها روی سیستم​

  1. فایل فشرده‌ی VMware ovftool را که دانلود کرده‌اید استخراج کنید. پس از استخراج، پوشه‌ی ovftool را در مسیر زیر قرار دهید؛:

    C:\Tools\ovftool
  2. فایل‌های .ova را در یک پوشه‌ی مشخص قرار دهید؛ برای مثال:

    E:\Exports
  3. فایل Import-VMs-from-OVA.ps1 را روی سیستم ذخیره کنید.

افزودن ovftool به PATH​

  1. در سرچ ویندوز عبارت Environment Variables را جستجو کنید

  2. روی Environment Variables کلیک کنید.

  3. در بخش System variables، متغیر Path را انتخاب کرده و روی Edit کلیک کنید.

  4. مسیر پوشه‌ای که فایل ovftool.exe در آن قرار دارد را اضافه کنید؛ برای مثال:

    C:\Tools\ovftool
  5. همه‌ی پنجره‌ها را با OK ببندید و یک پنجره‌ی جدید PowerShell باز کنید.

برای اطمینان از درستی این مرحله، در PowerShell دستور زیر را اجرا کنید:

Get-Command ovftool

در صورت صحیح بودن تنظیمات، باید مسیر ovftool.exe نمایش داده شود.

نکته: اگر دستور بالا خطا داد، یعنی مرحله‌ی افزودن ovftool به PATH به‌درستی انجام نشده است.


مرحله ۲: ویرایش اسکریپت​

فایل Import-VMs-from-OVA.ps1 را با Notepad یا PowerShell ISE باز کنید.

در ابتدای فایل، بخشی با نام CONFIGURATION وجود دارد. فقط مقادیر زیر را مطابق محیط خود تغییر دهید:

$EsxiHost = "172.16.41.3" # IP سرور ESXi مقصد
$Datastore = "DataStore" # نام دیتاستور روی سرور مقصد (بدون [] و حساس به حروف بزرگ/کوچک)
$SourceDir = "E:\Exports" # پوشه‌ای که فایل‌های .ova در آن قرار دارند
$VMNames = @("Mux", "Access") # نام ماشین‌ها؛ باید دقیقاً با نام فایل‌های .ova مطابق باشد (بدون پسوند)
$DiskMode = "thin" # حالت دیسک

نکات مهم هنگام ویرایش​

  • مقدار $EsxiHost را با IP سرور ESXi خود جایگزین کنید.

  • مقدار $Datastore باید دقیقاً با نام دیتاستور روی سرور مقصد یکسان باشد و به حروف بزرگ و کوچک حساس است.

  • اگر نام فایل‌های .ova شما متفاوت از Mux.ova و Access.ova است، لیست $VMNames را مطابق نام فایل‌ها تغییر دهید.

    برای مثال، اگر فایل‌های شما Web.ova و DB.ova هستند:

    $VMNames = @("Web", "DB")
  • در $VMNames باید نام فایل‌ها بدون پسوند .ova نوشته شود.

پس از اعمال تغییرات، فایل را ذخیره کنید.


مرحله ۳: اجرای اسکریپت​

  1. PowerShell را با گزینه‌ی Run as Administrator باز کنید.

  2. به پوشه‌ای که اسکریپت در آن قرار دارد بروید:

    cd C:\مسیر\پوشه‌ی\اسکریپت
  3. اگر اجرای اسکریپت با خطای Execution Policy مواجه شد، یک‌بار دستور زیر را اجرا کنید:

    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
  4. اسکریپت را اجرا کنید:

    .\Import-VMs-from-OVA.ps1

مرحله ۴: ورود اطلاعات در زمان اجرا​

هنگام اجرا، اسکریپت اطلاعات زیر را از شما درخواست می‌کند:

درخواستتوضیح
Enter ESXi usernameنام کاربری سرور ESXi؛ معمولاً root
Enter ESXi passwordرمز عبور همان کاربر؛ هنگام تایپ نمایش داده نمی‌شود

پس از دریافت اطلاعات ورود، اسکریپت به‌صورت خودکار تمام ماشین‌های تعریف‌شده در $VMNames را به‌ترتیب ایمپورت می‌کند.

پیشرفت عملیات نیز در همان پنجره‌ی PowerShell نمایش داده خواهد شد.


مرحله ۵: بررسی نتیجه​

در پایان اجرا، اسکریپت خلاصه‌ای از نتیجه‌ی عملیات نمایش می‌دهد:

  • در صورت مشاهده‌ی پیام SUCCESS با رنگ سبز، ایمپورت آن ماشین با موفقیت انجام شده است.
  • در صورت مشاهده‌ی پیام FAILED همراه با کد خطا، ایمپورت آن ماشین با شکست مواجه شده است.

در انتهای خروجی، فهرست ماشین‌های موفق و ناموفق نیز نمایش داده می‌شود.


مرحله ۶: بعد از ایمپورت — مهم​

ماشین‌های مجازی به‌صورت خاموش (Powered OFF) ایمپورت می‌شوند و اسکریپت عمداً آن‌ها را روشن نمی‌کند.

پیش از روشن کردن هر ماشین، مراحل زیر را انجام دهید:

  1. وارد رابط مدیریتی سرور ESXi شوید؛ مانند vSphere Client یا Host Client.
  2. روی ماشین ایمپورت‌شده راست‌کلیک کرده و Edit Settings را انتخاب کنید.
  3. بخش Network Adapter را بررسی کنید:
    • ممکن است ماشین به یک portgroup ناموجود متصل باشد.
    • ممکن است کارت شبکه به‌کلی Disconnected باشد.
  4. تنظیمات NIC را اصلاح کرده و روی OK کلیک کنید.
  5. پس از اطمینان از صحیح بودن تنظیمات، ماشین را روشن کنید.

رفع خطاهای رایج​

خطاعلت و راه‌حل
ERROR: ovftool not found in PATHمرحله‌ی افزودن ovftool به PATH انجام نشده یا PowerShell پس از تغییر PATH مجدداً باز نشده است.
ERROR: You still need to set $EsxiHost ...مقادیر $EsxiHost یا $Datastore در بخش CONFIGURATION ویرایش نشده‌اند.
ERROR: Cannot find ... \Mux.ovaمسیر $SourceDir اشتباه است یا نام فایل با مقدار $VMNames مطابقت ندارد.
FAILED: ... (exit code ...)معمولاً به دلیل اشتباه بودن IP، نام کاربری، رمز عبور یا نام دیتاستور رخ می‌دهد. مقادیر بخش CONFIGURATION و اطلاعات ورود را بررسی کنید.
خطای Execution Policy هنگام اجرادستور Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass را اجرا کرده و سپس اسکریپت را دوباره اجرا کنید.

جمع‌بندی​

قبل از اجرای اسکریپت، این موارد را بررسی کنید:

  • ovftool به PATH اضافه شده باشد.
  • مسیر $SourceDir صحیح باشد.
  • مقدار $EsxiHost صحیح باشد.
  • نام $Datastore دقیقاً مطابق دیتاستور ESXi باشد.
  • مقادیر $VMNames با نام فایل‌های .ova مطابقت داشته باشند.
  • اطلاعات ورود به ESXi صحیح باشند.
  • پس از ایمپورت، تنظیمات Network Adapter ماشین‌ها بررسی شود.