Kubernetes виповнилося 10 років! Етапи становлення та перспективи проєкту
2024-08-22
Цього літа проєкт Kubernetes відсвяткував ювілей. За минуле десятиліття платформа багато в чому змінила не лише сам підхід до розробки застосунків та роботи з контейнерами але й суттєво вплинула на загальний ландшафт світового ІТ-ринку.
Днем народження Kubernetes (або коротко — K8s) можна вважати 6 червня 2014 року — саме цього дня на GitHub було викладено перший коміт програмного забезпечення (повністю готова до використання версія з'явилася пізніше). Тоді, звичайно ж, ніхто не міг передбачити, що за десять років Kubernetes перетвориться на один із найбільших проєктів з відкритим вихідним кодом, до розвитку якого залучено сьогодні понад 88 000 осіб та 8 000 компаній із 44 країн.
Kubernetes це не просто інструмент для керування контейнерами, це платформа, що трансформує процес розробки, розгортання та керування застосунками. Його вплив на галузь ІТ важко переоцінити. Kubernetes робить програмне забезпечення більш гнучким, масштабованим та надійним, що дозволяє компаніям швидше адаптуватися до мінливих ринкових умов.
З чого все починалося та куди прийшло — етапи становлення K8s
Платформа Kubernetes призначена для автоматизації розгортання, масштабування та управління контейнеризованими застосунками. K8s дозволяє ефективно керувати тисячами контейнерів, розподіляти їх по безлічі серверів та підтримувати високу доступність застосунків. Зручність, надійність та функціональність забезпечили високу популярність платформи, її стрімкий розвиток та широку підтримку світової спільноти відкритого ПЗ. Щобільше, поява Kubernetes стала найважливішим фактором розвитку екосистеми Cloud Native, тому не дивно, що сьогодні K8s розвивається в рамках міжнародного проєкту Cloud Native Computing Foundation (CNCF), який є частиною Linux Foundation. До речі, De Novo має сертифікати CNCF Certified Kubernetes — Hosted та Certified Kubernetes — Hosted, що підтверджують високі компетенції компанії у галузі Kubernetes.
Взагалі-то, задуми, що лежать в основі K8s, виникли задовго до появи самої платформи – ідеї контейнерних обчислень розроблялися та впроваджувалися на базі ОС Linux компанією Google, починаючи ще з 2006 року (проєкти Borg та Omega). Але справжній прорив у цьому напрямку стався 2013-го — з появою зручного та функціонального відкритого ПЗ Docker для створення та використання контейнерів у ОС Linux. Швидке зростання популярності контейнерних технологій привело до логічного висновку про необхідність інструменту, який би забезпечив оркестрацію та управління кластерами контейнерів. На цьому тлі, восени 2013 року, невелика група ентузіастів розпочала роботу над проєктом, що пізніше став відомим як Kubernetes. Незабаром кількість учасників зросла завдяки тому, що до проєкту долучилися співробітники Google та Red Hat й, нарешті, 21 липня 2015 року з'явилася версія Kubernetes 1.0 — повністю готова до широкого використання. У тому ж році K8s було передано CNCF для подальшого розвитку. З того часу платформа активно розвивалася й з моменту першого релізу зазнала значних змін на краще.
Серед найбільш значних подій в історії K8s, сайт kubernetes.io — офіційний вебресурс, присвячений розвитку проєкту — виділяє такі етапи:
- Грудень 2016 — в Kubernetes 1.5 вперше з'явився OpenAPI. Також були представлені StatefulSets і PodDisruptionBudgets в бета-версії.
- Квітень 2017 – впровадження управління доступом на основі ролей (Role-Based Access Controls, RBAC).
- Червень 2017 — у версії 1.7 ThirdPartyResources (TPRs) замінені на CustomResourceDefinitions (CRDs).
- Грудень 2017 – у версії 1.9 повністю доступною (Generally Available, GA) стає функція API Workloads.
- Грудень 2018 — в Kubernetes 1.13 інтерфейс зберігання контейнерів (CSI) та інструмент для створення мінімально життєздатних кластерів kubeadm також стають GA, а CoreDNS став за замовчуванням DNS-сервером.
- Вересень 2019 — функції Custom Resource Definitions (користувацькі визначення ресурсів) стають GA в Kubernetes 1.16.
- Серпень 2020 — Kubernetes 1.19 збільшує вікно підтримки релізів до року.
- Квітень 2021 — періодичність випуску Kubernetes змінюється з чотирьох до трьох релізів на рік.
- Грудень 2022 — у версії 1.26 було значно перероблено API, що дозволило покращити підтримку різних робочих навантажень, насамперед — AI/ML-проєктів.
Сьогодні Kubernetes є фактичним стандартом у сфері оркестрації контейнерів з часткою ринку, яка, за різними даними становить близько 98%. Платформу використовують десятки або навіть сотні тисяч компаній у всьому світі, під управлінням K8s знаходяться мільйони кластерів різних масштабів.
На цей час навколо платформи сформувалася велика екосистема, що включає тисячі додаткових інструментів і сервісів, що робить K8s гнучким та адаптивним рішенням для різних сценаріїв використання. Kubernetes спростив і прискорив процеси розробки та розгортання застосунків, сприяючи розвитку сфери DevOps, а також став ключовим інструментом для управління додатками в мультихмарних середовищах, даючи змогу абстрагуватися від особливостей тих чи інших хмарних провайдерів, а можливість автоматичного масштабування залежно від навантаження дає змогу оптимізувати використання ІТ-ресурсів.
У майбутнє – з оптимізмом
Проєкт Kubernetes продовжує активно розвиватися, залучаючи нових учасників і граючи відігравати все більш важливу роль у стандартизації хмарних технологій. Зростають можливості платформи, підвищується надійність та безпека, охоплюються нові ніші. Серед очевидних тенденцій можна відзначити те, що K8s буде ще глибше інтегруватися з хмарними (в т.ч. мультихмарними) платформами в рамках концепції Cloud Native, допомагаючи створювати більш функціональні, зручні, надійні та керовані сервіси. Також Kubernetes відіграватиме ключову роль у створенні інфраструктури для навчання та розгортання моделей машинного навчання. Актуальними напрямками для K8s є розгортання застосунків на граничних пристроях (edge) та рішення для Інтернету речей (IoT). Крім того, Kubernetes буде відігравати все більш важливу роль у процесі дотримання безпеки застосунків та управління складними розподіленими системами.
Сьогодні K8s є наріжним каменем сучасної хмарної інфраструктури. Здатність автоматизувати розгортання, масштабування та керування контейнеризованими застосунками зробила цю платформу незамінним інструментом для розробників та операційних команд. Подальші перспективи Kubernetes мають дуже оптимістичний вигляд. Технологія продовжує розвиватися, відкриваючи недоступні раніше можливості для створення інноваційних продуктів й сервісів. Компанії, які інвестують в Kubernetes, вочевидь, отримають значну конкурентну перевагу, бо зможуть швидше адаптуватися до ринкових умов й впроваджувати нові технології.
Компанія De Novo активно розвиває напрямок інноваційних, функціональних та захищених хмарних сервісів для роботи з контейнерами. Сьогодні ми пропонуємо сучасну платформу оркестрації кластерів Kubernetes промислового класу в колективній хмарі (KaaS), платформу Kubernetes за моделлю «як сервіс» на базі приватної хмари (HCI) та низку рішень для DevOps.