Update: 2019-03-11
Zunächst einmal vielen Dank für diejenigen, die diese Antwort im Laufe der Jahre positiv bewertet haben.
Bitte beachten Sie, dass diese Frage im August 2013 gestellt wurde, als Docker noch eine sehr neue Technologie war. Seitdem: Kubernetes wurde im Juni 2014 gestartet, Docker Swarm wurde im Februar 2015 in die Docker-Engine integriert, Amazon hat im April 2015 die Containerlösung ECS eingeführt und Google hat GKE eingeführt im August 2015. Die Produktionscontainerlandschaft ist fair wesentlich verändert.
Die kurze Antwort lautet, dass Sie dazu Ihre eigene Logik schreiben müssten.
Ich würde erwarten, dass diese Art von Funktion aus den folgenden Projekten hervorgeht, die auf Docker basieren und Anwendungen in der Produktion unterstützen:
Update 1
Ein weiteres verwandtes Projekt, das ich kürzlich entdeckt habe:
Update 2
Die neueste Version von Openstack bietet Unterstützung für die Verwaltung von Docker-Containern:
Update 3
System zur Verwaltung von Docker-Instanzen
Und eine Präsentation darüber, wie Tools wie Packer , Docker und Serf verwendet werden , um ein unveränderliches Serverinfrastrukturmuster bereitzustellen
Update 4
Ein ordentlicher Artikel darüber, wie Docker-Container mit Leibeigenen miteinander verbunden werden :
Update 5
Führen Sie Docker auf Mesos mit dem Marathon- Framework aus
Mesosphere Docker Developer Tutorial
Update 6
Führen Sie Docker auf Tsuru aus, da es die Bereitstellung von Docker-Clustern und getrennten Schedulern unterstützt
Update 7
Docker-basierte Umgebungen Orchestrierung
maestro-ng
Update 8
decking.io
Update 9
Google Kubernetes
Update 10
Redhat hat sein OpenShift-PAAS überarbeitet, um Docker zu integrieren
Update 11
Eine Docker NodeJS-Bibliothek, die die Docker-Befehlszeile umschließt und aus einer JSON-Datei verwaltet.
Update 12
Der neue Containerservice von Amazon ermöglicht die Skalierung im Cluster.
Update 13
Genau genommen "skaliert" Flocker keine Anwendungen, wurde jedoch entwickelt, um eine verwandte Funktion zu erfüllen, mit der Stateful Container (mit Datenbankdiensten?) Auf mehrere Docker-Hosts portierbar gemacht werden können:
https://clusterhq.com/
Update 14
Ein Projekt zum Erstellen tragbarer Vorlagen, die Docker-Anwendungen beschreiben:
http://panamax.io/
Update 15
Das Docker-Projekt befasst sich jetzt nativ mit Orchestrierung (siehe Ankündigung ).
Update 16
Spotify Helios
Siehe auch:
Update 17
Das Openstack-Projekt hat jetzt ein neues "Container as a Service" -Projekt namens Magnum:
Zeigt vielversprechend, ermöglicht die einfache Einrichtung von Docker-Orchestrierungs-Frameworks wie Kubernetes und Docker Swarm.
Update 18
Rancher ist ein Projekt, das schnell reift
http://rancher.com/
Schöne Benutzeroberfläche und starker Fokus auf Hyrbrid Docker-Infrastrukturen
Update 19
Das Lattice-Projekt ist ein Ableger von Cloud Foundry zur Verwaltung von Containerclustern.
Update 20
Docker hat kürzlich Tutum gekauft:
https://www.docker.com/tutum
Update 21
Paketmanager für Anwendungen, die auf Kubernetes bereitgestellt werden .
http://helm.sh/
Update 22
Vamp ist eine Open Source- und selbst gehostete Plattform für die Verwaltung von (Mikro-) Service-orientierten Architekturen, die auf Containertechnologie basieren.
http://vamp.io/
Update 23
Ein verteilter, hochverfügbarer, datencenterbewusster Scheduler
Von den Jungs, die uns Vagrant und andere mächtige Werkzeuge gegeben haben.
Update 24
Container-Hosting-Lösung für AWS, Open Source und basierend auf Kubernetes
https://supergiant.io/
Update 25
Container mit Sitz in Apache Mesos in Deutschland
https://sloppy.io/features/#features
Und Docker Inc. bietet auch einen Container-Hosting-Service namens Docker Cloud an
https://cloud.docker.com/
Update 26
Jelastic ist ein gehosteter PAAS-Dienst, der Container automatisch skaliert.
mesosphere/mesos-docker
Projekt wurde veraltet und ersetzt durchmesosphere/deimos
: github.com/mesosphere/deimosDeis automatisiert unter anderem die Skalierung von Docker-Containern.
Deis (ausgesprochen DAY-iss) ist ein Open-Source-PaaS, mit dem Anwendungen einfach auf Ihren eigenen Servern bereitgestellt und verwaltet werden können. Deis baut auf Docker und CoreOS auf, um ein leichtes PaaS mit einem von Heroku inspirierten Workflow bereitzustellen.
Hier ist der Entwickler-Workflow:
Deis stellt Ihre Docker-Container automatisch in einem CoreOS-Cluster bereit und konfiguriert die Nginx-Router so, dass Anforderungen an fehlerfreie Docker-Container weitergeleitet werden. Wenn ein Host stirbt, werden Container innerhalb von Sekunden automatisch auf einem anderen Host neu gestartet. Navigieren Sie einfach zur Proxy-URL oder verwenden Sie diese,
deis open
um auf Ihre App zuzugreifen.Einige andere nützliche Befehle:
Um dies in Aktion zu sehen, sehen Sie sich das Terminalvideo unter http://deis.io/overview/ an . Sie können sich auch über Deis-Konzepte informieren oder direkt mit der Bereitstellung Ihres eigenen privaten PaaS beginnen .
quelle
Sie können Tsuru versuchen. Tsuru ist ein Open Source PaaS, das von Heroku inspiriert wurde. Einige Produkte werden bereits bei Globo.com (Internet-Zweig des größten brasilianischen Rundfunkunternehmens) produziert.
Es verwaltet den gesamten Ablauf einer Anwendung, da die Erstellung, Bereitstellung, Weiterleitung (mit Hipache) von Containern viele nützliche Funktionen wie Docker-Cluster, Skalierung von Einheiten, getrennte Bereitstellung usw. umfasst.
Schauen Sie sich unsere Dokumentation unten an: http://docs.tsuru.io/
Hier unser Beitrag über unsere Umwelt: http://blog.tsuru.io/2014/04/04/running-tsuru-in-production-scaling-and-segregating-docker-containers/
quelle
Schauen Sie sich Rancher.com an - es kann mehrere Docker-Hosts verwalten und vieles mehr.
quelle
Ein vernünftiger Ansatz zur Skalierung von Docker könnte sein:
Ein weiteres Open-Source-Projekt für Docker von Yandex:
quelle
Openshift-Leute haben auch ein Projekt erstellt. Sie können mehr Informationen finden Sie hier , versuchen Testbehälter und detaillierte Informationen hier . Das einzige Problem ist, dass die Lösung vorerst Redhat-zentriert ist :)
quelle
Während wir große Fans von Deis (deis.io) sind und aktiv darauf zugreifen, gibt es andere Heroku-ähnliche Bereitstellungslösungen im PaaS-Stil, darunter:
Hafenarbeiter von den Wayfinder-Leuten:
https://github.com/longshoreman/longshoreman
Decker von den CloudCredo-Leuten mit CloudFoundry:
http://www.cloudcredo.com/decker-docker-cloud-foundry/
Das Open-Source-Centurion-Projekt von NewRelic scheint für die direkte Orchestrierung vielversprechend:
https://github.com/newrelic/centurion
quelle
Schauen Sie sich auch etcd und Consul an .
quelle
Panamax: Docker Management für Menschen. panamax.io
Abb: Schnelle, isolierte Entwicklungsumgebungen mit Docker. fig.sh
quelle
Eine Option, die in anderen Beiträgen nicht erwähnt wird, ist Helios. Es wird von spotify erstellt und versucht nicht, zu viel zu tun.
https://github.com/spotify/helios
quelle