Система оркестрации Kubernetes работает на уровне логики, а не аппаратного обеспечения, по принципу «ведущий — ведомый». 1
Некоторые аспекты работы системы:
- Наблюдение за работой сервисов. 1 Kubernetes позволяет следить как за отдельными приложениями, так и за всем кластером сразу. 1 Все данные о работе сервисов система предоставляет разработчику в интуитивно понятном виде. 1
- Распределение нагрузки. 1 Kubernetes автоматически отслеживает нагрузку в контейнерах, и если в каком-то из них обнаруживается высокий трафик, то платформа распределяет его между другими контейнерами. 1
- Оркестрация хранилища. 1 С помощью Kubernetes разработчик может выбрать систему хранения: локальное хранилище, облако и т. д.. 1 Платформа автоматически создаст её и настроит под потребности проекта. 1
- Развёртывание и откаты. 1 Платформа позволяет развёртывать приложения в автоматическом и ручном режимах. 1 Есть вариант канареечного развёртывания, когда изменения, внесённые разработчиком, применяются только на некоторой части контейнеров. 1
- Самоконтроль. 1 Если контейнер отказывает или сбоит, Kubernetes автоматически перезапускает или останавливает его. 1 Освободившиеся ресурсы она распределяет на другие приложения. 1
- Безопасность и конфиденциальность. 1 Kubernetes может сохранять и контролировать конфиденциальные данные (пароли, ключи SSH, OAuth-токены), распределять права доступа к системе. 1
Основной принцип работы Kubernetes — декларативное управление. 3 Вместо того чтобы говорить системе, как что-то делать, пользователь просто описывает желаемое состояние. 3 Kubernetes сам решает, как достичь этого состояния, и постоянно проверяет, чтобы реальность соответствовала требованиям. 3