مجازی سازی دسکتاپ و روشهای ارائه
با توجه به امکانات بسیار مطلوب مجازی سازی دسکتاپ، مدیران شبکه به آن روی آورده و بنای شبکه خود را روی مجازی سازی دسکتاپ ها گذاشته و از مزایای آن بهره می برند.در ششمین مقاله از سری مقاله های مجازی سازی مهندس اشکان پزشکی، به حداقل نیازمندی ها برای Connection Server می پردازیم. شرکت پردیس پارس نیز همزمان با رشد این تکنولوژی آموزش های لازم را دیده و در پروژه های خود از آن استفاده می کند. تیم فنی شرکت پردیس پارس آماده ارائه انواع خدمات مجازی سازی، راه اندازی شبکه و پشتیبانی شبکه، ایمیل سرور، بکاپ سرور، مانیتورینگ وخدمات فایروال می باشد.
Persistent or non-persistent desktops
در این بخش در مورد تفاوت دسکتاپ هایی که به کاربران می دهیم و راه هایی که میتوانیم این دسکتاپ ها را به کاربر نهایی برسانیم صحبت می کنیم:
طرحی که شما برای کارفرما یا سازمان خود در نظر دارید بسیار مهم است این طرح به عنوان روشی که به صورت بالقوه بر روی storage قرار می گیرد حائز اهمیت میباشد. زیرساخت شما، تکنولوژی و راهکاری که برای ایجاد دسکتاپِ کاربر انتخاب میکنید خیلی مهم بوده و در تمامی مراحل توسعه و پیاده سازی شما را درگیر خود خواهد ساخت.
یکی از سوالاتی که همیشه ذهن افراد را دچار سردرگمی میکند این است که آیا شما باید یک دسکتاپ (dedicated (Persistent به کاربر اختصاص بدهید یا یک Floating دسکتاپ (non-persistent) برای کاربر مناسب میباشد؟
دسکتاپها میتوانند یک ماشین مجازی اختصاصی باشند که به صورت dedicated به یک کاربر داده میشود و بر اساس مکانیزم1:1 تعریف میشود. دقیقا همانند اینکه کاربر یک دسکتاپ فیزیکال در اختیار دارد و یا یوزر درخواست دسکتاپ را میدهد و در یک زمان دسکتاپ ساخته سپس personalize میشود و در اختیار کاربر قرار میگیرد. virtual desktop machine به صورت تصادفی از یک poolی که موجود است و یوزر به آن دسترسی دارد اختصاص داده میشود.
اگر حضور ذهن داشته باشید در مطالب قبلی در مورد چگونگی اختصاص دسکتاپ مطالبی بیان شد که با مراجعه به آنها موضوع کاملا برای شما روشن میگردد.
• Persistent desktop:
به کاربران دسکتاپی تعلق می گیرد که تمام داکیومنت ها، برنامه ها و تنظیمات در آن قرار دارد. برای اولین باری که کاربر متصل می شود این دسکتاپ به صورت استاتیک در اختیارش قرار می گیرد و در تمام اتصال های بعدی از همین دسکتاپ استفاده میکند. هیچ کاربری دیگری اجازه استفاده از این دسکتاپ را ندارد و به صورت کاملا اختصاصی در اختیار کاربر قرار گرفته است.
• Non-persistent desktop:
در هر اتصالی که کاربران به Pool خود دارند ممکن است دسکتاپهای مختلفی را دریافت کنند. برنامه ها یا دیتای کاربران بین session ها ثابت نمی باشد و وقتی کاربر Log off میکند دسکتاپ ریست شده و یا refresh می شود.
در اکثر موارد مورد استفاده، پیکربندی دسکتاپ non-persistent بهترین گزینه می باشد. دلیل اصلی آن هم این است که نیازی به ساخت دسکتاپ های قطاری (پشت سرهم) برای هر کاربر وجود ندارد. فقط کافی است وقتی که به یک دسکتاپ نیاز دارید آنرا روشن کنید. تمام کاربران با دسکتاپ اصلی شروع میکنند سپس قبل از گرفتن دسکتاپ تنظیمات و personalized را دریافت میکنند. این مورد به نرخ همزمانی کمک شایانی میکند. برای مثال، ممکن است 5000 نفر در سازمان شما کار کنند اما در یک زمان فقط 2000 نفر لاگین کنند. بنابراین شما فقط به 2000 دسکتاپ مجازی available نیاز دارید.
در غیر این صورت، به ازاء هر بار لاگین کردن کاربر شما باید یک دسکتاپ بسازید حالا در نظر بگیرید که تصمیم دارید برای 5000 نفر دسکتاپ بسازید!! تصور این حرکت هم مانند یک کابوس است. علاوه بر این مورد زیرساخت قوی و ظرفیت خیلی زیادی مورد نیاز میباشد تا شما این سناریو را به سرانجام برسانید.
یکی از مواردی که بهعنوان یک مانع در پیشرفت برای non-persistent معرفی میشود ارائه برنامهها در دسکتاپهای مجازی میباشد. در حال حاضر راهکارهایی مانند VMware App Volumes به یکی از تکنولوژیهای اصلی بدل شده است. در این تکنولوژی همانند دسکتاپ، برنامه به محض درخواست ایجاد شده و در اختیار کاربر قرار میگیرد.
مورد دیگری که اغلب باعث سردرگمی و توهم ما میشود تفاوت بین dedicated و floating دسکتاپ می باشد و اینکه چطور Linked Cloneها درست می شوند. فقط این مورد باید کاملا مشخص باشد که Linked Clones، Full clones، Instant مقوله هایی کاملا مجزا از dedicated و Floating دسکتاپ هستند. عمل Cloning به چگونگی ساخت و آماده سازی دسکتاپ باز میگردد، در حالیکه اصطلاح persistent و non-persistent به چگونگی اختصاص دسکتاپ به یک کاربر نهایی باز میگردد.
دسکتاپ های Dedicated و floating صرفا در مورد چگونگی تخصیص ( واگذاری) به کاربران می باشد. آیا کاربر یک dedicated دسکتاپ دارد یا ازیک Pool دسکتاپ را میگیرد. Linked Cloned و Full Cloned قابلیت هایی از Horizon View می باشند وقتی که از View Composer در جهت ساخت یک دسکتاپ از ایمیج اصلی برای هر کاربر ساخته می شود. این بدین معنی می باشد که صرف نظر از داشتن یک دسکتاپ floating یا dedicated تخصیص داده شده ماشین مجازی می تواند Linked یا Full Clone باشد.
خلاصه ای از مزایایی که میتوانیم نام ببریم :
• عملیاتی و کارآمد می باشد. مدیریت پچ ها و ایمیج ها در سازمان ها بسیار آسان و راحت می شود.
• برای Storage ها بسیار کارآمد می باشد. مقدار فضای مصرفی مورد نیاز هر هاست در حالت non-persistent بسیار کم و ناچیز می باشد.
Horizon View Composer and Linked Clones:
یکی از دلایل اصلی Fail شدن پروژه ی virtual desktop machine یا خارج شدن آن از چرخه توجه، زیرساخت سنگین و نیازمندی های مرتبط با storage می باشد که اغلب به صورت یک هزینه ی زیاد دیده می شود و کارشناسان استفاده از دسکتاپ های فیزیکی را خیلی مقرون به صرفه تر دیده و پروژه را رها میکنند.
حال کمی در مورد دسکتاپ مجازی صحبت کنیم. فرض کنیم شما 1000 کاربر دارید و در نظر دارید به هر دسکتاپ فضایی معادل 250 گیگابایت اختصاص بدهید یک فرمول ساده ابعاد کار را روشن میکند:
User 1000 * 250GB=250 TB
این فضا برای دسکتاپ مجازی شما مورد نیاز است!! این عدد هزینه ی وحشتناکی را به زیرساخت شما تحمیل میکند. برای تامین این فضا و استقرار آن در دیتاسنتر شما به یک غول چراغ جادو نیاز دارید تا منابع مالی را تامین کرده و زیرساخت شما را حاضر نماید! در این لحظه شما به این مورد فکر میکنید که همان دسکتاپ فیزیکی خیلی بهتر و مناسب تر می باشد.
رویکرد جدیدی که برای استقرار دسکتاپ های مجازی مورد نیاز است تکنولوژی Linked Clone می باشد. Linked Clone طراحی شد تا فضای مورد نیاز را کاهش و سادگی استقرار را به ارمغان بیاورد. این تکنولوژی سبب می شود مدیریت image ها راحت تر شده و ماهیت متمرکزسازی پر رنگ تر گردد.
Linked Clone
از سطوح بالایی آغاز می شود، یک Clone کپی از ماشین مجازی موجود یا Parent آن می باشد. این Parent ماشین مجازی معمولا به صورت Gold ساخته شده است که شما در نظر دارید از آن یک VM جدید بسازید. وقتی یک clone ساخته می شود، دارای هویت مستقل و unique است. این مراحل در Horizon View یکتا نمی باشد. در حقیقت عملکردی از vSphere و vCenter است. در مورد Horizon view ما کامپوننت دیگری به اسم View composer اضافه میکنیم تا مدیریت درستی بر روی ایمیج های دسکتاپ ها داشته باشیم. دو نوع clone برای deploy کردن وجود دارد:
1- Full clone
2- Linked clone
Full Clones
همان طوری که از نام آن مشخص است، یک دیسک Full Cloneکامل بوده و به صورت کامل و full-size از ماشین parent ( ماشین اصلی ) می باشد. اولین cloneی که ساخته می شود یک دسکتاپ مجازی unique است با هویت شناسایی خودش به طوری که هیچ ارتباطی با VM اصلی ندارد. این دسکتاپ می تواند به صورت کاملا مستقل عمل کرده و هیچ گونه وابستگی به ماشین مجازی اصلی (parent) ندارد.
باید به این نکته توجه کنیم که این VM فضایی معادل با ماشین مجازی Parent خود اشغال میکند که این بحث را در مطالب پیشین داشتیم و در مورد ظرفیت مورد نیاز صحبت کردیم. استفاده از Full Cone مقادیر زیادی از ظرفیت storage را میطلبد و همین امر هزینه های بیشتری برای زیرساخت به همراه خواهد داشت.
قبل از اینکه شما از بن و ریشه بیخیال استفاده از Full Clone بشوید بهتر است از بعضی مواردی که در آنها Full Clone کاربرد دارد نام ببریم. برای مثال، اگر شما برنامه نویسی هستید که دائما برنامه های مختلف نصب میکنید و از ابزارهای خاصی استفاده میکنید مسلما دسکتاپ خود را نیاز دارید و بهترین انتخاب شما Full Clone می باشد .