Kubernetes یک پلتفرم متن باز (Open Source) می باشد که در پیاده سازی آن از زبان برنامه نویسی GO استفاده شده و در سال 2014 این پلتفرم با حمایت شرکت گوگل (Google) در اختیار عموم قرار گرفته است . گوگل در 21 July 2015 با انتشار
Kubernetes 1.0 آغاز همکاری خود را بنیاد لینوکس (Linux Foundation) برای ایجاد پروژه Cloud Native Computing Foundation یا همان CNCF شروع کرد. هدف از ایجاد و پیاده سازی از Kubernetes اجرا ، مدیریت کانتیرنر (Container) ها برروی کلاستر (Cluster) هایی متشکل گروهی از سرورها در یک یا چند مرکز داده (Data Center) بوده است . این پلتفرم از یکی پروژه های درون سازمانی گوگل به نام بورگ (Borg) ایده گرفته است . در حال حاضر کوبرنتیس(Kubernetes) با حمایت،پشتیبانی و توسعه این پلتفرم توسط شرکت هایی همچون Red Hat ،CoreOS ،Ubuntu، Platform 9 و غیره … باعث گشترش جامعه تجاری این پلتفرم شده اند .
نحوه کار کوبرنتیز Kubernetes
سایر سرور ها به عنوان Worker Node در کلاستر شناخته می شوند، Worker Node ها مسئول انجام بار کاری هستند و آن ها را با منابع محلی و خارجی اجرا می کندد . برای رعایت ایزولهسازی، انعطاف و مدیریت، Kubernetes برنامه و سرویسها را در Container اجرا میکند. معمولن از داکر برای این کار استفاده میشود. هر Node، از Masterدستورهای ایجاد و حذف Container را دریافت و دستورات لازم شبکه را برای جابجایی ترافیک مربوط به آن تنظیم میکند.
کاربران از طریق API توسط Master با کلاستر در ارتباط می باشند و اجرا، پیاده سازی و نحوه مدیریت برنامه یا سرویس را در قالب فایل YAML به کلاستر ارسال می کنند و Master به وسیله این فایل YAML که نحوه ایجاد و مدیریت با توجه به نیازمندی های کاربر که توسط این فایل مشخص شده را برروی زیرساخت اجرا میکند .
در پلتفرم Kubernetes سازوکار پایه برای پیاده سازی برنامه ها کانتینر(Container) ها می باشند، اما برای مقیاس پذیری، مدیریت و پایداری برنامه و سرویس های درحال اجرا که به جای تعامل مستقیم با کانتینر(Container)ها بهتر است عناصری که Kubernetes ارائه می دهد استفاده شود، که یکی از مهمترین آن Pod است.
برای اجرا و پیاده سازی یک سرویس یا برنامه در کوبرنتیز یک یا چندین کانتینر در کنار هم که بعنوان یک برنامه یا سرویس کنترل می شوند را داخل یک Pod قرار می گیرند. Pod ها به عنوان یک واحد مستقل مدیریت می شوند و محیط، فضای IP خود را با یکدیگر به اشتراک میگذارند .
همچنین Replication Controller بهشکل خودکار اطمینان حاصل میکند که تعداد Podهای پیاده شده با آنچه در فایل پیکربندی مشخص شده است، همخوانی داشته باشد.
یکی از مواردی که کاربر بهشکل مستقیم میتواند با کوبرنتیز برای اجرای برنامه ایجاد و مدیریت کند Deployment نام دارد که از Pod و Replication Controller استفاده کرده ولی سختی کار با آنها را از کاربر پنهان می کند.
تیم تخصصی داناک آماده ارائه هرگونه مشاوره تخصصی رایگان به مشتریان گرامی میباشد
کلیه حقوق مادی و معنوی این سایت متعلق به شرکت توسعه ارتباطات داناک می باشد.
نیاز به مشاوره دارید؟ واحد پشتیبانی داناک آماده پاسخگویی به سوالات شماست!