در مقاله مزایای پیاده سازی vSphere Cluster و بررسی امکانات HA در مجازی سازی به معرفی و بررسی High Availability در ساختار VMware پرداختیم که از آن جمله میتوان به سادگی پیاده سازی و قابلیت اطمینان این تکنولوژی اشاره کرد. در این مقاله قصد داریم به بررسی پیشنیازهای پیاده سازی VMware HA، نحوه راه اندازی HA Cluster و تکنولوژی Datastore Heartbeating در بهبود عملکرد VMware HA بپردازیم.
پیشنیازهای پیاده سازی VMware HA
شاید برای بسیاری از افراد سوال باشد که چه پیشنیازهای اساسی و مهمی در هنگام پیاده سازی VMware HA باید مد نظر قرار گیرد تا HA به درستی کار کند. آیا برای فعال کردن HA تنها به VMware Cluster نیاز است؟ بر خلاف Windows Server Failover Clustering، تنها چند پیش نیاز برای راه اندازی و پیاده سازی VMware HA وجود دارد.
پیش نیازهای پیاده سازی VMware HA عبارتند از:
- حداقل دو Host ESXi
- حداقل 4 گیگابایت حافظه که روی هر Host پیکربندی شده باشد.
- vCenter Server
- vSphere Standard License
- Gateway یا هر نودی که قابل پینگ باشد.
با اندکی توجه دیده میشود که هیچ نیازی به Quorum Component یا نامگذاری پیچیدة شبکه نیست و نیز احتیاجی به سایر منابع کلاستر که در Failover Clustering مایکروسافت با آن سر و کار داریم، نیست.
VMware vSphere HA Master در برابر Subordinate Hosts
زمانی که در یک کلاستر، vSphere HA فعال میشود، یک Host بهخصوص در این کلاستر به عنوان Master Host در vSphere HA تعیین میگردد. مابقی Hostهای ESXi در این کلاستر در پیکربندی vSphere، Slave در نظر گرفته میشوند. اما این ESXi که به عنوانMaster Host شناخته شده است، چه نقشی ایفا می کند؟
vCenter Server High Availability چیست؟
ویدیوهای بیشتر درباره High Avilability
وظایف اصلی Master Host در vSphere HA
- بر وضعیت Hostهای Slave نظارت میکند – اگر یکی از Hostهای Slave دچار خرابی شود یا از دسترس خارج گردد، Master Host تعیین میکند که کدامیک از ماشینهای مجازی باید مجددا راهاندازی شوند.
- بر وضعیت Power همة ماشینهای مجازی تحت حفاظت نظارت دارد. اگر یکی از ماشینهای مجازی دچار خرابی شود، vSphere HA Node Master از راهاندازی مجدد آن اطمینان حاصل میکند و نیز تعیین میکند که این راهاندازی مجدد در کدام Host صورت گیرد.
- تمامی Hostهای کلاستر و ماشینهای مجازی تحت حفاظت vSphere HA را ردیابی میکند.
- به عنوان واسطهای بین کلاستر vSphere و vCenter Server عمل میکند و سلامت کلاستر را به vCenter اطلاع میدهد. همچنین رابطی کاربری را جهت مدیریت بر کلاستر، برای vCenter Server فراهم میکند.
- میتواند خود ماشینهای مجازی را اجرا کند و بر وضعیت آنها نظارت کند.
- ماشینهای مجازی حفاظتشده را در Datastoreهای کلاستر نگه میدارد.
Subordinate Hosts vSphere HA
- ماشینهای مجازی را به صورت Local اجرا میکنند.
- وضعیت Runtime ماشینهای مجازی در کلاستر vSphere را مانیتور میکنند.
- هر وضعیت بهروزشده را به vSphere HA Master گزارش میدهند.
جهت مشاوره رایگان و یا راه اندازی زیرساخت مجازی سازی دیتاسنتر با کارشناسان شرکت APK تماس بگیرید. |
انتخاب Master Host و خرابی Master
vSphere HA Master چگونه انتخاب میشود؟ زمانی که vSphere HA برای کلاستر فعال میگردد، همة Hostهای فعال (بدون حالت Maintenance و …) در فرایند انتخاب Master Host شرکت داده میشوند. اگر Host انتخابشده دچار خرابی شود، انتخاب جدیدی صورت میگیرد و HA Master Host جدیدی جایگزین Host قبلی میشود تا آن نقش را ایفا کند.
انواع خرابی کلاستر VMware vSphere HA
در یک کلاستر vSphere HA فعال سه نوع خرابی ممکن است رخ دهد و سبب بروز Failover شود. این انواع خرابی شامل موارد زیر هستند:
- بروز خرابی: همان چیزی که اول از همه به ذهن میرسد. Hardware یا موارد دیگر ممکن است سبب ایجاد وقفه در عملکرد Host شوند.
- ایزوله شدن: معمولا زمانی رخ میدهد که رویدادی در شبکه سبب شود یکی از Hostها در کلاستر vSphere HA از دیگر Hostها جدا شده و ایزوله گردد.
- بخشبندی: زمانی که در یکی از Hostهای Slave، اتصال شبکه به Master Host در کلاستر vSphere HA قطع گردد.
بیشتر بخوانید: بهسادگی برای همه ماشینهای مجازی خود دسترسپذیری بالا یا High Availability ایجاد نمایید
Heartbeat، تشخیص خرابی و اقدام جهت اصلاح آن
چگونه Node Master، خرابی Host را تشخیص میدهد؟ Node Master از طریق چندین مکانسیم مختلف خرابی Host را تشخیص میدهد:
- این Node در هر ثانیه Heartbeat را با Hostهای دیگر تبادل میکند.
- پس از خرابی Heartbeat ، Master Host به بررسیCheck Host Liveness میپردازد.
- Host Liveness Check مشخص میکند که آیا Hostهای Slave مشغول تبادل Heartbeat با یکی از Datastoreها هستند یا خیر. سپس Pingهای ICMP را به آدرسهای IP مدیریت میفرستد.
- اگر Master Host ارتباط مستقیم با HA Agent یکی از Hostهای دیگر نداشته باشد، آن Host به عنوان Host خراب نمایش داده میشود و ماشینهای مجازی در Host دیگری شروع به فعالیت میکنند.
- اگر تشخیص داده شود که Host مشغول تبادل Heartbeat با Datastore است، برداشت Host Master این خواهد بود که آن Host در شبکه ایزوله یا بخشبندی شده است. در این مورد، Master صرفا آن Host و ماشینهای مجازی را مانیتور میکند.
- ایزولهسازی شبکه رویدادی است که طی آن Hostها در حال اجرا هستند، اما Agent مدیریت HA امکان مشاهدة آن از شبکة مدیریت را ندارد. اگر Hostی دیگر نتواند این ترافیک را مشاهده کند، شروع به Ping کردن آدرسهای ایزوله کلاستر میکند. اگر این عملیات Ping ناموفق باشد، Host مذکور اعلام میکند که از شبکه جدا شده است و به اصطلاح ایزوله شده است.
- در این مورد، Node Master ماشینهای مجازی را که در Host ایزولهشده در حال اجرا هستند، مانیتور میکند. اگر این ماشینهای مجازی در این Host خاموش شوند، این Node Master آنها را مجددا در Host دیگری راهاندازی میکند.
Datastore Heartbeating
همان طور که در بالا اشاره شد، یکی از معیارهای سنجشی که برای تشخیص خرابی استفاده میشود، Datastore Heartbeating است. اما این یعنی چه؟ VMware vCenter مجموعهای از Datastoreها را برای Heartbeating برمیگزیند. سپس vSphere HA در Root هر Datastore یک دایرکتوری ایجاد میکند تا هم برای Datastore Heartbeating و هم به روز ماندن فهرست ماشینهای مجازی حفاظتشده مورد استفاده قرار گیرد. این دایرکتوری، vSphere-HA نام میگیرد.
نکتة مهمی را در خصوص Datastoreهای vSAN باید به خاطر داشت: این Datastore نمیتواند برای Datastore Heartbeating مورد استفاده قرار گیرد. اگر تنها یک vSAN Datastore در دسترس باشد، هیچ Heartbeat Datastoreای نمیتواند مورد استفاده قرار گیرد.
بیشتر بخوانید: VMware Virtual SAN یا SAN مجازی چیست؟
- مانیتورینگ ماشینهای مجازی و برنامههای کاربردی
یکی دیگر از قابلیتهای بسیار پرقدرت vSphere HA، توانایی مانیتورینگ هر یک از ماشینهای مجازی از طریقVMware Tools و راهاندازی مجدد هر یک از ماشینهای مجازیای است که موفق نمیشوند به Heartbeatهای VMware Tools پاسخ دهند. اگر Heartbeat برای برنامهای که در حال اجراست دریافت نشود، مانیتورینگ برنامه میتواند ماشین مجازی را مجددا راهاندازی کند.
- مانیتورینگ ماشینهای مجازی – سرویس مانیتورینگ ماشین مجازی با بهره گیری از VMware Tools به بررسی Heartbeatها و Disk I/O تولیدشده توسط VMware Tools می پردازد و مشخص کند که هریک از ماشینهای مجازی در حال اجرا هستند یا خیر. به احتمال زیاد در صورت عدم موفقیت این بررسیها، این سرویس تشخیص میدهد که سیستمعامل Guest از کار افتاده و ماشین مجازی مجددا آغاز به کار کرده است. بررسی بیشتر Disk I/O زمانی که برنامهها و ماشینهای مجازی به درستی عمل میکنند، به جلوگیری از Reset شدن بیمورد آنها کمک میکند.
مانیتورینگ برنامهی کاربردی – این عملکرد با دریافت SDK مناسب از Vendor نرمافزاری Third-Party فعال میگردد. این Vendor اجازه میدهد Heartbeatهای سفارشی برای اپلیکشینهایی تنظیم شوند که قرار است توسط پروسة vSphere HA مانیتور گردند. مانند فرایند مانیتورینگ ماشین مجازی، اگر Heartbeatهای برنامه دریافت نشوند، ماشین مجازی Reset میگردد.
هر دو این قابلیت مانیتورینگ را میتوان با Monitoring Sensitivity و همچنین Maximum per-VM Resets پیکربندی کرد تا از Reset شدن مکرر ماشینهای مجازی برای برنامهها یا خطا پیشگیری شود.
VMware vSphere HA روشی عالی برای اطمینان از این امر است که vSphere Cluster دسترسی بالای بسیار انعطافپذیری را ایجاد میکند تا در مقابل خرابیهای معمول Hostهای ESXi در vSphere Cluster حفاظت ارائه گردد.