پیاده سازی تکنولوژی VMWare DRS

آموزش

DRS چیست؟

VMware Distributed Resource Scheduler یا به اختصار DRS سیستمی است که به کاربر اجازه می‌دهد ماشینهای مجازی یا به اختصار VMها را درون محیط کلاستر VMware vSphere بطور خودکار جهت تعدیل بار جابجا کند. در این مقاله، مروری بر نکات مربوط به برنامه ریزی، پیکربندی و استفاده از vSphere DRS خواهیم داشت. یک Cluster متعادل به این معناست که Hostها داخل یک Cluster بطور مساوی (یا تقریبا مساوی) تعادل دارند. اگر Cluster نامتعادل باشد، VMها سریعا بطور خودکار از طریق vMotion به Host‌های دارای کمترین میزان بهره برداری از منابع منتقل می‌شوند. به عنوان مثال، اگر درون محیط، DRS وجود داشته باشد، نباید از یک Host به اندازه‌ 99% و از دیگری به اندازه‌ 55% استفاده شود. DRS تعادل VMها را از طریق vMotion امکان پذیر می‌کند. در این مقاله، نکات و ترفندهایی ارائه می‌شود تا بهترین بهره‌وری از VMware DRS صورت گرفته و این تکنولوژی مقرون به صرفه گردد.

VMware DRS بخشی از نسخه vSphere Standard نیست و تنها در نسخه‌های Enterprise Plus و Platinum موجود است. همیشه این سوال وجود دارد که آیا باید نسخه‌ vSphereکه دارای DRS است خریداری گردد یا خیر. البته که نسخه‌ که دارای VMware DRS می‌باشد، ترجیح داده می‌شود. برای آگاه‌سازی از اینکه چه چیزی نیاز است، از پایه شروع می‌کنیم. VMware vSphere Distributed Resources Scheduler یا به اختصار DRS به موارد زیر نیاز دارد:

  • سرور VMware vCenter
  • کلاستر VMware vSphere ESXi
  • شبکه vMotion فعال در Hostهای کلاستر
  • Enterprise Plus Licensing یا Licensing بالاتر
  • فضای ذخیره سازی اشتراکی بین Hostهای ESXi
  • برای استفاده از Proactive DRS نیاز به vRealize Operations Manager یا به اختصار vROPs می باشد.

ترفندهای VMware DRS

استفاده از سخت‌افزارهای همگن، اولین نکته‌ای که در زمان ایجاد Cluster بایستی در نظر بگیرید، بحث سخت‌افزار می‌باشد. اصل کلی VMware انتخاب Host‌هایی است که سخت افزار یکسان یا مشابه با یکدیگر داشته باشند.

این موضوع بی‌دلیل نیست. در هنگام انتخاب Host‌هایی که قرار است در کلاسترهای DRS گروه‌بندی شوند، باید سعی شود تا Host‌هایی انتخاب گردد که تا حد امکان از لحاظ ساختار CPU و حافظه همگن باشند. این کار ثبات و قابل پیش‌بینی بودن عملکرد را بهبود می‌بخشد.

سرعت DRS و بهره برداری کمتر از منابع، آخرین نسخه‌ vSphere که نسخه‌ ۶.۷ است، از بعد سرعت و بهره‌بردای از منابع کارآمدتر است، بنابراین در صورت امکان به این نسخه از vSphere مهاجرت کنید.

با اینکه سرعت vMotion نمی‌تواند بیشتر شود، چرا که به شبکه اصلی و معماری Storage وابسته است، اما VMware توانست سرعت تصمیم‌گیری را قبل از وقوع vMotion بهبود بخشد.

در واقع، در vSphere 6.7 به سرعتی ۲ تا ۳ برابر رسیده شد. یکی دیگر از موارد بهبود یافته، تسهیل اسقرار اولیه ماشین های مجازی بود که اکنون در vSphere 6.7 کل محیط را Snapshot نکرده بلکه از Monitoring مداوم استفاده می‌کند و اجازه می‌دهد قبل از هر تصمیم‌گیری ۱ تا ۲ ثانیه ذخیره شود.

