مجازیسازی برنامه یا Application Virtualization به فرآیند فریب یک برنامه استاندارد گفته میشود؛ منظور از فریب، عملیاتی است که باعث میشوند برنامه استاندارد مورد نظر باور داشته باشد که مستقیما با ظرفیتهای یک سیستم عامل ارتباط برقرار میکند در حالی که در واقع چنین نیست. این ترفند به یک لایه مجازیسازی نیاز دارد که بین برنامه و سیستم عامل قرار داده شده باشد. این لایه در واقع یک فریمورک است که از آن انتظار میرود زیرمجموعههای یک برنامه را به صورت مجازی و بدون تاثیر بر سیستم عامل اجرا کند. لایه مجازیسازی، جایگزین بخشی از محیط زمان اجرا میشود که معمولا توسط سیستم عامل ارائه میشود و مسئولیت مدیریت فایلها و تغییرات رجیستری را به طور شفاف به یک فایل اجرایی واگذار میکند.
وقتی فرآیندهای برنامه به جای تعداد زیادی فایل پراکنده در سیستم عامل به یک فایل واگذار میشوند، برنامه میتواند به راحتی روی هر دستگاه دیگری به کار خود ادامه دهد. با این روش، برنامههایی که قبلا ناسازگار محسوب میشدند، اکنون میتوانند در مجاورت برنامه اصلی اجرا شوند. مجازیسازی دسکتاپ که در ارتباط با مجازیسازی برنامه استفاده میشود، انتزاعی از محیط فیزیکی دسکتاپ و نرمافزار مرتبط با آن از دستگاه کاربر نهایی است که به آن دسترسی هم دارد.
اجرای مجازیسازی برنامه
مجازیسازی برنامه یا دسکتاپ، یک دسکتاپ به عنوان سرویس (DaaS) است که توسط یک هایپروایزر معروف به مانیتور ماشین مجازی یا VMM مدیریت میشود. یک زیرساخت VMM میتواند توسط نرمافزار، سیستم عامل، سختافزار یا ترکیبی از آنها ماشینهای مجازی (VM) را ایجاد و راه اندازی کند. یک میزبان به چندین مهمان متصل میشود که در واقع همان سرور با چندین نقطه پایانی است. مجازیسازی برنامه و دسکتاپ، مدیریت متمرکز و کامل محیط دسکتاپ را امکانپذیر میکند. سازمانها به جای داشتن تعداد بیشماری از نقاط پایانی، تنها به فراهم کردن چند ایمیج از برنامهها و دسکتاپهای مجازی نیاز دارند؛ در نتیجه بهروزرسانیها را بهطور مداوم، کامل و سریع انجام میشوند. از آنجایی که نرمافزار و بهروزرسانیهای امنیتی روی ایمیجها در سرورهای مرکز داده ذخیره میشوند، قرار گرفتن دستگاه نقطه پایانی در معرض آسیبپذیریهایی مانند انواع بدافزارها یا دستکاری برنامهها به میزان قابل توجهی کاهش مییابد.
مقاله پیشنهادی: “تحویل برنامه مجازی (vADC) یا تحویل برنامه فیزیکی (pADC): کدام را انتخاب کنیم؟“
مزایای مجازیسازی برنامهها
از آنجایی که دادهها در دستگاههای نقطه پایانی پردازش یا ذخیره نمیشوند، در صورتی که دستگاه در معرض خطر قرار گیرد، هیچ نقض دادهای به وجود نخواهد آمد. در واقع دستگاه نقطه پایانی فقط یک پایانه نمایشگر است و هیچ مسئولیت خاصی را به عهده ندارد. مجازیسازی برنامهها و دسکتاپ هر دو از مدیریت رویداد پشتیبانی میکنند. مدیریت رویداد این امکان را فراهم میکند تا بسیاری از رویدادهای نامطلوب دسکتاپ صرفا با بهروزرسانی ایمیج مجازیسازی شده حل شود و محیط دسکتاپ به حالت قبلی خود بازگردد. سایر مزایای مجازیسازی عبارتند از:
- اجرای برنامههای قدیمی، مثل برنامههایی که برای پلتفرمهای سیستمعامل قدیمیتری مانند Windows 7 و XP توسعه یافتهاند را امکانپذیر میکند.
- امکان انجام عملیات بین پلتفرمی مثل اجرای برنامههای ویندوز در iOS، Android، macOS و Chrome OS را فراهم میکند.
- از تداخل با سایر برنامههای مجازی، مثل تداخل ایجاد شده توسط نرمافزار ضد بدافزار جلوگیری میکند.
- به کاربران اجازه میدهد چندین نمونه از برنامه را اجرا کنند. اگر مجازیسازی انجام نشده باشد، بسیاری از برنامهها میتوانند اجرای یک نمونه را شناسایی کنند و به نمونههای جدید اجازه اجرا نمیدهند.
با این حال، برخی از برنامهها چالشهایی را برای مجازیسازی ایجاد میکنند. برای مثال، برنامهای که به درایور دستگاه نیاز دارد میتواند بر استفاده از وسایل جانبی مانند چاپگرها تاثیر منفی بگذارد. چرا که درایورها در سیستمعامل ادغام میشوند و در واقع مختص سیستمعامل هستند. همچنین، برنامههای کاربردی ۱۶ بیتی و برنامههایی مثل برخی از ضد ویروسها که نیاز به یکپارچهسازی گسترده سیستم عامل دارند، در مجازیسازی با مشکل مواجه میشوند. تاخیر ناشی از مجازیسازی میتواند برنامههای گرافیکی فشرده را در طول فرآیند رندر عملا ناکارآمد کند.
تفاوت مجازیسازی سرور و مجازیسازی برنامه
اگرچه این دو فرآیند دارای ویژگیهای کلیدی مشترکی مانند کاهش هزینهها، تقویت امنیت دادهها و کنترل مرکزی هستند، اما هر کدام از آنها عملکردهای جداگانهای را انجام میدهند. مجازیسازی سرور به استفاده از یک یا چند سرور خوشهای در چندین گروه از سرورها اشاره دارد. به عنوان مثال اگر یک مرکز داده ۲۰ سرور فیزیکی داشته باشد، میتوان آنها را به صورت دو گروه ۱۰تایی یا دو گروه ۵تایی و ۱۰تایی مجازیسازی کرد. تفاوتی بین سرور یا سرورهای مجازی و گروههای ۵، ۱۰ و ۱۵تایی از سرورهای فیزیکی که به طور مجزا کار میکنند وجود ندارد. از سوی دیگر، یک سرور فیزیکی را میتوان به چندین سرور مجازی مجزا تقسیم کرد که برای به حداکثر رساندن منابع سازمانی و تسهیل بازیابی از قطعیهای غیرمنتظره سرور کمک بزرگی محسوب میشود.
با استفاده از سرورهای مجازی، کاهش بیشتر هزینهها به کمک کاهش نیازهای سازمانی به سرورهای متعدد محقق میشود که در نهایت منجر به هزینه نگهداری و مصرف انرژی کمتر میشود. مجازیسازی برنامهها به این معنی است که آنها میتوانند بدون هیچ گونه وابستگی، از طریق سیستم عامل یا مرورگر دیگری اجرا شوند. به عنوان مثال میتوان به مجازیسازی مایکروسافت پاورپوینت برای اجرا در اوبونتو از طریق مرورگر اپرا اشاره کرد. روش اجرای برنامه در دو محیط با یکدیگر متفاوت هستند؛ مجازیسازی دسکتاپ بر معماری شبکه، پروتکل انتقال و مرکز داده تاثیر میگذارد، در حالی که مجازیسازی سرور تنها بر تغییرات سرور تاثیرگذار خواهد بود.
جمعبندی: چرا مجازیسازی برنامه؟
برای کاهش هزینهها و بهبود بهرهوری، سازمانها باید فضای کاری دیجیتال خود را توسعه دهند. این به معنای انتقال داراییهای شبکه از ذخیرهسازی محلی به فضای ابری است و DaaS نتیجه این تغییر است. فضای کاری دیجیتال امروزی، دستگاهها، برنامهها و خدماتی که کاربران به آن نیاز دارند را جمعآوری میکند. این فضاهای کاری باید به طور ایمن و یکپارچه مدیریت شوند تا امکان دسترسی مشترک در سراسر شرکت فراهم شود.
راهحلهای DaaS را میتوان با VMware Horizon، یک محصول مجازیسازی دسکتاپ که تحویل، حفاظت و مدیریت دسکتاپ و برنامهها را سادهسازی میکند، مستقر کرد. Horizon با سادگی، سرعت، انعطافپذیری و مقیاس بینظیرش، هزینهها را در مقایسه با انواع مجازیساز دسکتاپ معمولی کاهش میدهد. در عین حال از تجربه کاربری پایدار و جذاب در هر دستگاه، در هر مکان و در هر زمان اطمینان ایجاد میکند. Horizon از محلهای کار پویا پشتیبانی میکند و به کاربران اجازه میدهد تا به چندین برنامه اختصاصی سیستم عامل، از طریق ابر به سرعت و به طور همزمان در هر دستگاهی دسترسی داشته باشند. محصولات خاص Horizon عبارتند از:
- VMware Horizon: یک پلتفرم واحد که تحویل و مدیریت سریع و کارآمد دسکتاپهای مجازی و برنامههای منتشر شده در فضای ابری، فضای محلی، در یک پیکربندی چند ابری یا حتی ترکیبی را به هر دستگاهی در هر مکانی ساده میکند.
- Horizon Cloud در Microsoft Azure: میتوانید مزایای برنامههای کاربردی بهعنوان سرویس (SaaS) همراه با IaaS که به صورت ذاتی انعطافپذیر است را برای فضای کاری دیجیتالی پیشرفته با هزینه کمتر دریافت کنید.
- Horizon Apps: دسترسی سریع و آسان به برنامههای SaaS و برنامههای تلفن همراه را از یک فضای کاری واحد برای کاربران نهایی فراهم میکند.
- Horizon Cloud در IBM Cloud: هزینه و دشواریهای مدیریت زیرساختهای داخلی را از بین میبرد و در عین حال به راحتی و به سرعت، برنامهها و دسکتاپهای میزبان ابری را به هر نقطه پایانی تحویل میدهد.
- App Volumes: برای استفاده از برنامه و UEM، App Volumes به سرعت برنامهها را به محیطهای دسکتاپ تحویل میدهد و اجازه میدهد تا برنامهها را به صورت مقیاسپذیر و به سرعت در اختیار کاربران قرار گیرد.
عالی بود