Можем ли мы запустить один контейнер на нескольких машинах (хостах)? - PullRequest
0 голосов
/ 03 апреля 2019

Я просто хочу знать ... Есть ли какое-либо средство, доступное сейчас в докере. Я уже ознакомился с некоторыми документациями в Docker, касающимися возможности нескольких хостов, такими как

  • Док рой
  • Docker service (с репликами)

А также я знаю о проблемах volume в режиме роя, и максимальный лимит ресурсов (ОЗУ и ЦП) для контейнера будет варьироваться и зависит от того, где (на каком компьютере) он назначен swarm manager. Итак, вот мой вопрос,

  • Как запустить один экземпляр контейнера на нескольких машинах (не в качестве службы)? (Это означает, что один контейнер может получить все ресурсы [RAM1 + RAM2 + ... + RAMn] на этих подключенных машинах)

  • есть ли способ достичь этого?

Мой вопрос может быть идиотским. Но мне любопытно узнать .. как добиться того же?

1 Ответ

1 голос
/ 03 апреля 2019

Ответ No.Технологии контейнерирования не могут обрабатывать вычислительные ресурсы, ресурсы сети и хранилища в кластере как одно целое.Они только управляют ими.

Docker и Co. на основе cgroup, пространств имен, многоуровневой FS, виртуальных сетей и т. Д. Все они подключены к конкретной машине + запущенные процессы и требуют дополнительного обслуживания для управления не только контейнерамина конкретной машине, но в кластере (например, Mesos, k8s или Swarm).

Вы можете проверить такие продукты, как Hadoop, Spark, Cassandra, инфраструктура Akka и другие реализации распределенных вычислений, чтобы увидеть примеры того, как управлятькластерные ресурсы как единое целое.

PS Всегда следует задумываться об увеличении сложности системы с ростом распределения компонентов.

...