این مهم بطور ویژه در محیطهای دارای تجمیع بالا ارزشمند است. جایی که به دلیل ارتقاء DRS و کاهش تاخیر در تولید VMotionها برای تعدیل بار، کاهش استفاده از منابع را شاهد هستیم و تسریع اسقرار اولیه VMها نیز مشهود خواهد بود.

استفاده از حالت تمام خودکار، میزان خودکار بودن DRS به حالتهای دستی، نیمه خودکار و تمام خودکار قابل تغییر است. اما تفاوت بین آنها چیست؟

توضیحات:

  • دستی، vCenter تنها جابجایی منابع را پیشنهاد می‌کند.
  • نیمه خودکار، پس از ایجاد یک VM و روشن کردن آن،vCenter بطور خودکار VM را در بهترین Host قرار می‌دهد تا Cluster متعادل باشد. زمانی که VM روشن است، vCenter با در نظرگیری میزان مصرف CPU و حافظه، پیشنهاد جابجایی می‌دهد. Admin، vSphere باید جابجایی را تائید کند.
  • تمام خودکار ، vCenter کنترل استقرار اولیه و جابجایی VM را بر عهده می‌گیرد. همه چیز تماما خودکار بوده و Admin هیچ پیام پیشنهادی دریافت نمی‌کند. هیچ تصمیمی از سوی Admin برای تعدیل Cluster مورد نیاز نیست.

 

بطور پیش‌فرض، زمانی که DRS در Cluster فعال می‌شود، سطح خودکار بودن انتخاب شده در Cluster قابل اطلاق به تمامی VMهای موجود در آن Cluster می‌باشد. با این حال، می‌توان برای VMهایی که نیاز است جدا باشند (یا باهم باشند)، بطور جداگانه قوانینی تنظیم کرد.

آستانه انتقال این قابلیت موجب می‌شود تا آستانه انتقال تعیین شود و در هنگام رد شدن از آن، DRS را در جابجایی VMها مشارکت می‌دهد تا به وضعیت تعادل برسند. همانطور که عملکرد هر VM متفاوت است، استفاده از CPU و حافظه‌ Host نیز تفاوت دارد.

می‌توان Slider آستانه را برای استفاده از یکی از پنج حالت حرکت داد که از Conservative تا Aggressive مقیاس بندی شده‌اند. هریک از پنج حالت توصیه‌هایی را براساس سطح اولویت‌ تعیین شده‌ خود ارائه می‌دهند. با حرکت Slider به سمت راست، هر حالت ویژگیهای حالت دارای اولویت پائین‌تر را نیز داراست. حالت Conservative تنها توصیه‌های اولویت اول را ایجاد می‌کند (توصیه‌های اجباری). حالت بعدی در سمت راست توصیه‌های اولویت دوم و بالاتر را ایجاد می‌کند و همین طور پیش می‌رود تا حالت Aggressive که توصیه‌های اولویت پنجم و بالاتر را ایجاد می‌کند و تمامی توصیه‌ها در این حالت وجود دارند.

برای انجام این کار، باید مسیر زیر طی شود کلاستر انتخاب شود:

 > Configure > vSphere DRS > Edit > Slider

اجازه جابه‌جایی از حالت Conservative (چپ) تا Aggressive (راست) را می‌دهد.

 

باید تعیین شود که DRS چقدر Aggressive یا Conservative شروع به کار کند. معمولا Slider در وسط نگه ‌داشته می‌شود زیرا اگر زیاد Aggressive باشد، VMها دائما درحال جابجایی خواهند بود و باید بخاطر داشت که با هربار جابجایی VM بر زیرساخت اصلی فشار وارد می‌شود، مانند استفاده از Storage یا CPU به این دلیل که عملیات کپی حین vMotion لینکهای شبکه را اشباع کرده و اگر 10GB (یا بیشتر) موجود نباشد، عملیات vMotion هرگز تمام نمی‌شود.

