مربع پیاده سازی SDDC - بخش دوم
در مطلب قبل درباره تعریف VMware از مرکزداده مبتنی بر نرمافزار یا SDDC و ساختار آن صحبت شد و در ادامه میخواهم هر یک از گوشههای مربع SDDC را برای شما تشریح کنم. از میان گوشه پردازش، حافظه، شبکه، و ذخیرهسازی به سبب نقش اصلی آن در ایجاد SDDC ابتدا به سراغ گوشه پردازش میروم. نیرویمحرک SDDC در این قسمت قرار دارد و بسیاری از عملیاتهای قابل انجام در مرکزداده در اینجا فعال میشوند.
پردازش
یکی از کارکردهای اصلی SDDC فراهم آوردن امکانی است تا بارهایکاری در قالب ماشینهای مجازی بتوانند در هر مرکزدادهای بدون توجه به سختافزار مستقر اجرا و انتقال داده شوند. همین مسئله سبب شده است تا طیف وسیعی از سرویسهای مجازیسازی در بخش پردازش بکارگرفته شود تا این مهم عملی شود. پردازش SDDC با راهکار VMware ESXi تضمین میشود. این سیستمعامل مرکزداده این توانایی را دارد تا تمامی منابع پردازشی موجود بر سختافزار سرور را به صورت انتزاعی در آورده و با کنترل آن دسترسی ماشینهایمجازی را به این منبع فراهم آورد. اما این کار چطور و چگونه انجام میشود؟ چه امکاناتی بایستی فراهم شود تا فعالیت بدون وقفه ماشین در هر مرکزداده 99.9% تضمین شود؟ جواب این سوالها در قابلیتهای تعبیه شده در VMware ESXi است برای همین بهتر است با بررسی امکانات پردازشی آن تحقق مرکزداده مبتنی بر نرمافزار را شاهد باشیم.
انتزاعیسازی پردازش
از اولین قدمها در مدیریت منابع پردازشی انتزاعیسازی آن است. هسته ESXi یا VMkernel در لایه مدیریت ماشینهای مجازی تمامی منابع پردازشی را در قالب دنیاهای مجازی انتزاعیسازی میکند و هر ماشین در دنیای خاصی عمل میکند. این کار از طریق CPU Scheduler محقق میشود و دسترسی ماشین ها به پردازنده فیزیکی یا pCPU و یا پردازنده مجازی vCPU با توجه به تنظیمات انجام شده در بخش پردازنده هر ماشین و یا تنظیمات پیشرفته CPU Affinity و NUMA در دنیای هر ماشین تعریف میشود.
از همین رو این سیستمعامل میتواند بر تعداد پردازنده و میزان vCPU هر یک کنترل داشته باشد و اولویتگذاری مناسبی باتوجه به درخواست بارکاری برای اجرای دستورات پردازشی قائل شود. این انتزاعی سازی پردازش با بکارگیری پردازندههایی که از مجازیسازی پشتیبانی میکنند فراهم شده است و برای جابجایی هربارکاری به سروری دیگر مدل پردازنده بایستی از حداقلهای تعریف شده پشتیبانی کند.
حل مسئله ناسازگاری پردازنده
همانطور که گفته شد یکی از دلایل عدم ناسازگاری انتقال بارهای پردازشی در معماری SDDC مدل پردازنده و قابلیتهای آن است. از آنجایی که در SDDC همه چیز بایستی در سطح نرمافزار کنترل و مدیریت شود و سختافزار اساسا مهم نیست، به همین خاطر برای ناسازگاریها بایستی راهحلهای جامع نرمافزاری تهیه کرد. یکی از این راه حلها در پاسخ به ناسازگاری در سطح سختافزار پردازنده VMware EVC Mode است. Enhanced vMotion Compatibility یا EVC این امکان را فراهم میآورد تا با یک دست کردن سطح دستورات پردازشی در هر سوکت CPU امکان انتقال دستورات بارهای کاری فعال از یک سرور با پردازنده جدید به یک سرور با پردازنده قدیمی فراهم شود. برای مثال فرض کنید، مرکزداده شما از استقرار ترکیبی استفاده میکند و در زمانهایی نیاز دارید تا از منابع ابر آمازون استفاده کنید تا ماشینها بدون وقفه بتوانند سرویس دهند و شما نیز هزینه اضافی از بابت خریداری تجهیزات جدید انجام ندهید. در این سناریو سرورهای داخل سازمان از پردازندههای Intel اما با مدلی قدیمیتر از سرورهای پردازشی ابر آمازون استفاده میکنند. برای پاسخ به این ناسازگاری بایستی از VMware EVC Mode در سطح کلاستر یا در سطح ماشین مجازی استفاده کنید تا امکان انتقال زنده آن ماشین مجازی به ابر آمازون فراهم شود. پس از انتزاعی سازی پردازش، ناسازگاری پردازنده دومین سد در برابر استقرار SDDC در بخش پردازش است که VMware ESXi راهکاری منحصربفرد برای آن ارائه داده است.
تخصیص منابع پردازشی
در یک مرکزداده با هزاران ماشین مجازی فعال جابجایی کنترل نشده ماشینها میتواند خطری بالقوه برای پایداری سرویسها باشد و برعکس عدم جابجایی ماشینها و عدم استفاده از ظرفیتهای بلااستفاده به هدر رفت منابع دامن میزند. VMware ESXi با تعبیه دو سازوکار ویژه پاسخی درخور برای این مسئله یافته است. توزیع برنامهریزی شده منابع یا VMware DRS قابلیتی است که تضمین میکند برای جابجایی ماشینهای مجازی به سرور یا سایتهای مرکزداده دیگر منابع کافی پردازش که امکان عملکرد ماشین را فراهم آورد وجود دارد. بخش Admission Control با کنترل ظرفیت پردازشی مصرف شده، خالی، و تخصیص داده شده در هر لحظه دستورات لازم برای جابجایی یا عدم جابجایی ماشینها را بررسی و صادر میکند. این دستورات از طریق متوازن سازی بارهای پردازشی ماشینهای مجازی به پایداری SDDC کمک میکند. دومین سازوکار بکارگرفته شده جهت تضمین عملکرد بهینه منابع پردازشی Resource Pool است. در این سازوکار تمامی منابع پردازشی در قالب یک منبع به ماشینهای مجازی عرضه میشود و هر یک میتوانند تا 70% از ظرفیت پردازش را برای اجرای سرویسها بکار گیرند. درصورتی که نیاز باشد تا در مواقعی میزان منبع پردازشی مشخصی برای عملکرد یک ماشین مجازی حیاتی تخصیص داده شود این امکان وجود دارد تا تنظیمات سفارشی در بخش پردازنده ماشین اعمال شود. این کار سبب میشود تا پایداری SDDC بدون توجه به منابع سخت افزاری موجود در هر مرکزداده تضمین شود.
جمع بندی
در جمع، انتزاعی سازی پردازش کلید ورود به SDDC است و نقشی اساسی در تبین این مفهوم دارد. VMware ESXi نه با استانداردسازی سختافزار مراکزداده، بلکه با تطبیق شرایط موجود با وضعیت حاضر (غیرقابل استاندارد ساختن تجهیزات) در هر مرکزداده گامی مهم جهت تحقق مفهوم SDDC برداشته است.