چرا کانتینر Kubernetes طرفداران زیادی در میان دولوپرها دارا است؟

چرا کانتینر Kubernetes طرفداران زیادی در میان دولوپرها دارا است؟

Kubernetes یک سیستم اپن‌سورس مدیریت Container (کانتینر) است که محبوبیت آن در چند سال اخیر بسیار افزایش یافته است. این سیستم‌ مدیریت کانتینر که محصول شرکت گوگل است، تاکنون توسط بزرگ‌ترین شرکت‌های تجاری مورد استفاده قرار گرفته و به این ترتیب به یکی از الگوهای موفقیت در دنیای اپن‌سورس تبدیل شده است؛ اما سؤال اینجا است که دلیل این همه موفقیت چیست و چه چیزی سبب شد تا Kubernetes تا این حد پرطرفدار شود؟

پیش از پرداختن به دلایل محبوبیت این پلتفرم مدیریت کانتینر در میان دولوپرها و شرکت‌های نرم‌افزاری، توصیه می‌کنیم دولوپرهایی که با مفهوم کانتینر در حوزهٔ توسعهٔ نرم‌افزار آشنایی ندارند به مقالهٔ Container (کانتینر) چیست و چه تفاوت‌هایی با Virtual Machine (ماشین مجازی) دارد؟ مراجعه نمایید که در این مقاله ماهیت کانتینر به خوبی شرح داده شده است.

ریشه‌ها و پیشینهٔ Kubernetes در پروژهٔ Borg گوگل
هم‌زمان با رشد روز افزون دنیای کامپیوتر، بیش از پیش شاهد گسترده‌تر شدن رایانش ابری و همچنین تبدیل اپلیکیشن‌های بزرگ و یکپارچه به میکروسرویس‌های اجایل ماژولار هستیم هستیم (برای آشنایی بیشتر با مفهوم میکروسرویس، به مقالهٔ میکروسرویس (Microservice) چیست؟ مراجعه نمایید). به طور کلی، میکروسرویس‌ها امکان مدیریت میلیون‌ها کاربر را فراهم آورده و به دولوپرها اجازه می‌دهند تا شخصاً قابلیت‌های کلیدی یک اپلیکیشن را تنظیم نمایند. در همین راستا، ظهور فناوری‌هایی مانند داکر -که راهی آسان، سازگار و پرتابل را برای ایجاد سریع میکروسرویس‌ها فراهم نموده‌اند- در رأس این تغییر الگوها قرار دارد.

همچنان که داکر در حال پیشرفت و فراگیرتر شدن بود، مدیریت میکروسرویس‌ها به یک نیاز ضروری تبدیل شد و در این زمان بود که گوگل -که خود به طور گسترده‌ای از زیرساخت‌های مبتنی بر کانتینر استفاده می‌نمود- تصمیم گرفت تا یکی از پروژه‌های درون‌سازمانی خود به نام Borg را اپن‌سورس نماید. با اپن‌سورس شدن Borg -که کلید اجرای سرویس‌های گوگل مانند Google Search و Gmail بود- اکنون همهٔ‌ شرکت‌ها می‌توانستند زیرساخت‌های خود را مانند یکی از برترین شرکت‌های نرم‌افزاری دنیا اجرا کنند.

برخورداری Kubernetes از یکی از بزرگ‌ترین جوامع اپن‌سورس
پس از انتشار اپن‌سورس این محصول، Kubernetes در رقابت با سایر سیستم‌های مدیریت کانتینر از جمله Docker Swarm و Apache Mesos قرار گرفت. یکی از دلایلی که موجب پیشی گرفتن Kubernetes نسبت به رقبا شد، وجود جامعهٔ بزرگ توسعه‌دهندگان و کاربران آن و در نتیجه پشتیبانی خوب و گسترده از این پلتفرم است. Kubernetes یکی از بزرگ‌ترین جوامع توسعه‌دهندگان اپن‌سورس را دارد و توسعه‌دهندگانی از هزاران سازمان و شرکت‌ مختلف در توسعهٔ آن مشارکت دارند و در حال حاضر نیز در یک بنیاد اپن‌سورس بزرگ اما در عین حال بی‌طرف تحت عنوان CNCF میزبانی می‌شود.

CNCF که خود زیرمجموعهٔ بنیاد لینوکس است اعضایی همچون مایکروسافت، گوگل، اوراکل و آمازون دارا است که همگی جزو غول‌های فناوری دنیا محسوب می‌گردند و تمایل این غول‌های فناوری حاکی از آن است که بخشی از استراتژی فناوری‌های کلود ایشان مرتبط با حضور در کامیونیتی‌هایی اینچنین است.