اگر تنظیمات خیلی Conservative باشد، VMها به اندازه‌ کافی جابجا نشده و عدم تعادل Cluster افزایش می‌یابد یا بیشتر اوقات بدون اصلاح صورت می‌گیرد.

خاموش کردن VM بلااستفاده، تنها VMهایی که واقعا مورد نیاز هستند باید روشن بمانند. VMهای روشن از منابع حافظه استفاده کرده و معمولا حتی در حالت بلااستفاده نیز از منابع CPU نیز استفاده می‌کنند.

حتی VMهای بلااستفاده با مصرف کم از منابع می‌توانند در تصمیمات DRS تاثیر بگذارند. با خاموش کردن یا تعلیق VMهایی که از آنها استفاده نمی‌شود، می‌توان کمی عملکرد را بهبود بخشید.

قوانین وابستگی DRS، قوانین وابستگی DRS می‌توانند دو یا چند VM را در یک Host ESXi نگه‌دارند (وابستگی VM/VM) یا از سوی دیگر، می‌توانند اطمینان حاصل نمایند که آنها همیشه در Host‌های مختلف قرار دارند (ضد وابستگی VM/VM)

همچنین با استفاده از این قوانین می‌توان اطمینان حاصل کرد که گروهی از VMها تنها روی یک گروه خاص از Host‌های ESXi اجراء می‌شوند (وابستگی Host/VM) یا هرگز روی یک گروه خاصی از Hostها اجراء نمی‌شوند (ضد وابستگی VM/Host)

معمولا بهتر است تا تنظیمات وابستگی را بدون تغییر رها کرد. با این حال در برخی موارد خاص و نادر، مشخص کردن تنظیمات قوانین وابستگی به بهبود عملکرد کمک می‌کند.

به منظور تغییر تنظیمات وابستگی باید این مسیر را طی نمود، انتخاب Cluster:

> Configure> Rules Host/VM > Add

وارد کردن اسم برای قانون جدید، انتخاب نوع قانون و با استفاده از رابط گرافیکی ادامه تنظیمات را تکمیل کنید.

 

در کنار تنظیمات پیش فرض، انواع تنظیمات وابستگی عبارتند از:

- نگهداری ماشینهای مجازی در کنارهم، این نوع وابستگی می‌تواند به واسطه تاخیر کمتر در ارتباط میان ماشینها، عملکرد را بهبود بخشد.

- ماشینهای مجازی جدا از هم، این نوع وابستگی می‌تواند حداکثر دسترسی VMها را حفظ کند. به عنوان مثال، اگر هر دو Front Endهای وب‌سرور از یک برنامه کاربردی واحد باشند، کاربر ممکن است بخواهد اطمینان حاصل کند که آنها تحت تاثیر خرابی سرور نیستند (اگر اتفاق بیافتد). پس در چنین شرایطی آن دو VM در یک زمان خاموش نمی‌شوند. این قانون همچنین می‌تواند دو Domain Controller را در دو Host جدا نگه دارد تا در صورتی هر سرور فیزیکی به مشکل برخورد کند، کاربر می‌تواند احراز هویت کرده و به منابع  دسترسی پیدا کند.

- ماشینهای مجازی به Host‌ها، این نوع وابستگی می‌تواند برای کلاسترهایی که دارای Licensing نرم‌افزاری محدود یا الزامات پیکربندی خاصی نیاز دارند، مفید باشد.

نکته:

همانطور که مشاهده می‌شود، VMware vSphere DRS برای بسیاری از سناریوها قابل تطبیق است. تنظیمات پیش‌فرض از ابتدای کار برقرار هستند اما برای انطباق آن با هر محیط، در صورت نیاز، گزینه‌های زیادی وجود دارد. با فهم جریان کاری و نیازمندیها، کاربر قادر خواهد بود از طریق پیکربندی vSphere DRS به حداکثر عملکرد و مزیت زیرساخت مجازی دست یابد.

برچسب ها: Virtualization, VMWare, ESXi, DRS