برخلاف هایپروایزرهای نوع ۲ که وابسته به سیستم‌عامل میزبان هستند، هایپروایزرهای نوع ۱ مستقل از سیستم‌عامل اجرا می‌شوند و همین موضوع باعث می‌شود بهترین گزینه برای اجرای ماشین‌های مجازی با بالاترین کارایی باشند. علاوه بر ارائه عملکرد عالی در مجازی‌سازی، هایپروایزرهای Bare Metal به شما اجازه می‌دهند دستگاه‌های PCIe را مستقیماً به ماشین‌های مجازی متصل کنید.

اگر با ESXi آشنایی دارید و دنبال جایگزینی قدرتمند و سازمانی به جای هایپروایزر گران‌قیمت Broadcom می‌گردید، XCP-ng که بر پایه Xen ساخته شده، می‌تواند انتخاب مناسبی برای شما باشد. در ادامه همه چیزهایی که برای شروع کار با این پلتفرم مجازی‌سازی متن‌باز باید بدانید را برایتان آورده‌ایم.


آنچه نیاز دارید

برخلاف نصب نرم‌افزاری که روی یک سیستم‌عامل موجود انجام می‌شود، XCP-ng نیاز دارد که یک دستگاه کامل را به خودش اختصاص دهید. البته به طور فنی می‌توان آن را در داخل یک ماشین مجازی دیگر و به صورت مجازی‌سازی تو در تو هم اجرا کرد، اما بهترین عملکرد زمانی به دست می‌آید که XCP-ng را به صورت نصب مستقیم روی سخت‌افزار کامپیوتر خود داشته باشید. دقیقاً همین رویکرد هدف این آموزش است.

برای سهولت کار، ما از Xen Orchestra استفاده می‌کنیم تا بتوانید از طریق رابط وب روی یک کامپیوتر دیگر در همان شبکه محلی (LAN) به میزبان XCP-ng دسترسی پیدا کنید. بنابراین به اتصال اترنت روی هر دو کامپیوتر میزبان و کامپیوتر ثانویه نیاز دارید. در نهایت، باید یک فلش USB با حداقل ظرفیت ۲ گیگابایت برای ساخت دیسک بوتیبل XCP-ng آماده کنید.


ساخت فلش USB بوتیبل

پس از تهیه همه تجهیزات لازم، وقت آن است که فایل ISO مربوط به XCP-ng را روی فلش USB بنویسید. برای این کار از نرم‌افزار مطمئن و محبوب Rufus استفاده خواهیم کرد، اما شما می‌توانید ابزارهایی مانند Balena Etcher یا Ventoy را نیز انتخاب کنید.

  1. آخرین نسخه فایل ISO XCP-ng را از وب‌سایت رسمی دانلود کنید.

  2. به وب‌سایت Rufus مراجعه کرده و نسخه پرتابل (بدون نیاز به نصب) را دانلود کنید.

  3. فایل rufus.exe را با دسترسی مدیر (Run as Administrator) اجرا کنید.

  4. در محیط Rufus، فلش USB خود را به عنوان Device انتخاب نمایید.

 

Choosing the XCP-ng ISO in Rufus

 

روی دکمه «Select» در بخش «Boot selection» کلیک کنید و فایل ISO مربوط به XCP-ng را انتخاب نمایید.

Selecting the XCP-ng ISO in Rufus

دکمه «Start» را فشار دهید، با پاک شدن اطلاعات موجود روی فلش USB موافقت کنید و تا پایان فرایند نوشتن فایل‌ها توسط Rufus صبورانه منتظر بمانید.

Pressing the Start button in Rufus

تغییر تنظیمات بوت در بایوس
و فعال‌سازی گزینه‌های مجازی‌سازی

