Обновление: 2019-03-11
Прежде всего, спасибо тем, кто голосовал за этот ответ на протяжении многих лет.
Имейте в виду, что этот вопрос был задан в августе 2013 года, когда Docker был еще совсем новой технологией. С тех пор: Kubernetes был запущен в июне 2014 года, Docker Swarm был интегрирован в движок Docker в феврале 2015 года, Amazon запустил свое контейнерное решение ECS в апреле 2015 года, а Google запустил GKE в августе 2015 года. Справедливо сказать, что ландшафт производственных контейнеров изменился. существенно изменилось.
Короткий ответ: для этого вам придется написать свою собственную логику.
Я ожидал, что такая функция появится в следующих проектах, построенных на основе Docker и предназначенных для поддержки приложений в производстве:
Обновление 1
Другой связанный проект, который я недавно обнаружил:
Обновление 2
Последний выпуск Openstack поддерживает управление контейнерами Docker:
Обновление 3
Система управления экземплярами Docker
И презентация о том, как использовать такие инструменты, как Packer , Docker и Serf, для создания неизменного шаблона инфраструктуры сервера.
Обновление 4
Хорошая статья о том, как соединить докер-контейнеры с помощью serf :
Обновление 5
Запустите Docker на Mesos с помощью фреймворка Marathon
Руководство разработчика Mesosphere Docker
Обновление 6
Запустите Docker на Tsuru, поскольку он поддерживает развертывание кластера докеров и отдельного планировщика.
Обновление 7
Оркестровка сред на основе Docker
маэстро
Обновление 8
decking.io
Обновление 9
Google kubernetes
Обновление 10
Redhat реорганизовали свой openshift PAAS для интеграции Docker
Обновление 11
Библиотека Docker NodeJS, которая обертывает командную строку Docker и управляет ею из файла json.
Обновление 12
Новый контейнерный сервис Amazon обеспечивает масштабирование в кластере.
Обновление 13
Строго говоря, Flocker не «масштабирует» приложения, но он предназначен для выполнения связанной функции по переносу контейнеров с отслеживанием состояния (работающих служб баз данных?) Между несколькими хостами докеров:
https://clusterhq.com/
Обновление 14
Проект по созданию переносимых шаблонов, описывающих приложения Docker:
http://panamax.io/
Обновление 15
Проект Docker теперь обращается к оркестровке изначально (см. Объявление )
Обновление 16
Spotify Helios
Смотрите также:
Обновление 17
В проекте Openstack появился новый проект «контейнер как услуга» под названием Magnum:
Многообещающий, позволяет легко настроить фреймворки оркестровки Docker, такие как Kubernetes и Docker swarm.
Обновление 18
Rancher - это быстро развивающийся проект
http://rancher.com/
Хороший интерфейс и упор на гибридную инфраструктуру Docker.
Обновление 19
Проект Lattice является ответвлением Cloud Foundry для управления кластерами контейнеров.
Обновление 20
Докер недавно купил Тутум:
https://www.docker.com/tutum
Обновление 21
Диспетчер пакетов для приложений, развернутых в Kubernetes .
http://helm.sh/
Обновление 22
Vamp - это автономная платформа с открытым исходным кодом для управления (микро) сервис-ориентированными архитектурами, которые полагаются на контейнерную технологию.
http://vamp.io/
Обновление 23
Распределенный, высокодоступный планировщик, ориентированный на центры обработки данных
От парней, которые дали нам Vagrant и другие мощные инструменты.
Обновление 24
Решение контейнерного хостинга для AWS, с открытым исходным кодом и на базе Kubernetes
https://supergiant.io/
Обновление 25
Контейнер на основе Apache Mesos, размещенный в Германии
https://sloppy.io/features/#features
Docker Inc. также предоставляет услугу размещения контейнеров под названием Docker Cloud.
https://cloud.docker.com/
Обновление 26
Jelastic - это размещенная служба PAAS, которая автоматически масштабирует контейнеры.
mesosphere/mesos-docker
Проект устарел и замененmesosphere/deimos
: github.com/mesosphere/deimosDeis автоматизирует масштабирование контейнеров Docker (среди прочего).
Deis (произносится как DAY-iss) - это PaaS с открытым исходным кодом, который упрощает развертывание и управление приложениями на ваших собственных серверах. Deis основывается на Docker и CoreOS, чтобы предоставить легкий PaaS с рабочим процессом, вдохновленным Heroku.
Вот рабочий процесс разработчика:
Deis автоматически развертывает ваши контейнеры Docker в кластере CoreOS и настраивает маршрутизаторы Nginx для маршрутизации запросов в исправные контейнеры Docker. Если хост умирает, контейнеры автоматически перезапускаются на другом хосте за секунды. Просто перейдите по URL-адресу прокси-сервера или используйте его,
deis open
чтобы попасть в свое приложение.Некоторые другие полезные команды:
Чтобы увидеть это в действии, посмотрите видео о терминале на http://deis.io/overview/ . Вы также можете узнать о концепциях Deis или сразу перейти к развертыванию собственного частного PaaS .
источник
Вы можете попробовать Цуру. Tsuru - это PaaS с открытым исходным кодом, вдохновленный Heroku, и некоторые продукты уже производятся на Globo.com (интернет-подразделение крупнейшей телекомпании Бразилии).
Он управляет всем потоком приложения, начиная с создания контейнера, развертывания, маршрутизации (с помощью hipache) со многими приятными функциями, такими как кластер докеров, масштабирование единиц, раздельное развертывание и т. Д.
Взгляните на нашу документацию ниже: http://docs.tsuru.io/
Вот наш пост, посвященный нашей среде: http://blog.tsuru.io/2014/04/04/running-tsuru-in-production-scaling-and-segregating-docker-containers/
источник
Взгляните на Rancher.com - он может управлять несколькими хостами Docker и многим другим.
источник
Разумным подходом к масштабированию Docker может быть:
Еще один проект Docker с открытым исходным кодом от Яндекса:
источник
Ребята из Openshift тоже создали проект. Вы можете найти дополнительную информацию здесь , попробовать тестовый контейнер и подробную информацию здесь . Единственная проблема в том, что на данный момент решение ориентировано на Redhat :)
источник
Хотя мы большие поклонники Deis (deis.io) и активно внедряем его, есть и другие решения для развертывания в стиле Heroku, такие как PaaS, в том числе:
Грузчик от людей из Wayfinder:
https://github.com/longshoreman/longshoreman
Декер из CloudCredo, используя CloudFoundry:
http://www.cloudcredo.com/decker-docker-cloud-foundry/
Что касается прямой оркестровки, проект Centurion с открытым исходным кодом NewRelic кажется весьма многообещающим:
https://github.com/newrelic/centurion
источник
Взгляните также на etcd и Consul .
источник
Panamax: Docker Management для людей. panamax.io
Рис: Быстрые изолированные среды разработки с использованием Docker. fig.sh
источник
Один из вариантов, не упомянутых в других сообщениях, - это Helios. Он создан Spotify и не пытается сделать слишком много.
https://github.com/spotify/helios
источник