در مقاله “ماشین مجازی چیست؟” با مفهوم ماشین مجازی و ساختار VM آشنا شدیم؛ در این مقاله نگاهی به روش های مختلف ساخت ماشین مجازی در محیط VMware vSphere خواهیم داشت . هر کدام از این روش ها مزایا و معایب خاص خود را دارند. شما به عنوان Admin سیستم در شرایط خاص و بنا به هدفی که دنبال می کنید، لازم است که یکی از روش های زیر را انتخاب کنید.
روش های گوناگون ساخت ماشین مجازی در VMware vSphere
VM from Scratch .1
ابتدایی ترین روش این است که خودتان از اول یک ماشین مجازی را بسازید و سپس سیستم عامل یا همان Guest OS را روی آن نصب کنید. به عنوان مثال فرض کنید به تازگی یک محیط جدید Config کرده اید و تا این مرحله فقط سرورهای ESXi نصب شده است، می خواهیم قبل از نصب vCenter، سرویس Active Directory و DNS رو آماده کنیم. برای این منظور نیاز به یک ماشین مجازی با سیستم عامل ویندوز سرور 2016 داریم. در چنین شرایطی چاره ای نداریم جز اینکه از این روش استفاده کنیم. برای ساخت ماشین مجازی با این روش هم می توانید از vCenter استفاده کنید و هم از طریق ESXi اقدام کنید.
اگر می خواهید از طریق ESXi این کار را انجام دهید، پس از وصل شدن به سرور ESXi از طریق vSphere Web Client، روی گزینه Create/Register VM کلیک کنید و سپس گزینه Create a new virtual machine را انتخاب کنید.
سپس نام ماشین مجازی را انتخاب کنید. توصیه میکنیم یک سیاست خاص و مناسب برای نامگذاری ماشین های مجازی داشته باشید، به عنوان مثال نام ماشین مجازی همان DNS Name سیستم عامل باشد.
در قسمت Compatibility مشخص کنید که این ماشین مجازی قرار است با کدام نسخه vSphere سازگار باشد. توجه داشته باشید، ممکن است شما در حال حاضر روی نسخه vSphere 6.7 و ESXi 6.7 در حال ساخت ماشین مجازی باشید، اما ممکن است این ماشین مجازی در آینده به یک ESXi نسخه 6.5 منتقل شود. پس بهتر است سازگاری با ESXi 6.5 را انتخاب کنید تا در آینده به مشکل بر نخورید. در قسمت Guest OS family و Guest OS version، نوع و نسخه سیستم عامل مورد نظر خود را انتخاب کنید. توجه داشته باشید که انتخاب صحیح سیستم عامل بسیار مهم است چرا که در مراحل بعدی بر اساس انتخاب شما تنظیماتی روی ماشین مجازی انجام خواهد شد.
در مرحله بعد Data Store مورد نظر برای ساخت ماشین مجازی را انتخاب کنید.
در آخرین مرحله و در قسمت Customize settings، سخت افزار مناسب ماشین مجازی را انتخاب کنید و در صورت نیاز تغییرات لازم را اعمال کنید.
در نهایت پس از ساخت ماشین، می توانید سیستم عامل یا همان Guest OS را روی ماشین مجازی نصب کنید. برای این منظور می توانید از کنسول مدیریت ماشین مجازی VMware VMRC استفاده کنید و فایل iso نصب سیستم عامل را روی ماشین مجازی mount کنید.
ساخت ماشین ها با استفاده از این روش یک مشکل بزرگ دارد، و آن این است که در محیط هایی با تعداد ماشین مجازی زیاد، استفاده از این روش بسیار زمان بر خواهد برد. توجه داشته باشید که بعد از نصب سیستم عامل تازه باید یک سری تنظیمات عمومی را روی ماشین مجازی انجام دهید؛ مثلاً یک سری تنظیمات Guest OS Hardening را اعمال کنید و این کار را روی تک تک ماشین های مجازی پس از نصب سیستم عامل انجام دهید.
2. Clone
همانطور که گفتیم، ایجاد ماشینهای مجازی در مرکز داده از نقطه صفر کار عاقلانه ای نیست! راه حلهای ساده تری نیز وجود دارد. از جمله اینکه یک ماشین مجازی را کامل Config کنیم، برنامههای مورد نظر را نصب کنیم، سیستم عامل را به روز رسانی کنیم، تمام تنظیمات مورد نظر را اعمال، و سپس از روی آن سایر ماشینهای مجازی را با استفاده از گزینه Clone ایجاد کنیم. توجه داشته باشید که استفاده از قابلیت Clone نیازمند داشتن vCenter Server است؛ بدون حضور vCenter و با اتصال مستقیم به ESXi نمی تواند از Clone استفاده کرد.
Clone در واقع یک Exact Copy از ماشین اولیه است. شما می توانید از ماشین خاموش و یا حتی ماشین روشن یک Clone تهیه کنید. برای این منظور پس از اتصال به vCenter روی ماشین مورد نظر کلیک راست کرده و گزینه Clone to Virtual Machine را انتخاب کنید.
یک مشکل بالقوه Clone این است که چون ماشین جدید یک Exact Copy از ماشین اصلی می باشد، 100% دچار Conflict در IP، Computer Name، SID و … خواهیم شد. در یک محیط عملیاتی در صورتی که همزمان هر دو ماشین روشن باشند، برای شما ایجاد مشکل خواهد کرد. شرکت VMware برای حل این مشکل از قابلیت VM Customization Specification استفاده می کند؛ این ویژگی به شما اجازه خواهد داد بعد از مراحل Clone گرفتن ماشین مجازی، تغییراتی اعمال کنید تا ماشین جدید با ماشین اصلی دچار Conflict نشود.
فرض کنید یک سرور عملیاتی با کلی برنامه و سرویس و تغییرات اعمال شده دارید؛ و تیم توسعه از شما درخواست یک ماشین تست دقیقاً شبیه همین سرور عملیاتی را دارد؛ در چنین شرایطی منطقی ترین کار استفاده از Clone برای ساخت این ماشین درخواستی خواهد بود.
اما فرض کنید هدف شما این است که یک ماشین مجازی به عنوان Master Image داشته باشید به نحوی که تمام برنامه ها را نصب کرده اید، به روز رسانی ها را انجام داده اید، تنظیمات را اعمال کرده اید و حال می خواهید تمام سرویس های مرکز داده را از روی این ماشین مجازی ایجاد کنید. Clone برای این هدف قابل استفاده است، اما یک مشکل بزرگ وجود دارد! ممکن است پس از مدتی به صورت خواسته یا ناخواسته ماشین مجازی Master Image روشن شود و تغییراتی روی آن رخ دهد. در چنین شرایطی استفاده از Clone منطقی نیست.
آنچه تا کنون در مورد Clone گفته شد، به صورت دقیقتر Full Clone می باشد، انواع دیگری از Clone نیز وجود دارد که بیشتر در مبحث VDI و Horizon View مطرح هستند و عبارتند از Linked Clone و Instant Clone.
بیشتر بخوانید : انواع Clone
3.Template
Template یک Master Image خواهد بود که مزیت اصلی آن نسبت به روش Clone این است که در برابر تغییرات محفوظ میباشد؛ چرا که اساساً یک Template غیر قابل روشن شدن است. همانند Clone، Template نیازمند وجود vCenter است.
برای استفاده از این روش یک ماشین مجازی به همراه سیستم عامل و تمام برنامه ها و به روز رسانی ها و تنظیمات آماده کنید؛ یک Master Image کامل و تر و تمیز؛ سپس به کمک یکی از روش های زیر، این ماشین مجازی را تبدیل به Template کنید:
Convert to Template
Clone to Template
در روش اول ماشین مجازی باید خاموش باشد و به کلی ماشین مجازی تبدیل به یک Template خواهد شد. کلیه Template فقط و فقط از طریق VM and Templates Inventory قابل مشاهده و دسترسی خواهند بود.
در روش دوم، ماشین مجازی می تواند روشن یا خاموش باشد و ماشین اصلی به صورت یک VM باقی خواهد ماند؛ یک Clone از روی آن گرفته خواهد شد و ماشین Clone گرفته شده تبدیل به Template خواهد شد.
همانطور که در تصویر زیر مشاهده می کنید، icon یک VM با یک Template تفاوت دارد.
برای ساخت ماشین مجازی از روی Template هم کافی است روی Template مورد نظر کلیک راست کرده و گزینه New VM from this Template را انتخاب کنید.
هر زمان که نیاز به تغییر در Master Image وجود داشت؛ مثلا جهت به روز رسانی سیستم عامل، کافی است روی Template کلیک راست کرده و گزینه Convert to Virtual Machine را انتخاب کرده و پس از اعمال تغییرات، مجدداً ماشین مجازی را به Template تبدیل کنید.
Template هم مانند Clone مشکل بالقوه Conflict را دارد که برای حل آن باید از مکانیزم VM Customization Specification استفاده کرد.
Template با وجود تمام مزایایی که دارد، فقط در داخل یک Datacenter عملکرد مناسبی دارد. اگر شما بخواهید ماشین مجازی را به مرکز داده دیگری منتقل کنید، روش Template روش مناسبی نخواهد بود.
4.OVF Template
مشکل Clone و Template این است که Portable نیستند و به سادگی نمی توان با استفاده از این روش ماشین های مجازی را بین مراکز داده مختلف جابجا کرد. برای حل این مشکل از قابلیت Export OVF Template استفاده می کنیم. OVFیا Open Virtualization Format توسط شرکت VMware توسعه داده شده است. بر خلاف Clone و Template، VOF نیاز به vCenter ندارد.
برای اینکه یک ماشین مجازی را تبدیل به OVF کنید، ماشین مجازی را خاموش کرده، روی آن کلیک راست کنید، از بخش Template، گزینه Export OVF Template را انتخاب کنید.
برای ایجاد یک ماشین مجازی از طریق هم کافی است روی Cluster و یا ESXi Host کلیک راست کرده و گزینه Deploy OVF Template را انتخاب کنید.
امروزه بسیاری از شرکت ها برای ارائه محصولات و خدمات خود در محیط مجازی از استاندارد OVF استفاده می کنند. شما می توانید در VMware Marketplace لیستی از این سرویس های ارائه شده به صورت OVF را مشاهده کنید.
OVF مشکل Portable بودن را حل کرده بود، اما یک مشکل بزرگش این است که مکانیزمی جهت مدیریت نسخههای مختلف ماشین مجازی ندارد.
5.Content Library
مشکل OVF Template این است که اگر نسخه آن تغییر کند، این امکان وجود دارد که سایر مراکز داده همچنان در حال استفاده از نسخههای قدیمی باشند! Content Library این مشکل را حل کرده و شما میتوانید در تمام مراکز داده خود نسخهها را بروز نگه دارید. Content Library محدود به OVF Template نمی شود، شما می توانید با استفاده از این روش vApp Templates و حتی فایل های ISO را نیز به صورت مرکزی ذخیره کرده و Sync نگه دارید. Content Library از قابلیت های جدید نسخه vSphere 6 بود.
Content Library همانند Clone و Template نیازمند vCenter Server است. در این روش یک مرکز داده در حالت Publisher قرار خواهد گرفت که Repository اصلی خواهد بود و سایرین به عنوان Subscriber و با استفاده از آدرس Publisher، به مخزن اصلی وصل خواهند شد و لیستی از فایل و Templateها را دریافت خواهند کرد؛ در صورت نیاز به استفاده و یا تغییر در نسخه اصلی کتابخانه، Subscriber می تواند نسخه جدید را دانلود کند.
برای ساخت ماشین مجازی با استفاده از این روش کافی است پس از اطمینان از اینکه کتابخانه شما به روز می باشد، در قسمت Template اقدام به ساخت ماشین مجازی کنید.
در این مقاله با روش های مختلف ساخت ماشین مجازی آشنا شدیم. هر کدام از روش های فوق مزایا و معایب خاص خود را دارند؛ مهم این است که شناخت کافی از هر کدام از این روش ها داشته باشیم تا بتوانیم روش درست را بر حسب شرایط پیش آمده انتخاب کنیم.