در حال حاضر، جامعهٔ تجاری مرتبط با Kubernetes نیز به خوبی گسترش یافته است. این جامعه، شرکت‌هایی را شامل می‌شود که با افزودن قابلیت‌های امنیتی، مدیریتی و همچنین پشتیبانی از این پلتفرم، نسخه‌های تجاری آن را تولید نموده و به فروش می‌رسانند (به طور مثال، شرکت‌‌هایی همچون CoreOS ،Red Hat و Platform 9 از جمله مواردی هستند که به شدت بر روی حفظ این پروژهٔ اپن‌سورس و تجاری نمودن آن سرمایه‌گذاری نموده‌اند).

بهره‌مندی از مزایای کلود هیبریدی
یکی دیگر از دلایل استقبال شرکت‌ها از Kubernetes این است که این محصول بر روی فضاهای کلود (ابری) قابل اجرا است و از آنجا که اکثر شرکت‌ها محصولات خود را معمولاً بر روی دیتاسنترهای خود و همچنین فضاهای کلود عمومی اجرا می‌کنند، امکان استفاده از تکنولوژی‌های Hybrid Cloud امروزه عملاً به یک نیاز تبدیل شده و این قابلیت Kubernetes سبب استقبال شرکت‌ها از این محصول شده است.

در واقع، شرکت‌ها می‌توانند Kubernetes را بر روی دیتاسنتر‌های خود دیپلوی نموده و هم‌زمان راهبردهای خود را در فضای کلود نیز دنبال کنند و حتی آن را به عنوان یک سرویس ارائه نمایند. همچنین از آنجا که Kubernetes زیرساخت‌های مورد نیاز برای اجرای اپلیکیشن‌ها را فراهم می‌کند، دولوپرها بدون نگرانی می‌توانند به طراحی اپلیکیشن پرداخته و سپس آن را در هر پلتفرمی که در نظر دارند دیپلوی نمایند و این موجب افزایش سرعت و تمرکز دولوپرها خواهد شد.

مثالی از دنیای واقعی (Pokemon Go)
یکی از دلایل اینکه میزان محبوبیت Kubernetes همچنان در حال افزایش است، استفادهٔ شرکت‌های بزرگ از آن در حل چالش‌های پیش‌ رویشان است (Pearson Education ،Capital One و Ancestry برخی از شرکت‌هایی هستند که از این تکنولوژی در محصولات خود بهره برده‌اند).

شاید بازی پرطرفدار Pokemon Go یکی از بهترین مواردی باشد که قدرت Kubernetes را به خوبی نشان می‌دهد. قبل از انتشار، پیش‌بینی شده بود که این بازی احتمالاً بسیار پرطرفدار خواهد بود و از این جهت برای جلوگیری از مشکلات ناشی از تعداد زیاد کاربران، تمهیداتی اندیشیده شده بود. با این حال، این بازی پس از انتشار مانند یک بمب صدا کرد و ترافیکی حدود ۵۰ برابر ترافیک پیش‌بینی شده را به دست آورد و این استفاده از Kubernetes بر روی فضای کلود گوگل بود که توانست Pokemon Go را در پشتیبانی از این حجم بسیار بالای ترافیک به موفقت برساند!

سخن پایانی
Kubernetes که امروزه به عنوان یک نرم‌افزار اپن‌سورس محبوب و بخشی از CNCF شناخته شده و توسط شرکت‌های تجاری بزرگ مورد استفاده قرار می‌گیرد، پیشینه‌ٔ ۱۵ ساله‌ای در اجرای سرویس‌های گوگل داشته و میراثی از پروژهٔ Borg شرکت گوگل را با خود به همراه دارد. این نرم‌افزار اپن‌سورس روز به روز در شرکت‌های بیشتری جای خود را باز می‌کند و به نظر می‌رسد که همچنان خواهد توانست جایگاه خود را به عنوان یکی از الگوهای موفقیت دنیای اپن‌سورس حفظ نماید.

آیا شما نیز پیش از این تجربه‌ای در استفاده از Kubernetes داشته‌اید؟ نظرات، دیدگاه‌ها و تجربیات خود را با ما و سایر کاربران سکان آکادمی به اشتراک بگذارید.

منبع


رائفه خلیلی