Sollte es an der Zeit sein, dass ich 15 statt 5 Container verwalten muss, gibt es einen Vorteil bei der Verwendung von Google Kubernetes?
Wenn Sie Container auf einem einzelnen Server mit dem Docker-Dämon und seiner Remote-API ausführen, klingt dies angemessen.
Wenn Sie Container auf mehr als einem Server ausführen müssen , sind Orchestrierungslösungen wie Kubernetes , Docker Swarm , Fleet , Mesos und Geard hilfreich.
Mein Hauptproblem hierbei ist, dass sich 'Dockerfiles' völlig von Pod-Konfigurationen unterscheiden.
Weil sie unterschiedliche Zwecke haben:
Dockerfile
Gibt an, wie ein Container-Image aus einem Quellenbaum erstellt wird
pod.yaml
Definiert, wie eine Reihe von nebeneinander angeordneten Containern (gemeinsam genutzter Netzwerk-Namespace und Volumes) auf einem der Knoten Ihres Clusters geplant werden soll (Image, Befehlszeile, Volumes, Port).
Sie können Pods als eine Möglichkeit sehen, eine Reihe von docker run --net=container:... -v ... -p ...
Befehlen deklarativ anzugeben .
Gibt es auch einen "offiziellen" oder zumindest "endgültigen" Workflow für die Migration von Docker-Containern zu "Pods", der nativen Einheit von Kubernetes.
In kubernetes / contrib gibt es ein kleines Tool namens podex , mit dem Sie aus Bildmetadaten, die in der öffentlichen Registrierung gespeichert sind, ein Pod-Manifest generieren können.
$ go get github.com/GoogleCloudPlatform/kubernetes/contrib/podex
$ podex google/nodejs-hello
id: nodejs-hello
kind: Pod
apiVersion: v1beta1
desiredState:
manifest:
version: v1beta2
containers:
- name: nodejs-hello
image: google/nodejs-hello
ports:
- name: nodejs-hello-tcp-8080
containerPort: 8080