پلتفرم Kubernetes چیست؟
3 تیر 1401 1401-07-28 11:35پلتفرم Kubernetes چیست؟
Kubernetes یک پلتفرم پرتابل، توسعهپذیر و متنباز برای مدیریت بارهای کاری و خدمات Containerizeشده است که هم خودکارسازی و هم پیکربندی Declarative را تسهیل میکند. این پلتفرم یک اکوسیستم بزرگ و در حال رشد سریع دارد. خدمات، پشتیبانی و ابزار Kubernetes بهطور گستردهای قابلدسترسی هستند.
نام Kubernetes از زبان یونانی آمده است و به معنی سکاندار یا پیشرو است. K8s بهعنوان یک مخفف از شمردن هشت حرف بین K و S ساخته شده است. Kubernetes چیست ؟ بیش از 15 سال از تجربهی گوگل در تولید بارهای کاری در مقیاس مناسب را با بهترین ایدهها و راهکارها از سوی جامعه ترکیب میکند.
دورهی پیادهسازی قدیمی: در ابتدا، سازمانها برنامههای کاربردی را روی سرورهای فیزیکی اجرا میکردند. هیچ راهی برای تعریف محدودیت منابع برای برنامههای کاربردی روی یک سرور فیزیکی وجود نداشت و همین امر موجب مشکلاتی در تخصیص منابع شد. مثلاً اگر چندین برنامه کاربردی روی یک سرور فیزیکی اجرا شوند، ممکن است Instanceهایی وجود داشته باشد.
که یک برنامه کاربردی اکثر منابع را اشغال کند و در نتیجه، عملکرد برنامههای کاربردی دیگر دچار مشکل شود. یکی از راهکار برای حل این مشکل این است که هر برنامه کاربردی روی یک سرور فیزیکی متفاوت اجرا گردد. اما این راهکار مقیاسپذیر نیست، زیرا به حد کافی از منابع استفاده نمیشود و نگهداری چند سرور فیزیکی برای سازمانها پرهزینه است.در ادامه این مقاله از تدریس24 همراه ما باشید.
دورهی پیادهسازی مجازی: مجازیسازی بهعنوان یک راهکار مطرح شد. این راهکار به کاربران اجازه میدهد که چندین ماشین مجازی یا VM را روی CPU یک سرور فیزیکی واحد اجرا کنند. مجازیسازی به برنامههای کاربردی این امکان را میدهد که بین VMها جداسازی شوند و سطحی از امنیت را فراهم میکند، زیرا اطلاعات یک برنامه کاربردی نمیتواند آزادانه مورد دسترسی برنامه کاربردی دیگری قرار بگیرد.
چرا باید از KUBERNETES استفاده شود؟
یکی از بزرگترین چالشها برای مشاغلی که از روشهای DevOps و قابلیتهای ابری استفاده میکنند، حفظ محیطهای مشترک و سازگار در طول چرخه حیات برنامه است.
کانتینرها در زمینه پکیجینگ تمام وابستگیهای ضروری در تصاویر گسسته، مشکل قابل حمل بودن برنامه را برطرف کردند. بنابراین سازگاری را در بین سیستم عاملهای ابر و معماریهای میکروسرویسها حفظ میکنند. Kubernetes استاندارد بالفعل برای نحوه تنظیم و استقرار کانتینرها است.
کاربران IT و تجاری میتوانند با بکارگیری کانتینرها و Kubernetes تلاش خود را به جای زیرساختها، بر توسعه برنامهها متمرکز کنند.
Kubernetes به کاربران اجازه میدهد، برای اجرای برنامه بهترین مکان را براساس نیازهای تجاری خود انتخاب کنند. مقیاس و میزان دسترسی به ابر عمومی، برای برخی از برنامهها عامل تعیین کنندهای خواهد بود. برای برنامههای دیگر عواملی مانند محل داده، امنیت یا سایر موارد مهم، نیازمند استقرار در محل هستند.
راه حلهای متداول میتوانند پیچیده باشند و تیمها را مجبور کنند با صرف وقت و هزینه، تمام قطعات را بهم بچسبانند. این موضوع با هدایت کاربران در جهت انتخاب بین ارائه دهندگان ابر داخلی و عمومی، میتواند تصمیمگیری و انتخاب را برای آنها آسانتر میکند. یک راه حل مدیریت کانتینر میتواند بر این چالشها غلبه کند.
Kubernetes امکانات زیادی ارائه میدهد که در زیر به تعدادی از آنها پرداخته ایم:
- اجرا و مدیریت کانتینرها
- خودکارسازی و مقیاسگذاری
- استقرار و گسترش برنامههای stateless و stateful
- ایجاد و پیکربندی ورودیها
- مدیریت سلامت برنامه، کشف سرویس، مقیاسگذاری خودکار و متعادلسازی بار

KUBERNETES چگونه کار میکند؟
در مرکز Kubernetes، خوشه قرار دارد. در واقع خوشه یک گروه از نودها (node) است که بارهای کانتینر را برنامه ریزی و اجرا میکنند وpods نامیده میشوند. هر خوشه شامل مسترنودها (Master Node) و نودهای کارگر (worker Node) است و تمام نودهای Kubernetes باید از طریق زمان اجرای کانتینر، پیکربندی شوند.
مستر نود یا نودها به عنوان مغز خوشه، همه فعالیتها را تعیین میکند. فعالیتهایی مانند:
- تعیین میکند کدام pod روی کدام worker node اجرا خواهد شد.
- حالت مطلوب برنامهها را حفظ میکند.
- برنامهها را مقیاسبندی میکند.
- به روزرسانیهای جدید را ارائه میدهد.
نودهای کارگر، برنامههای شما را اجرا میکنند و ممکن است در خوشه شما چندین نود وجود داشته باشد. برای افزایش ظرفیت خوشه خود میتوانید نودهای کارگر را مقیاسبندی کنید.
بارهای کاری یا برنامههایی که نودهای کارگر اجرا میکنند، pods نامیده میشوند. Pod، کانتینری است که مواردی مانند: نحوه اجرای کانتینرها، مرجع یا لوکیشن تصویر و گاهی اوقات حجم داده را در بر میگیرد. هر Pod دارای یک آدرس IP است. جزئیات مهم این چنینی، مدل Kubernetes را از راه حلهای سنتی مدیریت کانتینر متمایز میکند.
مسترنودها و نودهای کارگر میتوانند یک ماشین مجازی و یا یک رایانه فیزیکی باشند که در مرکز داده شما مشغول به کار است.
چه کسی به کوبرنتیز کمک می کند؟
کوبرنتیز در ابتدا توسط مهندسان گوگل طراحی و سپس توسعه داده شد. گوگل یکی از اولین مشارکت کنندگان در فناوری کانتینر لینوکس بود و به طور عمومی در مورد این که چگونه همه چیز در گوگل در کانتینرها اجرا می شود به بحث پرداخته است. (این فناوری در بستر پشتی سرویسهای ابری گوگل قرارمیگیرد). گوگل بیش از 2 میلیارد کانتینر در هفته مستقر میکند که همگی توسط پلتفرم داخلی خود Borg پشتیبانی میشوند. borg هم خود درابتدا از کوبرنتیز استفاده میکرد و بعد ها دست به توسعه آن زد، درسهایی که از توسعه کوبرنتیزتوسط borg آموختیم پیش زمینه و عنصر اصلی پیشرفت های فناوری کوبرنتیز در آینده گردید.
آیا میدانستید: عدد 7 در نماد کوبرنتیز به نام اصلی پروژه یعنی پروژه هفت از نه اشاره دارد. Red Hat یکی از اولین شرکتهایی بود که حتی قبل از راه اندازی کوبرنتیز به صورت رسمی با گوگل بر روی کوبرنتیز کار کرد و به دومین شرکت پیشرو در پروژه بالادستی کوبرنتیز تبدیل گردیده است. گوگل در سال ۲۰۱۵ پروژه کوبرنتیز را به بنیاد محاسبات بومی ابری تازه تاسیس CNCF اهدا کرد.
پست های مرتبط
VDI چیست و چه کاربردی دارد؟
مزایا و معایب اس ام اس مارکتینگ چیست؟
فریم ورک چیست؟
توپولوژی مش چیست؟
دلایل عدم اتصال دامنه جدید به هاست چیست؟
اعضا
-
Active ماه 3, 2 هفته قبل
-
Active ماه 7, 3 هفته قبل
-
Active ماه 7, 3 هفته قبل
-
Active ماه 9 قبل
-
Active ماه 11, 1 هفته قبل
بروز رسانی
سمیرا مردانی's بروزسانی مشخصات انجام شد 1 سال, ماه 4 قبل
محمد جواد محمدی's بروزسانی مشخصات انجام شد 1 سال, ماه 4 قبل
مریم نوری's بروزسانی مشخصات انجام شد 1 سال, ماه 4 قبل
محمد امین طاهری's بروزسانی مشخصات انجام شد 1 سال, ماه 4 قبل
نگار حجتی's بروزسانی مشخصات انجام شد 1 سال, ماه 4 قبل