از آنجا که قرار است XCP-ng را به صورت Bare-metal نصب کنید، باید وارد تنظیمات بایوس شوید و تنظیم کنید که کامپیوتر از روی فلش USB بوت شود. این زمان خوبی است برای فعال کردن قابلیت‌هایی مثل SVM، IOMMU و چند گزینه مهم دیگر در بایوس. هرچند جزئیات این کار بسته به مدل مادربورد متفاوت است، اما روند کلی به شرح زیر است:

  • قبل از روشن کردن کامپیوتر، فلش USB بوتیبل را به دستگاه متصل کنید و سپس کامپیوتر را روشن کنید و بلافاصله کلید Del را فشار دهید تا وارد محیط بایوس شوید.

  • در منوی بایوس، به بخش تنظیمات بوت (Boot settings) بروید.

  • فلش USB که فایل نصب XCP-ng روی آن قرار دارد را به عنوان اولین گزینه بوت (Boot Option #1) انتخاب کنید.

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

Setting a USB drive as the Boot option in the BIOS

در مرحله بعد، به تب «Advanced CPU Settings/Tweaker» بروید و تنظیمات «Virtualization» را فعال (Enabled) کنید.

The procedure enable SVM Mode in the Gigabyte Aorus BIOS

بسته به مدل مادربورد شما، این گزینه ممکن است با عناوینی مانند SVM mode، VT-x یا AMD-V نمایش داده شود.
همچنین در تب «Miscellaneous settings» به دنبال گزینه IOMMU بگردید و اگر قصد دارید در آینده قابلیت PCI passthrough را فعال کنید، حتما آن را روشن نمایید.

Enabling IOMMU in the BIOS

تغییرات را ذخیره کنید و از منوی بایوس خارج شوید.
نصب XCP-ng روی کامپیوتر میزبان
پس از بوت شدن سیستم، وارد صفحه نصب XCP-ng خواهید شد. فرآیند نصب به طور کلی ساده است، اما در ادامه مراحل به صورت خلاصه شرح داده شده است:

در صفحه «Keymap»، طرح‌بندی صفحه‌کلید مورد نظر خود را انتخاب کنید.

Choosing the keymap on the XCP-ng installation wizard

حتما پس از هر مرحله، دکمه «OK» را فشار دهید.
در صفحه خوش‌آمدگویی نیز روی «OK» کلیک کنید.

Choosing the OK button on the XCP-ng welcome screen

وقتی نصب‌کننده درخواست کرد، موافقت خود را با قرارداد مجوز کاربر نهایی (EULA) اعلام کنید.

Accepting the EULA on the XCP-ng installation wizard

دیسک اصلی که می‌خواهید برای سرور XCP-ng استفاده کنید را انتخاب نمایید.

Selecting the primary disk in XCP-ng

درایوی را که قصد دارید داده‌های ماشین‌های مجازی را در آن ذخیره کنید، انتخاب کنید.

Choosing the HDD to store the VMs in XCP-ng

از آنجایی که برای فرآیند نصب از فلش USB استفاده می‌کنید، گزینه «Local media» را به عنوان منبع نصب انتخاب کنید.

Picking Local media at the XCP-ng installation wizard

وقتی راهنمای نصب از شما خواست منبع نصب را تأیید کنید، دکمه «OK» را فشار دهید.

Verifying the bootable USB drive at the XCP-ng installation wizard

برای دستگاه میزبان XCP-ng، یک رمز عبور تعیین کنید.

Setting a password in the XCP-ng installation wizard

اگر سیستم میزبان شما چندین رابط شبکه دارد، رابطی را که می‌خواهید به XCP-ng اختصاص دهید انتخاب کنید.
در بخش تنظیمات شبکه (Networking)، گزینه «Automatic configuration (DHCP)» را فعال کنید تا XCP-ng به‌صورت خودکار شبکه سیستم را پیکربندی کند.

Choosing the Networking settings in the XCP-ng installation wizard

همچنین می‌توانید به‌صورت دستی یک آدرس IP ثابت تنظیم کنید و آدرس IPv4، ماسک زیرشبکه (Subnet mask) و دروازه پیش‌فرض (Gateway) را وارد نمایید.
سپس نام هاست و تنظیمات DNS مربوط به کامپیوتر XCP-ng را وارد کنید.

Setting up the Hostname and DNS Configuration at the XCP-ng installation wizard

منطقه زمانی (Time zone) را انتخاب کنید و زمانی که XCP-ng از شما خواست روش محاسبه زمان محلی را انتخاب کنید، گزینه «Manual time entry» را برگزینید.

Picking the timezone in the XCP-ng installation wizard

در نهایت، دکمه «Install XCP-ng» را فشار دهید.

Picking the Install XCP-ng option in the XCP-ng installation wizard

وقتی XCP-ng از شما خواست بسته‌های مکمل را نصب کرده و سیستم را برای تکمیل تنظیمات مجازی‌سازی ری‌استارت کنید، گزینه «No» را انتخاب نمایید.


دسترسی به رابط کاربری وب XCP-ng

پس از نصب کامل XCP-ng روی کامپیوتر، می‌توانید به راحتی ماشین‌های مجازی مورد نیاز پروژه‌هایتان را ایجاد کنید. اما رابط کاربری ممکن است به خاطر منوهای پیچیده کمی گیج‌کننده باشد. خوشبختانه می‌توانید از طریق یک دستگاه دیگر با استفاده از رابط وب به میزبان XCP-ng دسترسی پیدا کنید. برای این کار:

  • به سیستم دوم خود مراجعه کرده و کلاینت PuTTY را دانلود کنید.

  • PuTTY را نصب کرده و فایل اجرایی آن (.exe) را با دسترسی مدیر (Run as Administrator) اجرا کنید.

  • آدرس IP کامپیوتر میزبان XCP-ng را وارد کرده و روی دکمه «Open» کلیک کنید.

 

Creating a PuTTY session to log into the XCP-ng host machine

 

وقتی پنجره هشدار امنیتی (Security alert) در PuTTY ظاهر شد، روی دکمه «Accept» کلیک کنید.

Accepting the security risk in PuTTY

نام کاربری را «root» وارد کنید و سپس رمز عبوری را که در بخش قبلی تنظیم کرده‌اید وارد نمایید.
دستور زیر را در ترمینال اجرا کنید:

bash -c "$(wget -qO- https://xoa.io/deploy)"
The command to install an XOA VM

دکمه Enter را دو بار فشار دهید و سپس آدرس IP ماشین مجازی XOA را با مرورگر دلخواه خود باز کنید.
برای ورود به رابط وب Xen Orchestra، نام کاربری «admin@admin.net» و رمز عبور «admin» را وارد نمایید.

راه‌اندازی ماشین مجازی در XCP-ng

این آموزش بدون آموزش نحوه راه‌اندازی ماشین‌های مجازی روی XCP-ng کامل نخواهد بود. اما ابتدا باید میزبان (host) را به رابط وب اضافه کنید و سپس درایو ذخیره‌سازی مربوط به فایل‌های ISO را تنظیم نمایید.

در داشبورد XCP-ng، گزینه «Add Server» را انتخاب کنید.

The Add server button on the XCP-ng web UI

برای نود XCP-ng خود یک نام انتخاب کنید، سپس آدرس IP، نام کاربری و رمز عبور را وارد کنید و در نهایت روی دکمه «Connect» بزنید.

Adding a new XCP-ng server

روی علامت تعجب کنار نود کلیک کنید و سپس برای قبول گواهی‌نامه خودامضا شده سرور XCP-ng، گزینه «OK» را انتخاب کنید.

Accepting a self-signed certificate on the XCP-ng web UI

سپس در تب «New»، گزینه «Storage» را کلیک کنید.

Heading to the Storage tab inside the New page of the XCP-ng web UI

در بخش «Host»، سرور XCP-ng که به‌تازگی اضافه کرده‌اید را انتخاب کنید، سپس نام (Name)، توضیحات (Description) و نوع (Type) فضای ذخیره‌سازی را مشخص نمایید.

Filling the storage settings in the XCP-ng web UI

فعلاً می‌توانید کار را ساده نگه دارید و در بخش ISO SR، نوع «Local» را انتخاب کنید.
مسیر /media را وارد کرده و روی دکمه «Create» کلیک کنید.

Creating a storage pool in the XCP-ng web UI

در نهایت، زمان آن رسیده که اولین ماشین مجازی خود را در XCP-ng راه‌اندازی کنید.

به تب «Import» رفته و وارد بخش «Disk» شوید، سپس استخر ذخیره‌سازی (Storage Pool) که در مرحله قبل پیکربندی کرده‌اید را انتخاب کنید.

Choosing the Storage disk inside the XCP-ng web UI

فایل‌های ISO سیستم‌عامل‌ها یا توزیع‌های دلخواهتان را در رابط کاربری بارگذاری کرده و سپس روی دکمه «Import» کلیک کنید.

Importing the ISO files in the XCP-ng web UI

به تب «New» رفته و وارد بخش «VM» شوید، سپس استخر ذخیره‌سازی اصلی سرور XCP-ng را انتخاب نمایید.

Adding a new VM in XCP-ng

در بخش Template، گزینه «Other install media» را انتخاب کرده و یک نام و توضیح برای ماشین مجازی خود وارد کنید.

Choosing the template in XCP-ng

مقدار vCPU و RAM را بر اساس نیاز خود تنظیم کنید و تنظیمات شبکه را بدون تغییر باقی بگذارید.
سپس گزینه «ISO/DVD» را فعال کرده و فایل ISO که قبلاً آپلود کرده‌اید را انتخاب نمایید.

Choosing the ISO file for a VM in the XCP-ng web UI

روی «Add disk» کلیک کنید و مقداری از فضای ذخیره‌سازی اصلی را به ماشین مجازی اختصاص دهید.

Adding storage to a VM in the XCP-ng web UI

دکمه «Create» را فشار دهید.
ساخت سروری بسیار مقیاس‌پذیر برای ماشین‌های مجازی با استفاده از XCP-ng

Running a NixOS VM in XCP-ng

اگر تمام مراحل را به‌درستی انجام داده باشید، XCP-ng ماشین مجازی شما را ایجاد می‌کند و می‌توانید از طریق تب «Console» به ماشین مجازی تازه راه‌اندازی شده دسترسی پیدا کنید. بدین ترتیب آماده‌اید تا سفر مجازی‌سازی خود را با XCP-ng شروع کنید.

اگر هنوز در انتخاب این پلتفرم مجازی‌سازی تردید دارید، بد نیست چند نکته مثبت و منفی ساخت لابراتوار خانگی با XCP-ng را بدانید. با اینکه فرآیند نصب کمی پیچیده است، XCP-ng گزینه‌ای ایده‌آل برای راه‌اندازی ماشین‌های مجازی ویندوزی است و قابلیت PCI passthrough در این پلتفرم متن‌باز به سادگی انجام می‌شود.

با این حال، XCP-ng بیشتر برای وظایف مجازی‌سازی در سطح سازمانی طراحی شده و ممکن است برای پروژه‌های خانگی مناسب نباشد. از آنجا که به طور بومی از کانتینرها پشتیبانی نمی‌کند، برای اجرای حتی چند کانتینر نیاز به راه‌اندازی ماشین مجازی خواهید داشت. بنابراین اگر دنبال پروژه‌های سرگرمی و غیرتجاری هستید، احتمالاً Proxmox گزینه مناسب‌تری برای شما خواهد بود.

بدون نظر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *