multi tenancy چگونه کار میکند؟
در ادامه مطلب قبل در مورد معرفی multi tenancy، در اینجا نگاهی عمیقتر به اصول فنی میاندازیم که در انواع مختلف رایانش ابری امکان multi tenancy را فراهم میکند. و میخواهیم بررسی کنیم که multi tenancy چگونه کار میکند؟
multi tenancy در رایانش ابری عمومی
موتور مخصوص اتومبیل را تصور کنید که میتواند به راحتی بین چندین ماشین و دارندگان خودرو تقسیم شود. آنچه هر صاحب اتومبیل از موتور میخواهد کمی متفاوت است: بعضی از دارندگان اتومبیل به یک موتور ۸ سیلندر قدرتمند نیاز دارند، در حالی که برخی دیگر به موتور ۴ سیلندر کم مصرف نیاز دارند. حال تصور کنید که این موتور ویژه هر بار که روشن میشود قادر به تغییر خود است تا بتواند نیازهای صاحب خودرو را بهتر برآورده کند.
این شبیه روشی است که بسیاری از ارائه دهندگان ابر عمومی multi tenancy را اجرا میکنند. اکثر ارائه دهندگان ابر، multi tenancy را به عنوان نمونه نرم افزار مشترک تعریف میکنند. آنها فراداده (فراداده اطلاعات مربوط به یک فایل است، تا حدودی مانند توضیحات پشت کتاب.) مربوط به هر مستأجر را ذخیره میکنند و از این دادهها برای تغییر نمونه نرم افزار در زمان اجرا متناسب با نیازهای هر مستأجر استفاده میکنند. مستاجرها از طریق مجوزها از یکدیگر جدا میشوند. حتی اگر همه آنها از یک نمونه نرم افزاری مشترک برخوردار باشند، هر یک به طور متفاوتی از این نرم افزار استفاده کرده و تجربهی متفاوتی از آن خواهند داشت.
معماری کانتینر در multi tenancy چگونه کار میکند؟
کانتینرها بسته نرم افزاری مستقلی هستند که شامل یک برنامه، کتابخانههای سیستم، تنظیمات سیستم و همه موارد دیگری هستند که برنامه برای اجرای آنها نیاز دارد. کانتینرها به شما اطمینان میدهند که یک برنامه بدون در نظر گرفتن محل میزبانی به طور یکسان اجرا میشود.
کانتینرها از یکدیگر جدا شده و به محیطهای مختلف فضای کاربری تقسیم میشوند و هر کانتینر طوری کار میکند که گویی تنها سیستم موجود در آن دستگاه میزبان است. از آنجا که کانتینرها خودگردان هستند، چندین کانتینر ایجاد شده توسط مشتریان مختلف ابر میتوانند بر روی یک دستگاه میزبان اجرا شوند.
بیشتر بخوانید: Multitenancy چیست؟
multi tenancy در محاسبات بدون سرور
محاسبات بدون سرور مدلی است که در آن برنامهها به قطعات کوچکتری تقسیم میشوند که توابع نامیده میشوند و هر تابع فقط بر اساس تقاضا اجرا میشود، جدا از توابع دیگر. (این مدل از رایانش ابری با نام Function-as-a-Service یا FaaS نیز شناخته میشود.)
همان طور که از نام آن پیداست، توابع بدون سرور در سرورهای اختصاصی اجرا نمیشوند، بلکه در هر دستگاه موجود در زیرساختهای ارائه دهنده بدون سرور اجرا میشوند. از آنجا که به شرکتها سرورهای فیزیکی مجزا اختصاص داده نشده است، ارائه دهندگان بدون سرور معمولاً در هر زمان مشخص کد چند مشتری خود را بر روی یک سرور اجرا میکنند – نمونه دیگری از multi tenancy.
برخی از پلت فرمهای بدون سرور از Node.js برای اجرای کد بدون سرور استفاده میکنند. پلتفرم بدون سرور Cloudflare، Cloudflare Workers، از Chrome V8 استفاده میکند که در آن هر عملکرد در sandbox مخصوص خود یا در محیط کاملاً جداگانهای اجرا میشود. این امر توابع بدون سرور را کاملاً از یکدیگر جدا نگه میدارد حتی اگر آنها از یک زیرساخت استفاده کنند.
رایانش ابری خصوصی در multi tenancy چگونه کار میکند؟
رایانش ابری خصوصی تقریباً به همان روشی که رایانش ابری عمومی از معماری multi tenancy استفاده میکند، استفاده میکند. تفاوت در این است که سایر مستاجران از سازمانهای خارجی نیستند. در رایانش ابری عمومی، شرکت A در زیرساخت با شرکت B مشترک است. در رایانش ابری خصوصی، تیمهای مختلفی در شرکت A زیرساختها را با یکدیگر به اشتراک میگذارند.
منظور از «قفل فروشنده» چیست؟
در راستای multi tenancy چگونه کار میکند؟ میخواهیم راجع به قفل فروشنده صحبت کنیم. قفل فروشنده به شرایطی اشاره دارد که هزینه تعویض به یک فروشنده دیگر آن قدر زیاد است که مشتری اساساً با فروشنده اصلی ادامه میدهد. به دلیل فشارهای مالی، نیروی کار ناکافی یا نیاز به جلوگیری از وقفه در فعالیتهای تجاری، مشتری “محصور” در آنچه ممکن است کالا یا خدمات دارای کیفیت پایین باشد، قفل شده است. تصور کنید یک فروشگاه قهوه را که یک فروشنده قهوه آورده است، و این فروشنده به دستگاههای قهوه ساز خاصی در دفتر نیاز دارد که فقط فروشنده آن را میفروشد. حال تصور کنید که کیفیت قهوهای که این فروشنده تحویل میدهد، افت چشمگیری داشته باشد. رو آوردن به یک فروشنده قهوه جدید به معنای بی فایده بودن ماشینهای قدیمی است که آنها خریداری کردهاند، زیرا احتمالاً تغییر نیاز به خرید تجهیزات جدید قهوه ساز دارد. با توجه به دردسر و هزینه اضافی برای جایگزینی هر دستگاه قهوه، کارگران در دفتر در واقع بر سر توافق خود با فروشنده قدیمی باقی میمانند و مجبور به نوشیدن قهوه با کیفیت پایین میشوند.
مثالی واقعی از قفل فروشنده، روشی است که اپل در روزهای ابتدایی خدمات، مصرف کنندگان را به استفاده از iTunes واداشته است، زیرا موسیقی خریداری شده از طریق iTunes فقط در برنامه iTunes یا از طریق iPod پخش میشود.
قفل فروشنده در محاسبات ابری چیست؟
در محاسبات ابری، مقداری از نرم افزار یا زیرساختهای محاسباتی به یک فروشنده ابر از بیرون، که آن را از طریق اینترنت به عنوان یک سرویس ارائه میدهد، سپرده میشود. به عنوان مثال، سرورهای میزبان ابر زیرساخت به عنوان سرویس (IaaS) و برنامههای میزبان ابر نرم افزار به عنوان سرویس (SaaS) هستند. گاهی اوقات، ممکن است یک شرکت خود را به یک ارائه دهنده ابر خاص محدود کند. قفل فروشنده میتواند در رایانش ابری به مشکلی تبدیل شود زیرا انتقال پایگاه داده زمانی که تنظیمات آن انجام شده باشد به خصوص در انتقال ابر بسیار دشوار است، که شامل انتقال دادهها به یک نوع کاملاً متفاوت از محیط است و ممکن است شامل اصلاح مجدد دادهها باشد. همچنین، هنگامی که نرم افزار شخص ثالث در فرایندهای تجاری گنجانده میشود، تجارت ممکن است به آن نرم افزار وابسته شود.
چرا قفل فروشنده نگران کننده است؟
اگر یک شرکت به فروشنده ابر خاص محدود شده باشد، شرایط مختلفی میتواند تأثیر منفی بگذارد:
- اگر کیفیت خدمات فروشنده کاهش یابد، یا هرگز برای شروع آستانه مورد نظر را نداشته باشد، مشتری با آن درگیر میشود.
- همچنین ممکن است فروشنده پیشنهادات محصولات خود را به شدت تغییر دهد به گونهای که دیگر پاسخگوی نیازهای مشاغل نباشد.
- یک فروشنده ممکن است کلاً از کار خارج شود.
- سرانجام، یک فروشنده ممکن است با دانستن اینکه مشتریانش در محدودیت هستند، افزایش قیمت زیادی را برای این سرویس اعمال کندبه طور کلی، واگذاری فناوری اساسی و حیاتی به یک فروشنده خارجی برای هیچ شرکتی آسان نیست و مستلزم اعتماد زیادی به فروشنده است.
چگونه شرکت ها می توانند از خطرات قفل فروشنده جلوگیری کنند؟
- خدمات ابری را به دقت ارزیابی کنید: شرکتها باید قبل از تعهد در مورد فروشنده ابری، به طور ایده آل کاملاً تحقیق کنند تا مطمئن شوند که سطح خدمات آنها کافی است.
- اطمینان حاصل شود که دادهها به راحتی قابل جابجایی هستند: شرکتهایی که از رایانش ابری استفاده میکنند باید تلاش کنند دادههای خود را قابل حمل نگه دارند یا انتقال آنها از یک محیط به محیط دیگر آسان باشد. آنها میتوانند این کار را تا حدی با تعریف واضح مدلهای داده خود و نگهداری دادهها در قالبهایی که در انواع پلت فرمها قابل استفاده هستند، به جای قالبهایی که مختص یک فروشنده خاص است، انجام دهند.
- پشتیبان گیری: نگه داشتن بک آپ های داخلی از همه دادهها به کسب و کار کمک میکند تا آماده باشد تا دادهها را در سایر نقاط میزبانی کند، در صورتی که استخراج آن از سرویس ابری بسیار دشوار یا زمان بر باشد (و همچنین محافظت از باج افزار).
- استراتژی ابر multi tenancy یا hybrid: یک رویکرد multi tenancy شامل چندین ارائه دهنده ابر است که باعث کاهش وابستگی به هر فروشنده میشود. در یک ابر hybrid، برخی از دادهها تحت کنترل مستقیم سازمان باقی میمانند، یا در یک ابر خصوصی یا در محل ذخیره میشوند.