Як ви читаєте з його сторінки Github :
Kubernetes - це система з відкритим кодом для управління контейнерними програмами на різних хостах, що забезпечує основні механізми розгортання, обслуговування та масштабування програм.
Kubernetes - це:
lean: lightweight, simple, accessible
portable: public, private, hybrid, multi cloud
extensible: modular, pluggable, hookable, composable
self-healing: auto-placement, auto-restart, auto-replication
Kubernetes ґрунтується на досвіді Google у масштабі масштабних виробничих навантажень у поєднанні з найкращими ідеями та практикою громади.
Для мене Kubernetes - це інструмент для оркестрування контейнерів від Google. Завдяки його дизайну ви можете реалізувати сумісність з будь-яким двигуном контейнерів, але я думаю, що зараз це обмежено Docker. У його архітектурі є кілька важливих понять:
Kubernetes працює з такими поняттями:
Кластери - це обчислювальні ресурси, над якими будуються ваші контейнери. Kubernetes може працювати будь-де! Інструкції з різних служб див. У Посібниках для початку роботи.
Струми - це колокована група контейнерів Docker із загальними обсягами. Це найменші розгорнуті підрозділи, які можна створювати, планувати та керувати за допомогою Kubernetes. Стручки можна створювати індивідуально, але рекомендується використовувати контролер реплікації, навіть якщо створюється один струк. Більше про стручки.
Контролери реплікації керують життєвим циклом стручків. Вони гарантують, що визначена кількість стручків працює в будь-який момент часу, створюючи або вбиваючи стручки за потребою. Більше про контролери реплікації.
Послуги надають єдине, стабільне ім’я та адресу для набору стручків. Вони виступають основними балансирами навантаження. Детальніше про послуги.
Мітки використовуються для організації та вибору груп об'єктів на основі ключа: пари значень. Більше про етикетки.
Отже, у вас є група машин, яка утворює кластер, де запускаються ваші контейнери. Йо також може визначити групу контейнерів, які надають послугу, аналогічно тому, як ви робите з іншими інструментами, такими як fig (тобто: webapp pod може бути сервером рейлів та базою даних postgres). У вас є також інші інструменти, щоб забезпечити кількість контейнерів / стручків служби, яка працює одночасно, сховище ключа-значення, свого роду вбудований балансир навантаження ...
Якщо ви знаєте щось про coreos, це дуже схоже рішення, але від Google. Algo Kubernetes має гарну інтеграцію з Google Cloud Engine.