محاسبه IOPS (Input/Output operations Per Second) در طراحی Horizon View

برای هر Core سی پی یو چه تعدادی ماشین مجازی می توانیم در نظر بگیریم؟ در مورد IOPS چگونه باید عمل کنیم؟ از این دست سوالات بسیار زیاد است. تمام این موارد به المان دیگری وابسته است. اگر مقالات و سایت هایی که در این زمینه ها مطلب می نویسند را خوانده باشید متوجه می شوید که مثلا برای ویندوز سون، IOPS پیشنهادی عددی بین 20 الی 25 می باشد. این عدد برای شرایطی کاملا استیبل درست و قابل پذیرش است. اما در شرایطی که activity دیسک ها بالا برود چه اتفاقی می افتد؟ تنها راهی که در این شرایط پیش روی شما قرار دارد استفاده از گزارشات ارزیابی اطلاعات و تجزیه و تحلیل آنها می باشد. گرافی که در زیر مشاهده می کنید یک نمونه از workload بوت دسکتاپ ها می باشد.

کاربران بعد از لاگین کردن کارهای معمول خود را شروع می نمایند. می توانید بر روی محور عمودی IOPS و بر روی محور افقی زمان را مشاهده کنید. همان طور که ملاحظه می فرمایید boot storm دارای read بسیار زیاد و سنگینی می باشد و حالت Login Storm به write بسیار بالایی نیاز دارد. بر اساس شرایط باید موارد را پیش بینی کنید. ممکن است در محیطی که شما مشغول به راه اندازی هستید دسکتاپ ها با IOPS عددی 25 به خوبی کار کنند. اما در جای دیگر این عدد متغییر باشد.

حال سوال دیگری که مطرح می شود IOPS برای برنامه ها است. هر برنامه ای که اجرا می شود چه مقدار IOPS نیاز دارد؟ فراموش نکنید بعد از گسترش پروژه دیگر زمانی برای محاسبه IOPS وجود ندارد!

بحث جدی که همیشه وجود دارد تفکیک IOPS بین read و write است. طبق توصیه های انجام شده توسط VMware بهتر است این تفکیک در حالت 80:20 باشد. یعنی 80 درصد برای Write در نظرگرفته شود و 20 درصد برای read درنظر گرفته شود. اما این یک وحی مطلق نبوده!! و با شرایط و ارزیابی دیتاها ارتباط مستقیمی دارد. بد نیست مواردی که نسبت ها به صورت 70:30 یا حتی 60:40 می باشد نیز مورد آزمایش واقع شود. یکی از موارد مهمی که معمولا مورد بی توجهی قرار می گیرد RAID Penalty (جهت اطلاعات بیشتر این لینک بررسی کنید)، یا IOPS Penalty هنگام Write بر روی دیسک می باشد.

این یعنی برای هر عمل read، چندین Write اتفاق می افتد که کاملا وابسته به RAID تنظیم شده بر روی دیسک ها می باشد. برای مثال بالا، فرض کنید دیسک ها به صورت RAID 5 بسته شده اند که در این صورت دارای Write penalty با عدد 4 می باشیم و باید 200 واحد IOPS با نسبت read/write به صورت 60:40 داشته باشیم. برای محاسبه این اعداد می توانید از فرمول زیر استفاده نمایید.

(Total Workload IOPS * Percentage of read operations) + (Total Workload IOPS * Percentage read operation) * RAID IO Penalty))

برگردیم به مثالی که زدیم، با توجه به فرمول بالا و مثالی که داشتیم روش حل به شکل زیر می باشد:

(200 IOPS * 60% read operations) + (200 IOPS * 60% read operations) * 4)) = 600 IOPS

در این مثال با تنظیم هارددیسک ها به صورت RAID 5 میزان IOPS مورد نیاز 600 می باشد.

جزئیات طراحی Horizon View:

حالا که ما عناصر کلی زیرساخت و پلتفرم vSphere را مورد بازبینی قرار دادیم و متوجه شدیم که کاملا شرایط عملیاتی ما را پشتیبانی می نمایند وقت آن رسیده که به کامپوننت های جزئی Horizon View توجه داشته باشیم.

The View Connection Server:
ویندوز سروری می باشد که برنامه Horizon View بر روی آن نصب شده است. این سرور می تواند یک ماشین مجازی باشد که بر روی بلاک management قرار دارد. تنظیمات و پیکربندی این سرور بهتر است به صورت زیر باشد:

The View replica server:
این سرور ماهیتا شبیه به View Connection Server می باشد که یک بکاپ سرور برای connection server اصلی محسوب می شود. بهتر است سایز و مشخصات این سرور هم شبیه به connection server اصلی انتخاب شود.

The View security server:
همانند replica server می باشد، security server رول دیگری از connection server را برعهده دارد. مشخصات و سایز این سرور بهتر است شبیه به سایر کامپوننت ها باشد.

The View enrollment server:
Enrollment server رول دیگری از connection server می باشد، بدین معنی که می تواند مشخصات و سایزی شبیه به سایر کامپوننت ها داشته باشد.

