شروع کار با KVM (قسمت اول)

برخی از دوستان با سیاست‌های pahlevanzadeh.net از نزدیک آشنا هستند و حتی انتقادات و پیشنهاداتی هم دارند. قبلاً اشاره کرده بودم که دو سری مطالب پایه FreeBSD و امنیت به سایت اضافه خواهد شد و این امر را با انجام رساندم. اما قصد بر این است تا مطالبی بر Virtualization نیز به سایت اضافه گردد. البته در ابتدا به مباحث پایه و مفاهیم می ‌پردازیم تا بعداً سناریوهای قوی را تشریح کنیم.kvm-o
نکته: KVM یک paravirtualization می‌باشد.
نکته: اما در این مطلب فعلاً به داخل KVM کاری نداریم و به مفاهیم کلی‌تری می‌پردازیم.
نکته: KVM ، Xen و VMWare ESXi هر کدام جایگاه خود را دارند که بعداً مطالبی را خواهیم داشت.

۱. نصب KVM

اگر تا بحال apache را نصب کرده‌اید، همه چیز تمیز و سرجای خود است، و اگر اولین بار است که با KVM برخورد می‌کنید نصب آن برایتان سؤالاتی را ایجاد می‌کند:

  • به چند نرم‌افزار نیاز دارم؟

  • به چند interface نیاز دارم؟

  • در هر توزیع با مشکلاتی این چنینی همراه هستم؟

  • در هر سیستم‌عامل پشتیبانی می‌شوم؟

جواب سئوال شما در یک جمله خلاصه می‌شود: KVM آسان‌ترین Hypervisor موجود است. (البته سمت سرور)
در خیلی از مطالب همیشه گرفتن Help را اول توضیح می‌دهم که ترجیح می‌دهم تا در مورد KVM این چنین نباشد و در آخر این موضوع مطرح شود. (رجوع شود به iproute2)
کافیست بسته‌های زیر را نصب نمایید که کلی dependency را نصب می‌نماید:

شاید فکر کنید همین دو بسته بالا کافی باشد(البته با خود کمی dependency دارند.)، اما برای نصب یک ISO یا یک سیستم عامل به فرمان virt-install نیاز مندیم که در بسته virtinst موجود می‌باشد. پس :

نکته: اگر تا بحال در یک Hypervisor سیستم‌عاملی را نصب و یا با آن بوت شده‌اید، نیازی به توضیح مفاهیم ندارید. و ما هم اساس را بر همین گذاشتیم که شما یک sysadmin هستید.
نکته: قبل از اقدام به انجام هر کاری تفاوت libvirt و خود KVM را بهتر است توضیح دهیم. خود KVM بدنه اصلی Hypervisor را تشکیل می‌دهد، و libvirt یک مجموعه دستورات است که با هر Hypervisor ی کار می‌کند و برای سادگی کار ساخته شده‌اند. این مجموعه دستورات را در یک مطلب دیگر البته نه همه آن را زیرا تقریباً یک کتاب است. بلکه دستورات واجب آن را توضیح می‌دهیم.
به Tshoot زیر دقت نمایید:

نکته: فایلی که در دایرکتوری /boot/ دیدید، همان proc/config.gz/ است.

و

اگر در دومی نتیجه‌ای نگرفتید کافیست modprope کنید:

بعد از خروجی های بالا باید یک تست دیگر نیز انجام شود:

پس همه چیز درست است و به مرحله بعد می‌رویم.

۲. نصب یک سیستم‌عامل

ترجیج دادم تا با کمی برخورد به ایرادات اولیه کار را پیش ببریم تا با دستورات بیشتری آشنا شویم. این چند حسن داشت:

  • درک بیشتر فرامین

  • نوع به کار گیری فرامین

  • عدم برخورد کاربر در آینده با چنین مشکلاتی

  • سرنخ‌هایی از بعضی از مضامین مهم

به فرمان ذیل توجه فرمایید:

با این فرمان به عبارت زیر برمی‌خوریم:

که باید به فرمان virt-install یک نام را که سمبل guest ما می‌شود اضافه نمایید:

به دلیل اینکه هیچ گونه شبکه‌ای پیکربندی نشده است شما ایرادی می‌گیرید مبتنی بر اینکه network:default موجود نیست. برای رفع این مشکل می‌توانید از فرمان زیر استفاده نمایید:

حالا اگر لیست بگیرید این شبکه به لیست شما اضافه شده است.

نکته : بعداً به صورت مفصل در مورد پیکربندی یک bridge صحبت می‌شود.
2016-03-11-065627_1366x768_scrot
همانطور که در تصویر هویداست، توزیع systemrescue را به صورت virtual بوت کردیم.
نکته: مثال بالا صرفاً یک مثال غیر کاربردی بود. که دز شماره بعدی به صورت کاربردی مثالی می‌زنیم.
نکته: در شماره بعدی به مفاهیم شبکه‌سازی مجازی، نصب واقعی یک سیستم عامل،مدیرت یک domain و غیره خواهیم پرداخت.

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

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