مفهوم نمونه در رایانش ابری (Instance In Cloud Computing) چیست؟
یک «Instance» در رایانش ابری، یک منبع سرور است که توسط ارائهدهندگان خدمات ابری شخص ثالث فراهم میشود. اگرچه شما میتوانید منابع سرور فیزیکی را در محل خود مدیریت و نگهداری کنید، اما این کار پرهزینه و ناکارآمد است. ارائهدهندگان خدمات ابری سختافزار را در مراکز داده خود نگهداری کرده و دسترسی مجازی به منابع محاسباتی را به شکل یک Instance در اختیار شما میگذارند. میتوانید از Instance ابری برای اجرای بارهای کاری محاسباتی سنگین مانند کانتینرها، پایگاههای داده، ریزسرویسها و ماشینهای مجازی استفاده کنید.
چرا نمونههای ابری مهم هستند؟
Instance ابری به توسعهدهندگان نرمافزار امکان میدهد تا فراتر از محدودیتهای فیزیکی سنتی مقیاسبندی کنند. برخلاف سرورهای فیزیکی، توسعهدهندگان هنگام اجرای بارهای کاری روی یک Instance ابری، نیازی به نگرانی درباره سختافزار زیربنایی ندارند. دو مزیت اصلی Instanceهای ابری عبارتند از:
مقیاسپذیری (Scalability)
توسعهدهندگان میتوانند منابع محاسباتی در یک Instance ابری را مطابق نیازهای بار کاری خود مقیاسبندی کنند. مثلاً توسعهدهندگان یک برنامه را روی یک Instance اجرا میکنند. با افزایش کاربران برنامه، ترافیک زیاد باعث کاهش سرعت پاسخدهی میشود. توسعهدهندگان میتوانند منابع ابری را بهصورت افقی با افزایش CPU، حافظه، فضای ذخیرهسازی و منابع شبکه برای همان Instance گسترش دهند.
تحمل خطا (Fault Tolerance)
سازمانها با استفاده از چندین Instance مشابه برای پشتیبانگیری، افزونگی ایجاد میکنند. این قابلیت بهخصوص برای مدیریت بارهای کاری سنگین از نظر حافظه، مانند پردازش داده، بسیار مفید است. برای مثال، اگر یک Instance ابری در اروپا از کار بیفتد، برنامه همچنان میتواند روی Instanceهای موجود در آمریکا و آسیا اجرا شود.
چه نوع بارهای کاری را میتوانید روی یک نمونه ابری اجرا کنید؟
- محاسباتی سنگین (Compute Intensive)
میتوانید بارهای کاری محاسباتی با کارایی بالا مانند تحلیل توزیعشده، الگوریتمهای یادگیری ماشین (ML)، پردازش دستهای (Batch Processing)، تبلیغنمایی آنلاین، رمزگذاری ویدئو، مدلسازی علمی و بازیهای چندنفره مقیاسپذیر را روی Instance اجرا کنید. - حافظهمحور (Memory Intensive)
Instanceها برای اجرای بارهای کاری سنگین از نظر حافظه مناسباند، مانند ورود دادههای بلادرنگ (Real-time Data Ingestion)، کشهای توزیعشده در حافظه، تحلیل دادههای عظیم (Big Data Analytics)، برنامههای سازمانی حافظهبر و پایگاههای داده با کارایی بالا. - گرافیکی سنگین (Graphics Intensive)
برنامههایی که رندر گرافیکی انجام میدهند به توان پردازشی و ذخیرهسازی بالایی نیاز دارند. میتوانید برنامههای واقعیت مجازی، رندر سهبعدی، انیمیشن، بینایی ماشین، پخش ویدئو و سایر بارهای کاری گرافیکی را روی Instance ابری اجرا کنید.
نمونههای ابری چگونه کار میکنند؟
یک Instance ابری زیرساخت محاسباتی فیزیکی را با استفاده از فناوری ماشین مجازی (Virtual Machine) انتزاع میکند. این کار مشابه داشتن یک سرور شخصی در فضای ابری است. در اصل شما سرور مجازی خود را در محیط رایانش ابری ایجاد و مدیریت میکنید. میتوانید این سرور ابری را برای برآوردهکردن نیازهای خود در زمینه حافظه، پردازش گرافیکی، CPU و سایر منابع پیکربندی کنید.
مراحل ایجاد یک Instance جدید عبارتند از:
-
استفاده از رابط کاربری تصویری یا فراخوانیهای API برای ایجاد برنامهریزیشده Instanceها
-
مشخصکردن منابع موردنیاز یا استفاده از انواع Instance از پیشتعریفشده توسط ارائهدهنده ابر
-
نصب سیستمعامل و برنامههای نرمافزاری موردنظر روی Instance
ارائهدهنده ابر معمولاً فقط بابت منابعی که واقعاً استفاده میکنید هزینه دریافت میکند. میتوانید هر تعداد Instance را ایجاد یا حذف کنید. مثلاً میتوانید از Amazon Machine Images (AMI) برای پیکربندی و راهاندازی Instanceها در AWS استفاده کنید.
چرخه عمر نمونه چیست؟
توسعهدهندگان برای راهاندازی، اجرای، مدیریت و توقف یک Instance مجموعهای از مراحل را طی میکنند:
Provisioning
Provisioning به معنی اختصاص منابع محاسباتی موردنیاز Instance است. وقتی یک Instance آمادهسازی شده راهاندازی میشود، وارد مرحله «در حال انتظار» (Pending) میشود.
Running
در این مرحله Instance روی ابر اجرا شده و فعال است. توسعهدهندگان میتوانند بارهای کاری مانند برنامههای کانتینریشده را روی Instanceهای در حال اجرا مستقر کنند. هزینه از لحظه شروع به کار Instance محاسبه میشود.
Stopping
توسعهدهندگان ممکن است برای رفع مشکلات بارهای کاری، یک Instance را متوقف کنند. وقتی Instance متوقف میشود، وارد مرحله «در حال توقف» (Stopping) میشود تا کاملاً متوقف شود. در این حالت میتوان تنظیمات آن را تغییر داد.
Terminated
وقتی یک Instance دیگر مورد استفاده نباشد، میتوان آن را خاموش کرد. با خاموشکردن، پلتفرم ابری آماده حذف Instance و پاککردن دادههای آن در Instance Store Volume میشود. این حافظه موقت روی همان سختافزاری قرار دارد که Instance اجرا میشود.
نمونه قابل پیشگیری (Preemptible Instance) چیست؟
یک نمونه قابل پیشگیری یک سرور مجازی است که از منابع محاسباتی اضافی و غیر رزرو شده استفاده میکند. منابع رایانهای اضافی و غیر رزرو شده به نمونه قابل پیشگیری اجازه میدهد پس از مدت زمان مشخص یا در صورت تخصیص مجدد منابع اختصاص یافته توسط زیرساخت ابری، خاتمه یابد. توسعهدهندگان از نمونههای قابل پیشگیری برای وظایف غیر بحرانی مانند پردازش دستهای، تجزیه و تحلیل دادهها یا آزمایش استفاده میکنند.
گروه نمونه (Instance Group) چیست؟
گروه نمونه مجموعهای از نمونههای متعدد است که پیکربندی یکسانی دارند. توسعهدهندگان از گروههای نمونه برای تنظیم آسان سیاستها و قوانین یکنواخت در چندین نمونه استفاده میکنند. تمام نمونهها در یک گروه نمونه به طور همزمان از یک چرخه عمر عبور میکنند.
تک نمونه در مقابل چند نمونه
تک نمونه یک تنظیم زیرساخت ابری را توصیف میکند که در آن فقط یک نمونه از منابع محاسباتی ایجاد و به کاربر اختصاص داده میشود. در همین حال، چند نمونه اصطلاحی است که برای بیش از یک نمونه یکسان که به صورت موازی با یکدیگر اجرا میشوند، استفاده میشود. در یک تنظیم چند نمونهای، هر نمونه منابع محاسباتی خاص خود را دارد.
تک مستاجر در مقابل چند مستاجر
تک مستاجر به این معنی است که زیرساخت ابری منحصر به یک کاربر است. این در یک سرور محلی رایج است، جایی که سازمان ممکن است چندین بار کاری را روی یک ماشین واحد اجرا کند. در همین حال، یک تنظیم چند مستاجر زیرساخت ابری را بین چندین کاربر به اشتراک میگذارد. این به آنها امکان میدهد بارهای کاری را در ابر با هزینه کمتر مقیاسبندی کنند.
ماشین مجازی چیست؟
ماشین مجازی رایانهای است که در محیط مجازی وجود دارد. ماشینهای مجازی از منابع محاسباتی موجود در رایانه فیزیکی استفاده میکنند. با این حال، آن منابع محاسباتی، مانند قدرت پردازش و حافظه، به شکل سختافزار فیزیکی نیستند. در عوض، آنها به عنوان کد در رایانه فیزیکی ارائه و مدیریت میشوند.
نمونه در مقابل ماشین مجازی
میتوانید چندین ماشین مجازی را روی یک رایانه واحد اجرا کنید، اما وقتی ماشینهای مجازی را در محیط ابری اجرا میکنید، به عنوان نمونه شناخته میشوند. اجرای ماشینهای مجازی در ابر به سازمانها امکان میدهد از مقرون به صرفه بودن اشتراکگذاری و مقیاسبندی منابع بهرهمند شوند.