Разница между Minikube, Kubernetes, Docker Compose, Docker Swarm и т. Д. - PullRequest
0 голосов
/ 26 августа 2018

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

Я прочитал некоторую документацию, но, тем не менее, мое понимание не слишком ясно, поэтому любые выводы ..помогает понять?

  1. Где-то упоминается, Minikube используется для локального запуска Kubernetes.Так что, если мы хотим сохранить управление кластером в моем Raspberry Pi с четырьмя узлами, тогда Minikube не подходит?
  2. Поддерживает ли Minikube только систему с одним узлом?
  3. Docker Compose установленинструкции и файл YAML для настройки и запуска нескольких контейнеров Docker.Можем ли мы использовать это для запуска контейнеров разных хостов?Тогда для простой оркестровки, где мне нужно вызвать контейнер второго хоста, мне не нужно никакого управления кластером, верно?
  4. Какая связь между Docker Swarm и Kubernetes?Оба являются независимым кластерным управлением.Эффективно ли использовать Kubernetes на Raspberry Pi?Любая проблема, потому что мне сказали, что Kubernetes в одном узле занимает полное использование памяти и процессора?Это правда?
  5. Есть ли другое управление кластерами для Raspberry Pi?

Думаю, этот набор из 4-5 поможет мне лучше.

Ответы [ 5 ]

0 голосов
/ 29 августа 2018

Для Пи вы можете использовать Docker Swarm Mode на одном или нескольких Пи. Вы даже можете запустить эмуляцию ARM для тестирования в Docker для Windows / Mac, прежде чем пытаться заставить все это работать непосредственно на Pi. То же самое касается Kubernetes, поскольку теперь он встроен в Docker для Windows / Mac (мини-куб не требуется).

У Алекса Эллиса есть хороший блог на Pi и Docker , и этот пост тоже может помочь .

0 голосов
/ 26 августа 2018

Docker Compose Утилита для запуска нескольких контейнеров докера на одном хосте с использованием одного docker-compose up.Это облегчает запуск нескольких контейнеров одновременно, вместо того, чтобы выполнять команды mutliple docker run.

Docker swarm Собственный контейнерный оркестратор для Docker.Docker Swarm позволяет создавать кластер Docker-контейнеров, работающих на нескольких машинах.Он обеспечивает такие функции, как репликация, масштабирование, самовосстановление, то есть запуск нового контейнера, когда он умирает ...

Kubernetes Также оркестратор контейнера.Рой Кубернетес и Докер могут рассматриваться как альтернативы друг другу.Они оба пытаются обрабатывать управляющие контейнеры, начинающиеся в кластере

Minikube Для создания реального кластера kubernetes требуется наличие нескольких машин в помещении или на облачной платформе.Это не всегда удобно, если кто-то является новичком в Kubernetes и пытается учиться, играя с Kubernetes.Решение этого мини-куба позволяет вам запустить очень простой кластер Kubernetes, который состоит из одной виртуальной машины на вашем компьютере, которую вы можете использовать для игры с Kubernetes.

Minikube не предназначен для производственного или многоузлового кластера.,Существует много инструментов, которые можно использовать для создания многоузлового кластера Kubernetes, например kubeadm

0 голосов
/ 26 августа 2018

У меня сложилось впечатление, что вы в основном ищете подтверждение, и я с радостью помогу с этим, если смогу.

  1. Да, миникуб только локальный
  2. Да, миникубпредназначен для одного узла
  3. Docker-compose на самом деле не является системой оркестрации, как Swarm и Kubernetes.Он помогает запускать связанные контейнеры на одном хосте, но не используется для нескольких хостов.
  4. Kubernetes и Docker Swarm являются системами управления контейнером.Эти системы хорошо справляются с управлением масштабированием, но с ними связаны накладные расходы, поэтому они лучше подходят для многоузловых систем.
  5. Я не знаю диапазон вариантов оркестровки для Raspberry Pi, но естьпримеры Kubernetes, такие как Создайте свое собственное облако с Kubernetes и немного Raspberry Pi .
0 голосов
/ 26 августа 2018

Контейнеры - это будущее развертывания приложений. Контейнеры являются наименьшей единицей развертывания в докере. В Docker есть три компонента: docker engine для запуска одного контейнера, docker-compose для запуска мультиконтейнерного приложения на одном хосте и docker-swarm для запуска мультиконтейнерного приложения на хостах, которые также являются инструментом оркестровки.

В kubernetes наименьшая единица развертывания - Pod (которая состоит из нескольких контейнеров). Minikube - это кластер с одним узлом, где вы можете установить его локально, а также попробовать, протестировать и почувствовать функции kubernetes локально. Но вы не можете масштабировать это больше, чем на одну машину. Kubernetes - это инструмент оркестровки, такой как Docker Swarm, но более заметный, чем Docker Swarm, с точки зрения функций, масштабирования, отказоустойчивости и безопасности.

Вы можете провести анализ и подумать, какой инструмент подойдет для ваших требований. Каждый из них имеет свои плюсы и минусы, такие как Docker Swarm, хорош и прост в управлении небольшими кластерами, тогда как kubernetes намного лучше для больших раз. Существует еще один инструмент оркестровки Mesos , который также популярен и используется в кластерах с наибольшим размером.
Проверьте это, Выберите свое собственное приключение , но это всего лишь общая аналогия, и только для понимания, потому что все три технологии развиваются быстро.

0 голосов
/ 26 августа 2018

Предполагая, что ваша цель здесь - запустить набор контейнеров для нескольких различных узлов на основе Raspberry Pi:

  • Миникуб не совсем подходит. Это запускает одну виртуальную машину в Windows, MacOS или Linux и устанавливает в нее кластер Kubernetes. Обычно он используется разработчиками для быстрого запуска кластера на своих ноутбуках или настольных компьютерах в целях разработки и тестирования.

  • Docker Compose - система управления наборами связанных контейнеров. Например, если у вас есть веб-сервер и база данных, которыми вы хотите управлять вместе, вы можете поместить их в один файл Docker Compose.

  • Docker Swarm - это система для управления наборами контейнеров на нескольких хостах. По сути, это альтернатива Kubernetes. В нем меньше возможностей, чем в Kubernetes, но его гораздо проще настроить.

Если вам нужен действительно простой многоузловой кластерный контейнер, я бы сказал, что рой Docker - разумный выбор. Если вы явно хотите поэкспериментировать с Kubernetes, я бы сказал, что kubeadm - хороший вариант здесь. У Kubernetes в целом более высокие требования к ресурсам, чем у Docker Swarm, поэтому он может быть несколько менее подходящим для него, хотя я знаю, что люди успешно запускают кластеры Kubernetes на Raspberry Pis.

...