نسخه 1.30 کوبرنتیز جدیدترین نسخه منتشرشده آن است که با معرفی چندین ویژگی جدید همراه بوده است. در این مقاله قصد داریم تعدادی از مهمترین تغییرات این نسخه را بررسی کنیم.
تعدادی از این ویژگیهای جدید به حالت پایدار یا stable رسیدهاند. تعدادی هم هنوز در حالت بتا یا آلفا قرار دارند و ممکن است در نسخههای بعدی stable شوند.
در این مقاله فرض میشود شما با مفاهیم کوبرنتیز و آبجکتهای آن آشنایی خوبی دارید.
معرفی برخی از تغییرات و ویژگی های مهم
در ادامه به برخی از تغییرات و ویژگیهای جدید نسخه جدید کوبرنتیز اشاره میکنیم:
پشتیبانی از memory swap
استفاده از swap در لینوکس توسط کوبرنتیز دستخوش تغییرات بزرگی شده که پایداری بیشتری در مدیریت منابع نود ارائه کند. این ویژگی در مرحله بتا قرار دارد و به طور پیشفرض در این نسخه از کوبرنتیز فعال است. با معرفی این ویژگی میتوان به پادهای روی نود اجازه داد که از swap استفاده کنند و kubelet روی نودهایی که swap آنها فعال است اجرا میشود.
تنظیمات دسترسی ساختاریافته
این ویژگی هم در حالت بتا قرار دارد و بهطور پیشفرض فعال است. به کمک آن میتوانید زنجیرههای تعیین دسترسی بسازید تا امنیت بیشتری در کلاستر برقرار شود. این زنجیرهها به وسیله یک فایل تعریف میشوند و میتوانند چند وبهوک داشته باشند. هر عضو در این زنجیره تنظیمات خاص خود را دارد و به شما کمک میکند با ریزدانگی بالایی دسترسیها را تعیین کنید.
استفاده از CEL برای admission control
در کوبرنتیز برای اعمال محدودیتها و بررسی policyها از زبانی به نام CEL یا Common Expression Language استفاده میشود. این زبان سینتکسی شبیه C و Java دارد. در نسخهی 1.30 برای admission control میتوان از CEL استفاده کرد و این ویژگی در حالت پایدار قرار دارد. منظور از admission control این است که بعد از احراز هویت و تعیین دسترسیها و قبل از ذخیره شدن درخواستهایی که به API Server میآیند، میتوان آنها را بررسی و تایید کرد (validation) و/یا تغییرشان داد (mutation). حال با اضافه شدن CEL به کوبرنتیز این کار راحتتر از قبل انجام میشود.
مقیاسپذیری خودکار پاد بر اساس منابع کانتینر
ابتدا مقیاسپذیری خودکار در کوبرنتیز با توجه به مصرف پاد انجام میگرفت. اما گاهی پادها چند کانتینر دارند و نیاز است به مصرف آنها به شکل جدا نگاه کرد. از چندین نسخه قبل مقیاسپذیری خودکار بر اساس منابع کانتینر در کوبرنتیز معرفی شده است و در این نسخه به حالت پایدار درآمده است. توجه کنید که این ویژگی برای مقیاسپذیری افقی یا HPA کاربرد دارد.
پشتیبانی از نیماسپیس user
این ویژگی تنها در لینوکس مورد استفاده است و در حالت بتا قرار دارد. به کمک آن میتوان پادها را بهتر ایزوله کرد و از نظر امنیتی جلوی بسیاری از آسیبپذیریهای خطرناک را گرفت.
تخصیص منابع پویا
این ویژگی که ترجمهشده Dynamic Resource Allocation یا به اختصار DRA است، در نسخهی 1.26 بهعنوان ویژگی آلفا معرفی شد. به کمک آن میتوان منابعی که کوبرنتیز آنها را نمیشناسد را در پاد آورد و توسط ابزارهای third-party فرایند تخصیص و آزادسازی منابع را انجام داد. توسط آن میتوان هر نوع منابعی را برای پاد درخواست کرد. در نسخه 1.30 بهبودهای بزرگی در این ویژگی اعمال شده که بتوان به شکل ساختارمند ارتباط بین درایورهای third-party و اجزای اصلی کوبرنتیز را فراهم کرد
جمعبندی
در این مقاله با برخی ویژگیهای مهم که در کوبرنتیز 1.30 وجود دارند آشنا شدیم. در هر نسخه تغییرات زیادی اعمال میشود. با مراجعه به این لینک در گیتهاب میتوانید تمام تغییرات این نسخه از نسخه قبل را ببینید.