Загрузка…
Загрузка…
Kubernetes — это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнерными приложениями. Он был создан Google на основе их опыта запуска контейнеров в производство с использованием внутренней системы управления кластерами под названием Borg (иногда называемой Omega). С другой стороны, кластер Swarm состоит из Docker Engine, развернутого на нескольких узлах. Узлы менеджера выполняют оркестровку и управление кластером. Рабочие узлы получают и выполняют задачи Ниже приведен основной список различий между Docker Swarm и Kubernetes:
Приложения развертываются в виде сервисов (или «микросервисов») в кластере Swarm. Docker Compose — это инструмент, который в основном используется для развертывания приложения. Приложения развертываются в виде комбинации модулей, развертываний и сервисов (или «микросервисов»). Функция автомасштабирования недоступна ни в Docker Swarm (Classical), ни в Docker Swarm. Функция автоматического масштабирования доступна в K8s. Он использует простое целевое количество модулей, которое определяется декларативно с помощью развертываний. Доступен целевой показатель использования ЦП на модуль.
Docker Swarm поддерживает функции последовательных обновлений. Во время развертывания вы можете применять чередующиеся обновления к службам. Менеджер Swarm позволяет контролировать задержку между развертыванием сервиса на разных наборах узлов, тем самым обновляя только одну задачу за раз. В kubernetes контроллер развертывания поддерживает стратегии «последовательного обновления» и «пересоздания». В непрерывных обновлениях можно указать максимальное количество модулей, недоступных или максимальное количество запущенных во время процесса. В режиме Docker Swarm узел, присоединяющийся к кластеру Docker Swarm, создает оверлейную сеть для сервисов, охватывающую все хосты в Swarm, и мостовую сеть Docker только для хостов для контейнеров. По умолчанию узлы в кластере Swarm шифруют трафик управления и контроля оверлея между собой. Пользователи могут выбрать шифрование трафика данных контейнера при самостоятельном создании оверлейной сети. В K8s сетевая модель представляет собой плоскую сеть, позволяющую всем модулям взаимодействовать друг с другом. Сетевые политики определяют, как модули взаимодействуют друг с другом. Плоская сеть обычно реализуется как наложение.
Проверки работоспособности Docker Swarm ограничиваются услугами. Если контейнер, поддерживающий службу, не запускается (состояние «работает»), запускается новый контейнер. Пользователи могут встраивать функцию проверки работоспособности в свои образы Docker с помощью инструкции HEALTHCHECK. В K8s проверки работоспособности бывают двух видов: работоспособность (отвечает ли приложение) и готовность (приложение реагирует, но занято подготовкой и еще не может обслуживать) В готовом виде K8S предоставляет базовый механизм ведения журналов для получения совокупных журналов для набора контейнеров, составляющих модуль.
Ключевой вывод для интервью: в чем основная разница между Swarm и Kubernetes?
