VMware VCenter Server نوعی سرویس پیشرفته و توسعه یافته برای مدیریت بهتر زیرساخت مجازی در مراکز داده است که توسط شرکت VMwareطراحی و ساخته شده است. از این اپلیکیشن برای نظارت بر محیطهای مجازی استفاده میشود. سرور vCenter ، امکان بهره برداری و مدیریت متمرکز منابع، و تحلیل و ارزیابی عملکرد ماشینهای مجازی را در مراکز داده توزیع شده فراهم میآورد. VMware vCenter به صورت پیشفرض برای vSephere، که یک پلتفرم مخصوص VMware برای ایجاد زیرساختهای ابری مجازی بوده، طراحی شده است. VMware VCenter سابقا VMware VirtualCenter نامیده میشد. برای vCenter قابلیتها و ویژگیهای مختلفی در نظر گرفته شده که یکی از این ویژگیهای کلیدی، VCHA میباشد.
vCenter Server در سرور اولیهی مرکز دادهی مجازیسازی شده نصب میشود، و نقش مدیریت ماشین مجازیساز در محیط مجازیسازی شده را به عهده دارد. این اپلیکیشن همچنین قادر است یک کنسول مدیریت متمرکز برای مدیریت تمامی ماشینهای مجازی سیستم ایجاد کند.
مرکز مجازی داده، توانایی این را دارد تا اطلاعات آماری در رابطه با میزان استفاده ماشینهای مجازی از منابع، تامین توان محاسباتی، حافظه و ذخیرهسازی را تهیه کرده، و همچنین از طریق یک اپلیکیشن متمرکز منابع لازم برای انجام فرایندهای مدیریتی را فراهم کند. عملکرد هر ماشین مجازی، طبق معیارهایی که توسط vCenter در نظر گرفته شده، مورد بررسی قرار میگیرد، و منابع مورد نیاز ماشینها برای فعالیت ثابت و کارامد در شبکهی مجازی-ساخته را بهینه سازی و تامین میکند. در کنار مدیریت معمول که در تمامی شبکهها دیده میشود، مرکز مجازی-ساخته با تعریف و نظارت بر کنترل دسترسی (Access Control) ، تبادل و نقل و انتقالات ماشینهای مجازی را در میان Web Serviceهای مختلف ، و اعمال یکپارچگی بر محیطهای مجازی -ساخته را بررسی و مدیریت میکند.
VCHA چیست؟
برای استفاده از vCenter ها، پلتفرمهایی وجود دارد، و یکی از این پلتفرمها، vSephere است، که وظیفهی آن، ایجاد بنیان لازم برای زیرساختهای مجازی سازی میباشد. vSephere مناسب استفاده در Private Cloud و Public Cloud است، و در بسیاری از enterprise ها کاربرد دارد. vCenter Server ها، مانند تمامی محیطهای فناوری اطلاعات، در معرض خرابیهای سختافزاری و نرمافزاری قرار دارند، و لازم است که در مقابل حملههای مختلف و این خرابیها از خود محافظت کنند. در صورت وقوع خرابی نیز، VCenter ها باید بتوانند خود را به صورت Transparent بازیابی کنند. در نسخهی VSephere 6.5 ، راهکاری برای رفع خرابیها در نظر گرفته شده که دسترسپذیری بالا دارد (High Availability) و VCHA نامیده میشود. در نسخههای بعدی vSephere نیز این ویژگی با امکانات بیشتر و بهتر در دسترس است.
معماری VCHA به چه شکل است؟
VCHA در معماری خود از کلاسترهایی با سه Node استفاده کرده است:
- Active Node
- Passive Node
- Witness Node
این Node ها قابلیت HA (High Availability)در برابر انواع مختلف خرابیهای سختافزاری و نرمافزاری فراهم میکنند. برای پاسخ به درخواستهای Client ، از Active Node استفاده میشود. درخواستها توسط این Node در Passive Node کپی میشوند.
در صورت خرابی Active Node ، از یک Passive Node استفاده میشود. تا زمانی که Active Node به حالت عادی بازگردد، Passive Node به جای آن عمل میکند.
همچنین یک Witness Node وجود دارد که در صورت از دسترس خارج شدن Active Node ، Witness Node ساختار شبکه را به Passive Node انتقال میدهد. در حقیقت عامل فعالسازی Passive Node و جایگزینی آن با Active Node تا زمان برطرف شدن مشکل، وجود Witness Node است.
فرایندی که این Node ها از آن پشتیبانی میکنند، مبتنی بر failover است، و وظیفهی آنها حل مشکل Split Brain است. Split Brain وقتی اتفاق میافتد که دادهها و قابلیت دسترسپذیری با یکدیگر هماهنگ نیستند، و معمولا در شبکههایی که نگهدارندهی اطلاعات replicate شده هستند اتفاق میافتد.
المان چهارمی در کنار سه Node یاد شده وجود دارد، و آن VCHA Network نامیده میشود. این شبکه در حقیقت بستر ارتباطی بین Node های ذکر شده است، و مسئولیت جا به جایی دادهها و ارتباط بین Node ها را به عهده دارد.
طراحی جدید با عنوان Tie Breaking یا Quorum از روشهای قدیمی مثل Shared Storage استفاده نمیکند، بلکه به جای آن از یک Node در VCHA به عنوان Witness Node استفاده میشود. در صورتی که در یک کلاستر تنها دو Node به کار رود، آن کلاستر به عنوان Degraded به شمار میآید و اگر خرابیای در سیستم به وجود بیاید، معنیاش این است که در سیستم vCenter دسترسپذیری وجود ندارد.
برای اینکه VCHA درست کار کند، به یک وضعیت پایدار نیاز دارد. این حالت، Stateful نامیده شده، و شامل موارد زیر میشود:
- ذخیره سازی اطلاعات پایگاه داده با عنوان PostgreSQL
- وجود فایلهای Flat
از مکانیزم Replication که در PostgreSQL موجود است، برای همسانسازی دادهها استفاده میشود، و این تنها در صورتی است که فرایند همسانسازی درون پایگاه داده PostgreSQL انجام شود. برای فایلهای Flat نیز قابلیت همسانسازی از طریق روشی مخصوص به لینوکس با نام RSync استفاده میشود. لازم به ذکر است که Replication جزو مهمترین اقدامات لازم جهت هماهنگسازیvCenter Server Appliance است.
در راه اندازی ویژگی VCHA، ما نیازمند شرایط زیر هستیم:
- نسخهی پلتفرم راهاندازی، 5 به بالا باشد (پلتفرم، vSephere است)
- حداقل به سه نوع سرور فیزیکی برای زیرساخت مجازی نیاز داریم؛
- برای شبکه VCHA ، یک شبکهی جداگانهی مدیریتی لازم است، که نرخ تاخیر در انتقال داده در بین Nodeها باید کمتر از 10 میلیثانیه باشد؛
- هر کدام از Node ها به یک آدرس IP جداگانه احتیاج دارند؛
- vCenter باید حتیالامکان در سایزهای کوچک پیادهسازی شود، و نباید از سایز Tiny استفاده شود.
نکتهی جالب اینجاست که Node های VCHA به لایسنسهای جداگانه احتیاج ندارند و یک لایسنس کفایت میکند.
انواع خرابی Node ها
Active Node: در صورتی که این Node دچار مشکل شود، Passive Node با ارتباط با Witness Node وضعیت خود را ارتقا داده و به صورت Active به درخواست های Client پاسخ میدهد. در صورت وقوع Failure در این Node ، میتوان دو اقدام کرد،
فرایند Troubleshoot را روی Node که دچار مشکل شده اجرا کرده و دوباره Node را به صورت آنلاین درمیآوریم، و Replication طبق روال قبل ادامه پیدا میکند. در صورت Active نشدن، میتوان ماشین مجازی قبلی را حذف کرده، و Node جدید را Redeploy کنیم.
Passive Node: تا زمانی که ارتباط بین Active Node و Witness Node برقرار است، سیستم میتواند به فعالیتهای خود و پاسخگویی به درخواستهای Client بپردازد.
Witness Node: تا زمانی که ارتباط بینActive Node و Passive Node برقرار است، فعالیت Active Node ادامه خواهد داشت، و Passive Node به پشتیبانی از Active Node برای جلوگیری از رخ دادن Failover ادامه میدهد.
خرابی هر سه Node : این شرایط در صورتی رخ میدهد که هیچ یک از سه Node یاد شده نتوانند با یکدیگر ارتباط برقرار کنند. در این حالت، کلاستر از مدار خارج شده و غیرقابل استفاده میشود، و این مساله vCHA را نیز تحت تاثیر قرار میدهد. چرا که طراحی آن به گونهای است که تنها میتواند مشکلات به وجود آمده برای یک Node را مدیریت کند. بهتر است بدانید خروج هر یک از سه Node از کلاستر، سبب توقف فعالیت تمامی اجزای آن میشود.
استفاده از ویژگی VCHA سبب متمرکز شدن و یکپارچگی مدیریت مراکز داده میشود، و به سهولت استفاده از ماشینهای مجازی کمک میکند.