چرایی استفاده از سرویس کوبرنتیز (Kubernetes)
کانتینرها راهحل خوبی برای اجرای برنامهها هستند. اما شما نیاز دارید تا در یک محیط پروداکشن، کانتینرهایی که برنامه ها را اجرا می کنند را مدیریت کنید و اطمینان حاصل کنید که هیچ خرابی وجود ندارد. برای مثال اگر یک کانتینر پایین بیاید یک کانتینر دیگر باید ایجاد و راهاندازی شود. پس به نظر میرسد که اگر این رفتار توسط یک سیستم مدیریت شود فرآیند سادهتر و سادهتر خواهد بود. اینجا همان جاییست که کوبرنتیز به کمک میآید. کوبرنتیز فریمورکی را برای اجرای انعطافپذیر سیستمهای توزیعشده در اختیار شما قرار میدهد. امکان مقیاسپذیری را برای اپلیکیشنهایتان فراهم میکند و همچنین از خرابی و شکست در اجرای اپلیکیشنها جلوگیری میکند. کوبرنتیز درواقع فرآیند استقرار را برای شما مدیریت میکند.
کوبرنتیز امکانات زیاد و متنوعی را در اختیار شما قرار میدهد که در ادامه به برخی از آنها خواهیم پرداخت:
- اگر ترافیک ورودی به یک کانتینر زیاد باشد، کوبرنتیز میتواند بار را متعادل کند (load balance) و ترافیک شبکه را توزیع کند بنابراین deployment پایدار خواهد بود.
- قابلیت سازماندهی استوریج کوبرنتیز، این امکان را برای شما فراهم میکند تا بهطور خودکار سیستم ذخیرهسازی (storage) که انتخاب میکنید را راهاندازی کنید.
- شما میتوانید کوبرنتیز را تنظیم کنید تا بهصورت خودکار کانتینر جدیدی را برای deployment ایجاد کند، کانتینرهای موجود را حذف کند و تمام منابع آنها را در کانتینر جدید به کار ببرید.
- میتوانید با استفاده از کوبرنتیز تعیین کنید که هر کانتینر به چه میزان CPU و حافظه (RAM) نیاز دارد. کوبرنتیز میتواند کانتینرها را روی نودها سازگار کند تا بهترین بهترین استفاده از منابع را داشته باشند.
- کوبرنتیز کانتینرها را ریاستارت میکند، کانتینرها را جایگزین میکند و کانتینرهایی را که به health check تعریفشده توسط کاربر پاسخ نمیدهند را از بین میبرد.
- کوبرنتیز به شما این امکان را میدهد تا اطلاعات حساس مانند پسوردها، توکنهای OAuth و کلیدهای SSH را ذخیره و مدیریت کنید.