Легко масштабировать системы и приложения
Если нагрузка увеличилась — Kubernetes автоматически масштабирует систему. Если уменьшилась — возвращает её к прежнему объёму. Так приложения всегда остаются доступными.
Разделять задачи между Dev и Ops
Если создавать образы контейнеров во время сборки, а не во время развёртывания, можно отделить приложения от инфраструктуры.
Разрабатывать приложения с микросервисной архитектурой
Kubernetes позволяет обновлять части приложения в отдельных контейнерах. Это облегчает тестирование, публикацию и откат к предыдущей версии.
Задавать условия для контейнеров
Например, такие: одно изолированное приложение собирает данные в интернете, второе обрабатывает их, а третье отправляет результат на почту.
Следить за непрерывной работой контейнеров
Если контейнер остановился, система попытается его перезапустить. Если не получится — создаст копию, а старый удалит. Если контейнер не справляется с нагрузкой — тоже сделает копию и перераспределит трафик.
Работать на любом устройстве и с любым ПО
Kubernetes одинаково разворачивает систему где угодно. А ещё он запускает только контейнеры, а не содержимое. Поэтому ему всё равно, какой язык программирования вы использовали.