Новий реліз Kubernetes v1.31 – що нового принесла Elli?
2024-09-09
Цього літа проєкт Kubernetes відсвяткував перше десятиліття. Нова декада почалася з чергового масштабного релізу – версія v1.31 отримала 45 покращень, 11 з яких перейшли у стабільну версію, 22 – мають статус «бета» та 12 – «альфа».
Черговий випуск отримав низку істотних покращень, спрямованих на підвищення безпеки, продуктивності та гнучкості платформи. Крім того, з'явився й новий маскот (персонаж-талісман) — рудий песик Elli, який, на думку розробників втілює в собі розум, завзятість, дружність та радісну самовідданість у роботі — усі ті якості, що притаманні спільноті Kubernetes.
Якщо ж говорити про технічний бік питання, то реліз вийшов плідним та всеобічним. Ми коротко розглянемо лише найістотніші зміни. Розібратися з усіма нюансами та деталями можна на офіційній сторінці проєкту.
Посилення безпеки: AppArmor, токени та контроль доступу
Для забезпечення кращого захисту контейнерів, у Kubernetes v1.31 реалізовано технологію AppArmor, яка отримала статус стабільної (stable) версії. AppArmor – це механізм безпеки Linux, що допомогає підтримувати високій рівень контролю над контейнерами та процесами. Тепер можна встановити профілі AppArmor безпосередньо в конфігурації контейнерів, що дозволяє більш точно контролювати їх доступ до системних ресурсів. Такий підхід скорочує поверхню атаки, потенційно доступну для зловмисників, а також запобігає несанкціонованому доступу до даних та знижує кількість можливих вразливостей.
Також покращено систему токенів облікових записів, які використовуються для надання доступу до API Kubernetes від імені сервісів. Тепер прив'язка здійснюється до вузлів (node), а не блоків (pods), як у попередніх версіях. Такий підхід дозволяє обмежити використання токена конкретним вузлом, підвищуючи безпеку всієї системи загалом. Також реалізовано механізм додаткового контролю безпеки, який перевіряє існування вузла під час використання токена. Це забезпечує більш точний контроль доступу та зменшує ризик компрометації токенів.
Ще одним нововведенням став механізм обмежень на анонімний доступ до API. Раніше доступ до певних ресурсів Kubernetes за допомогою анонімних запитів контролювалося не так суворо. Тепер адміністратори мають можливість задавати чіткі конфігурації для кінцевих точок, що запобігає невірним налаштуваням RBAC, які можуть призвести до отримання анонімним користувачам занадто широкого доступу до кластерів контейнерів. Ця функція суттєво підвищує безпеку на базовому рівні.
Окрім того, детальна авторизація на основі селекторів дозволяє створювати більш гнучкі правила авторизації, засновані на селекторах міток та полів, що своєю чергою забезпечує більш точний контроль доступу до ресурсів кластера та можливість створення складніших політик безпеки. Крім перерахованого, також було видалено ряд застарілих та потенційно небезпечних функцій (наприклад, підтримка SHA-1), а також покращено можливості аудиту, що дозволяє краще відстежувати дії користувачів та виявляти потенційні загрози.
Підвищення продуктивності та доповнення для AI/ML
Реліз Kubernetes 1.31 отримав низку нововведень, спрямованих на покращення масштабованості кластерів та підвищення продуктивності. Зокрема реалізовано нові механізми керування великими кластерами та об'ємними робочими навантаженнями. Ці зміни спрямовані на підвищення ефективності та надійності Kubernetes у великих та масштабних ІТ-середовищах. Щоб зробити платформу ще зручнішою у використанні, було також оптимізовано інтерфейс користувача, а також додано нові інструменти та плагіни для підвищення керованості та здійснення ефективного моніторингу кластерів.
Важливим напрямком розвитку проєкту Kubernetes є реалізація функцій, спрямованих на теперішні та майбутні сценарії використання штучного інтелекту (AI) й машинного навчання (ML). Однією з вимог для реалізації таких сценаріїв є підтримка об'єктів сумісних з Open Container Initiative (OCI), що виступають у якості джерела тому (volume). Задля цього в новому релізі додано функцію (поки що в режимі «альфа»), що дозволяє використовувати образ OCI як том в блоках (PODs).
У Kubernetes v1.31 також оновлено API та дизайн динамічного розподілу ресурсів (dynamic resource allocation, DRA). Основну увагу цього разу було приділено функціям автомасштабування кластера. Підтримка DRA в кублеті була оновлена таким чином, що тепер є розділення версій між кублетом й площиною управління.
Повний список оновлень та доповнень можна знайти у блозі спільноти. Версія Kubernetes v1.31 вже доступна для звантаження як на GitHub, так й на офіційній сторінці проєкту.
А ми нагадаємо, що De Novo активно розвиває напрямок інноваційних, функціональних та захищених хмарних сервісів для роботи з контейнерами. Ми пропонуємо сучасну платформу оркестрації кластерів Kubernetes промислового класу в колективній хмарі (KaaS), платформу Kubernetes за моделлю «як сервіс» на базі приватної хмари (HCI), а також низку рішень для DevOps.