فصل ۱: آشنایی اولیه با VCP
سلام دوستان، به دوره VCP خوش آمدین. من ایمان فرهی هستم از مجموعه فرکیانتک و قراره در این کتاب با هم VCP رو به صورت کامل بررسی کنیم. در این بخش hypervisor رو بررسی میکنیم. در ادامه متوجه میشیم که چطور virtual environment میسازیم و درنتیجه باهاش میتونیم سیستمعاملهای مختلفی رو راهاندازی کنیم.
من در کل خیلی دوست دارم سفری به آینده داشته باشم و آینده رو بررسی کنم. فرض کنین قراره با هم فیلم ببینیم. البته من فکر نمیکنم در آینده مثل امروز روی صندلی بشینیم و با هم فیلم ببینیم. به نظر من با ابزارها و دستگاههای مختلف جوری فیلم میبینیم که تمامی احساسات ما شامل بویایی، شنوایی، بینایی، لامسه، وغیره درگیر میشه، به شکلی که انگار داریم در فیلم شرکت میکنیم؛ این شرایط رو میتونیم مشابه ماشینهای مجازی در نظر بگیریم.
یه PC شامل چه چیزهایی میشه؟ شامل motherboard، ram، OS، storage، Bios و … میشه. میتونه boot بشه یا config کنه و… این PC شامل مجموعهای از devices مثل USB Port، memory ، drivers، monitor، keyboard، mouse و … میشه.
حالا اگر بخوایم این PC رو با ماشینهای مجازی مقایسه کنیم. همونطور که PC میتونه ویندوزی یا لینوکسی و… باشه؛ VM هم میتونه به همین صورت باشه و شامل همۀ اون devices باشه. تفاوتشون اینه که در ماشین مجازی این دستگاهها virtualized(مجازی) شدن و physical نیستن. virtualized شدن یعنی چی؟ یعنی ما به ماشین مجازی دروغ میگیم که این devices رو داره و اون VM باید باورش کنه. حالا چی یا کی میتونه این دروغ رو بگه؟ hypervisor.
hypervisor در سیستم از دسته نرمافزار شناخته میشه که با استفاده ازش ماشین، وجود سیستمعامل MacOS،Linux ، Windows، وجود منابع و… رو باور کنه. در نتیجه هدف اول hypervisor ایجاد environment(محیط) هست. با hypervisor سیستمعامل وجود منابع رو باور میکنه و bootup میشه.
hypervisor دو نوعه که شامل Type1 و Type2 میشه.
Type1 یاBareMetal :
در این نوع hardware رو داریم و روی اون به صورت مستقیم hypervisor هست. روی این hypervisor ماشین مجازی داریم. این ماشینهای مجازی براساس یه سیستمعامل مثل windows, Linuxو… هستن. اگر بخوام از type1 مثال بزنیم، میتونیم به ESXi اشاره کنیم
در نتیجه در نوع اول یۀ physical hardware که به صورت مستقیم روش hypervisor داریم و در لایه بعدی ماشینهای مجازی رو داریم.
Type2: این نوع به صورت مستقیم روی hardware نیست؛ در لایه اول یه سیستمعامل داریم که میتونه windows، Linux یا MacOS باشه. در لایه بعدی برنامههای مختلفی داریم که یکیش میتونه hypervisor باشه. روی اون hypervisor، ماشین مجازی رو داریم. این ماشینهای مجازی میتونن براساس windows, Linux MacOS، iOS و… باشن. باتوجه به اینکه اینجا hypervisor یه برنامه است روی این سیستم، سیستمعامل و برنامههای دیگری شامل browser, office و… داریم. اگر بخوایم از این مورد مثال بزنیم؛ میشه به موارد زیر اشاره کرد.
- VMware workstation
- Virtual box
- Gns3
نسخهای از VMware که روی سیستمعامل MacOS نصب میشه؛ VMware fusion نامیده میشه. در نتیجه در Type1 تمامی منابع در اختیار hypervisor بود ولی در Type2 اینجوری نیست.
در این بخش قراره در مورد مواد اولیه مورد نیاز برای پختن vSphere environment حرف بزنیم. بیاین اول بریم به ۲۰ سال قبل. اون موقعها برای هرکاری باید یه سرور میخریدم. این سرور به شکل زیر بود. این سرور منابعی شامل CPU، ram، network،storage داشت و سیستمعاملش هم معمولا روش نصب بود.
در هر سرور فیزیکی یه سیستمعامل نصب میشد. فرض کنین برای شروع یه سرور میخریدیم و با پیشرفته شدن کارها مجبور میشدیم تعداد سرورها رو افزایش بدیم. فرض کنین برای اجرای web server مجبور بودیم یه سرور physical بخریم. با توجه به اینکه هیچ وقت از تمامی منابع استفاده نمیشد؛ منابع به هدر میرفت. یکی از بدیهای این روش این بود که نصب و راهاندازی برنامهها در سرور خیلی طول میکشید. نگهداری سرورها سخت بود. به عنوان مثال برای ۶ سرویسی که باید پیادهسازی میکردیم، باید ۶ سرور رو میآوردیم بالا. راهحل این مشکل virtualization(مجازی سازی) بود.در این روش به جای اینکه روی سرور یه سیستمعامل داشته باشیم، یه hypervisor داریم که میتونیم چندین ماشین مجازی رو روش بیاریم بالا. تصویری که اینجا میبینین، BareMetal hypervisor رونشون میده. حالا اسم این hypervisor که VMware ارائه داده، چی هست؟ درسته ESXi.
نکته: در این دوره میخوایم از ESXi host استفاده کنیم. منظورمون از host اینجا میزبانی چندین سیستمعامل روی یک ماشین هست؛ چون hypervisor رو روی یه سیستمعامل مثلا ویندوز یا لینوکس نیاوردیم بالا.
حالا من میخوام از شما یه سوال بپرسم بگین درسته یا غلط؟!
سیستمعامل windows server به disk space نیاز داره! شما بگین درسته یا غلط؟
صد در صد درسته!!!
حالا چی این storage رو برای ماشین ما فراهم میکنه؟ ESXi host این کار رو انجام میده. پس یه جاهای لازمه ESXi به storage دسترسی داشته باشه. برای بخشی از اون مثلاً برای [۱]vCSA به management solution نیاز داریم. vCSA چی کار میکنه؟ به جای اینکه من و شما پشت سیستم بشینیم و دونه دونه ESXiها رو مدیریت کنیم به و بهم وصلشون کنیم، کافیه vCSA رو نصب کنیم تا خودش بهم متصلشون کنه یا وقتی میخوایم دستوری رو اجرا کنیم به جای اینکه دونه دونه توی هر ESXi دستور بزنیم، یکبار توی vCSA دستور رو اجرا میکنیم و در تمامی ESXi hosts ما اپلای میشه.
- مسئله بعدی Authentication(احراز هویت) هست، راهحل این بخش هم active directory هست.
- مورد بعدی network هست، به عنوان مثال چطوری باید یه ESXi host به شبکه وصل بشه؟ یا ESXi-1 چطوری باید با ESXi2 ارتباط برقرار کنن؟
جواب network connectivity هست. حالا network connectivity مجازی سازی شه یا در دنیای واقعی باشه.
از امروز به بعد اگر کسی بهت بگه من از vSphere استفاده میکنم، میتونی بگی من هم در صورت نیاز میتونم ازش استفاده کنم.
[۱] مخفف vCenter server appliance هست.