پیش از آنکه بخواهیم به آموزش تصویری نصب KVM بر روی CentOS 7 بپردازیم. بهتر است مقدمه ای بر این داشته باشیم که KVM چیست و اشاره ای در خصوص مجازی ساز ها ارائه دهیم تا در ادامه مقاله مسیری شفاف و ساده را پیش رو بگذاریم.
KVM چیست؟
KVM مخفف عبارت Kernel-Based Virtual Machine و به معنای سرور مجازی با کرنل اختصاصی می باشد. این نرم افزار بصورت متن باز یا Native در دسترس بوده و براحتی میتوان تمام تغییرات مورد نیاز را در آن انجام داد. این نرم افزار در Linux ساخته شده است.
مزیت برجسته این نرم افزار این است که با وجود ساخت آن در لینوکس امکان استفاده بر روی سرورهای ویندوزی را نیز دارد.
مجازی ساز چیست؟
به کمک مجازی ساز میشود یک سیستم کامپیوتر با منابع Ram و Cpu را به چند قسمت، تقسیم کرد. در واقع به این عملیات در کامپیوتر، ایجاد ماشین مجازی ، و در سروربه عنوان سرور مجازی یاد میشود.
تمام این ماشینها بواسطه مجازی ساز ساخته میشوند. به شکلی که دسترسی هر ماشین تنها به منابع تخصیص یافته خودش خواهد بود و با هر سیستم عاملی و به دیگر ماشینها دسترسی ندارد.
نقش kvm در مجازی سازی
با این دو تعریف حتما به این سوال خواهید رسید که KVM چه نقشی در مجازی سازی دارد؟
برای استفاده از نرمافزار VMware یا VirtualBox و ساخت ماشین مجازی (VM) میتوان از KVM جهت اجرای سیستمعاملهای مختلف بر روی ماشین مجازی استفاده نمود و برای ارتباط با KVM Server و مدیریت آن نیز ابزارهای مختلفی وجود دارد که برخی از آنها نیز، رایگان می باشند.
Kernel-Based Virtual Machine یا KVM برای زیرساخت مجازی سازی مورد استفاده قرار میگیرد و این هسته را به یک Hypervisor تبدیل میکند. همانطور که در بالا اشاره شد، KVM در Linux ساخته شده و این امکان را میدهد تا لینوکس را به یک hypervisor تبدیل کرد و در عین حال به یک host machine امکان میدهد چندین ماشین مجازی مجزا به نام guest یا virtual machines را اجرا نماید.
برای استفاده ازKVM باید CPU ای وجود داشته باشد که از قابلیت پشتیبانی سختافزار مجازی ساز بهرهمند باشد و در BIOS سیستم نیز، فعال شود. سرور های ارائه شده توسط مجازی ساز KVM از کیفیت بهتر و بیشتری نسبت به نرم افزارهای مجازی سازی مانند VMware و OpenVZ برخوردار هستند.
حالا که آشنایی مختصری با KVM پیدا کرده اید، می توانیم به سراغ نصب KVM بر روی CentOS 7 برویم.
نصب KVM بر روی CentOS
پیش از اقدام به نصب KVM بر روی CentOS 7 باید به نکات زیر توجه ویزه ای داشته باشید:
- بر روی توزیع های CentOS 5/6/7 براحتی نصب میشود. که در اینجا ما نسخه ۷ را به شما آموزش خواهیم داد.
- از ماژول ۳۲ بیتی سیستم عامل پشتیبانی نمیکند و میبایست یک سیستم عامل ۶۴ بیتی را دراختیار داشته باشید.
- نیاز به فعال سازی VT از BIOS دارید.
برای شروع آماده هستید؟
با استفاده از یک Terminal مثل (PUTTY) به SSH سرور با دسترسی root وارد شوید. اگر با این مبحث آشنایی ندارید می توانید به مقاله نحوه اتصال به سرور توسط PUTTY مراجعه نمایید.
جهت بررسی ساپورت Virtualization >
lscpu | grep Virtualization
اگر خروجی همانند تصویر زیر عبارت Virtualization: VT-x باشد یعنی امکان نصب KVM در Centos وجود دارد.
در غیر اینصورت باید قابلیت (Virtualization Technology (VT در BIOS فعال شود.
پس از اطمینان از قابلیت virtualization ، برای نصب دستورات زیر را وارد نمایید:
- yum update -y
- wget -N http://files.virtualizor.com/install.sh
- chmod 0755 install.sh
- ./install.sh email=your@email.com kernel=kvm بجای عبارت your@email.com، آدرس ایمیل مدیریت را وارد نمایید.
بعد از وارد کردن دستورات بالا نصب KVM بر روی CentOS 7 آغاز می شود که حدود ۱۰ تا ۳۰ دقیقه زمانبر خواهد بود و در خاتمه با مشاهده پیغامی همانند تصویر زیر با محتوای Installation Completed فرآیند تکمیل می شود.
توجه داشته باشید، پس از شماهده تصویر بالا و اتمام نصب KVM بر روی CentOS 7 از شما سوالی در خصوص اینکه تمایل به Restart سرور دارید یا خیر، پرسیده می شود که با تایپ نمودن حرف Y و فسردن دکمه Enter، اقدام به راه اندازی مجدد سرور نمایید.
بعد از اینکه نصب پکیج ها موفقیت آمیز انجام شد باید سرویس libvirtd را فعال نمود.
Libvirt چیست؟
Libvirt یک مجموعه از API می باشد که در واقع واسط بین کاربر و Hypervisor می باشد و کاربر از طریق آن میتواند Hypervisor را مدیریت کند.
دستور لازم برای راه اندازی سرویس Libvirt نوشتن عبارت systemctl start libvirtd می باشد.
و برای فعالسازی لازم است تا عبارت systemctl enable libvirtd را تایپ نمایید.
پس از نصب برای ورود به پنل مدیریت Softeculous Virtualizor از طریق یکی از آدرس های زیر با همان اطلاعاتِ لاگین به root استفاده کنید.
https: // Your-Server-IP: 4085
http: // Your-Server-IP: 4084
علاوه بر آن می توان به صورت رایگان با دستور زیر، پنل مدیریتی را نصب نمود.
yum install virt-manager
روش های ساخت ماشین مجازی
به دو روش امکان ساخت ماشین مجازی وجود دارد:
- از طریق مدیریت نرم افزار
- از طریق کامند و دستور به این صورت که فایل سیستم عامل را مشخص کرده و مقادیر مربوط به تعداد و اندازه و حجم Ram و Cpu و دیسک را وارد میکنیم.
توجه داشته باشید در موارد بالا باید SElinux غیرفعال باشد.
همچنین لازم به ذکر است که پورت های Virtualizor ، از ۴۰۸۱ تا ۴۰۸۵ می باشد. در صورت بسته بودن یا محدود بودن هر کدام می بایست آنها را با دستورات زیر در فایروال باز نمایید.
برای نسخه های CentOS قبل از ۷:
Iptables-I INPUT 1 -p tcp -m tcp –dport 4081: 4085 -j ACCEPT
Iptables -I INPUT 2 -p tcp -m tcp –dport 5900: 6000 -j ACCEPT
برای CentOS 7 به بالا
firewall-cmd –zone=public –permanent –add-port=4081-4085/tcp
firewall-cmd –zone=public –permanent –add-port=5900-6000/tcp
یا اینکه اگر iptables firewall فعال است با کد زیر آن را غیر فعال کنید.
service iptables stop