The View Composer:
View Composer نسبت به سایر رول های Connection server مقداری متفاوت است. قابلیت نصب بر روی vCenter را داشته و هم به صورت مجزا بر روی یک standalone سرور نصب می شود. البته فراموش نکنید که اگر از یک vCenter به صورت Appliance استفاده میکنید حتما باید از حالت standalone سرور استفاده نمایید. پیکربندی توصیه شده برای Composer به صورت زیر می باشد:

vCenter Servers:
با استفاده از آخرین نسخه Horizon View قابلیت مدیریت 10.000 کاربر با کمک یک vCenter سرور به شما داده می شود. هرچند یادآوری این نکته ضروری است که این راهکار اصلا منطقی و درست نمی باشد. لحظه ای تصور کنید که vCenter شما fail شود!! حتی تصور این نکته بسیار دردناک است. پیکربندی برای vCenter مطابق با جدول زیر می باشد:

VMware Access Point:
یک appliance بر پایه لینوکس بوده که به راحتی در vCenter سرور deploy می شود. مثل تمام appliance ها دارای کانفینگ مشخص می باشد و توصیه می شود تغییری در آن داده نشود. مطابق با نیازهایی که در ذیل بیان می شود باید در هاستی که قرار می گیرد resource آزاد وجود داشته باشد.

حداکثر تنظیمات

حداکثر تنظیماتی که برای Horizon View می توانید در نظر بگیرید در جدول زیر برای شما مشخص شده است:

شبکه

بهینه سازی شبکه یکی از مهم ترین بخش ها است. با بهینه سازی این قسمت شما یک تجربه عالی را برای کاربران فراهم می سازید. جهت ارائه مناسب دسکتاپ های مجازی باید فاکتورهای مختلفی درنظر گرفته شود که یکی از مهم ترین آنها بحث شبکه می باشد.

در مرحله اول کمی به عقب بازگردید و موارد متفاوتی را نگاه کنید. توجه دقیقی به این نکته داشته باشید که کدام کاربر از کجا متصل میشود و آیا این اتصال در داخل LAN است یا از طریق WAN و یا Intranet ؟ بر اساس همین تحقیقات است که می توانید پالسی های مناسبی اتخاذ نمایید تا بعضی از قابلیت ها را محدود کرده و از ظرفیت های بیشتر پهنای باند استفاده نمایید.

توجه به پهنای باند:

وقتی اسم پهنای باند می آید اولین سوالی که به ذهن ما می رسید: چه مقداری Bandwidth نیاز داریم ؟ برای پاسخ به این سوال مطابق معمول همیشه باید بگوییم کاربران شما چه کارهایی برای انجام دارند؟ کارهایی که کاربران انجام می دهند میزان مصرف آنها را مشخص می نماید. VMware در جدول زیر مقدار استفاده پهنای باند را متناسب با نوع کاربر مشخص کرده است.

جدول بالا نیازمندی های کلی مرتبط با پهنای باند را مشخص می نماید. اما فراموش نکنید وقتی اسم audio به میان می آید یعنی برای این مورد هم نیاز به Bandwidth داریم. بر اساس شرایط نوع پهنای باند مصرفی صدا در جدول زیر مشخص شده است.

می توانید بر اساس نوع درخواست های کاربران برای audio حداقل پهنای باند را در نظر بگیرید. پروتکل PCoIP با قابلیت های بسیار زیاد جهت استفاده در Group Policy ویندوز کاربرد دارد. با استفاده از این قابلیت ها می توانید tune لازم را انجام داده و پهنای باند را کنترل نمایید.

چگونگی tune کردن و بهینه سازی دسکتاپ های مجازی از طریق GPO را میتوانید از اینجا دانلود نمایید.

تاخیر در اتصال یا Latency یکی از موارد مهم و اساسی در برنامه توسعه View می باشد. latency تاثیر بسزا و موثری بر روی کاربران میگذارد. به طور معمول، ماکزیمم کارایی performance مورد قبول چیزی در حدود 205 الی 300 میل ثانیه می باشد. هر عددی بالاتر از این استاندارد امکان کار کردن وجود دارد اما فراموش نکنیم که بسیاری از کاربران ناراضی خواهند بود. برای مثال تصور کنید این عدد برای یک کارمند دفتری بسیار عالی می باشد ولی آیا یک کاربر حرفه ای هم از شرایط راضی خواهد بود؟

تجربه ارائه دسکتاپ بوسیله PCoIP
بررسی پروتکل Blast Extreme
بررسی سخت افزارهای گرافیکی در Horizon View – بخش اول
بررسی سخت افزارهای گرافیکی در Horizon View – بخش دوم
پشتیبانی از ارتباطات یکپارچه (Unified Communication) در Horizon View
معیارهای موفقیت در پروژه VMware Horizon
طراحی محیط عملیاتی VMware Horizon : فاز سوم
بررسی نکات کلیدی و زیرساخت های مورد نیاز VMware Horizon
بررسی Load Balancing در Horizon View

دیدگاه 1
  1. mali_Zamani19 says

    like

دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.