Как Docker Swarm отличается от Kubernetes?

Я нахожу докер-рой, кубернеты очень похожи, а затем есть докер, который является компанией, а два выше - инструмент кластеризации докеров. Итак, что же все эти инструменты и различия между ними?

Ответы

Ответ 1

Есть много статей, которые объяснят различия. В двух словах:

  • Оба пытаются решить ту же проблему - контейнерную оркестровку на большом количестве хостов. По существу эти проблемы можно разбить так:
    • Планирование контейнеров через несколько хостов (с учетом использования ресурсов и т.д.)
    • Группирование контейнеров в логические единицы
    • Масштабирование контейнеров
    • Балансировка нагрузки/доступ к этим контейнерам после их развертывания
    • Прикрепление хранилища к контейнерам, независимо от того, будет ли оно общим или нет.
    • Связь/взаимодействие между контейнерами/сгруппированными контейнерами
    • Обнаружение сервисов в контейнерах (например, где есть служба X)

Как Кубернетес, так и Docker Swarm могут решить эти проблемы для вас, но они имеют разные соглашения об именах и идеи о том, как их решить. Различия относительно концептуальны. Есть статьи, которые сильно ухудшают это:

https://platform9.com/blog/compare-kubernetes-vs-docker-swarm/ https://torusware.com/blog/2016/09/hands-on-orchestration-docker-1-12-swarm-vs-kubernetes/ http://containerjournal.com/2016/04/07/kubernetes-vs-swarm-container-orchestrator-best/

По сути, они аналогичные продукты в одном и том же пространстве. Следует иметь в виду несколько предостережений:

  • Kubernetes развивается с помощью агностического мышления контейнера (в настоящее время он поддерживает Docker, rkt и имеет некоторую поддержку hyper, тогда как докерный рой - только докер)
  • Kubernetes является "облачным", так как он может работать одинаково в Azure, Google Container Engine и AWS - в настоящее время я не знаю, что это функция Docker Swarm, хотя вы можете настроить ее самостоятельно.
  • Kubernetes - продукт с открытым исходным кодом. Если вам нужна коммерческая поддержка, вам нужно обратиться к третьей стороне, чтобы ее получить. Docker обеспечивает корпоративную поддержку для Swarm.
  • Если вы знакомы с документооборотом, выполняющим докеры, Docker Swarm использует это для того, чтобы он был вам знаком и легче начать работу. Kubernetes требует определения обучения/обслуживания/развертывания, которые в то время как чистый yaml, являются корректировкой.

Ответ 2

Вот один на один карта роя докеров с Кубернетами.

Кредиты: Джанакирам MSV и смотреть полное видео здесь

enter image description here

Ответ 3

почему kubernetes до роя докер; а. Он может работать во многих узлах по сравнению с Docker Swarm (пример Pokemon Go - отличный пример для сохранения этого утверждения). б. Использование сервисов, модулей и развертываемых компонентов делает его более плавным и легко нестабильным, как я думаю, так как каждая развертываемая среда каждого сервиса может легко взаимодействовать. с. Поскольку в Кубернетесе мы также получаем журналы в лучшем виде, участие Kibana облегчает получение журналов. д. Автоматическое обнаружение нездоровых капсул и их повторный запуск делают его более чистым в использовании.

PS: Это медленный по сравнению с Docker Swarm, но он поддерживает во многих узлах и может работать на многих системах, по сравнению с Docker Swarm.