ich einen Job pod mit 2 INIT Containern Bei pod Erstellung erstellt haben, abgeschlossen meine Arbeit erfolgreich, aber kein Zeichen der init ContainerKubernetes Jobs init Container
Für mich sollte die Aufgabe haben, warten auf den Abschluss der die 2 init Behälter vor
Mein Job Plan (aus Kubernetes Dokumentation) bei Start, wenn Sie möchten, das Problem
apiVersion: batch/v1
kind: Job
metadata:
name: pi
annotations:
pod.beta.kubernetes.io/init-containers: '[
{
"name": "init-myservice",
"image": "busybox",
"command": ["sh", "-c", "until nslookup myservice; do echo waiting for myservice; sleep 2; done;"]
},
{
"name": "init-mydb",
"image": "busybox",
"command": ["sh", "-c", "until nslookup mydb; do echo waiting for mydb; sleep 2; done;"]
}
]'
spec:
template:
metadata:
name: pi
spec:
containers:
- name: pi
image: perl
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
restartPolicy: Never
bei der Überprüfung meiner Arbeit pod
reproduzieren$ kubectl describe pod pi-v2dn9
Name: pi-v2dn9
Namespace: default
Security Policy: anyuid
Node: 192.168.111.4/192.168.111.4
Start Time: Thu, 19 Oct 2017 08:58:39 +0000
Labels: controller-uid=b3091c77-b4ab-11e7-a3ea-fa163ea1c70b
job-name=pi
Status: Succeeded
IP: 10.131.0.46
Controllers: Job/pi
Containers:
pi:
Container ID: docker://4bc5bb4c9fc65c1aa1999c3bdc09b01e54043dcdd464410edd0c9cad334c9c67
Image: perl
Image ID: docker-pullable://docker.io/[email protected]:80bd8136a0f3e2c7d202236fc5d8f1192dbfa9ec661ecdd5e96a446e9c7913a8
Port:
Command:
perl
-Mbignum=bpi
-wle
print bpi(2000)
State: Terminated
Reason: Completed
Exit Code: 0
Started: Thu, 19 Oct 2017 08:58:53 +0000
Finished: Thu, 19 Oct 2017 08:58:58 +0000
Ready: False
Restart Count: 0
Volume Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from default-token-fxdf1 (ro)
Environment Variables:
Conditions:
Type Status
Initialized True
Ready False
PodScheduled True
Volumes:
default-token-fxdf1:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-fxdf1
QoS Class: BestEffort
Tolerations:
Events:
FirstSeen LastSeen Count From SubObjectPath Type Reason Message
26s 26s 1 {default-scheduler } Normal Scheduled Successfully assigned pi-v2dn9 to 192.168.111.4
25s 25s 1 {kubelet 192.168.111.4} spec.containers{pi} Normal Pulling pulling image "perl"
12s 12s 1 {kubelet 192.168.111.4} spec.containers{pi} Normal Pulled Successfully pulled image "perl"
12s 12s 1 {kubelet 192.168.111.4} spec.containers{pi} Normal Created Created container with docker id 4bc5bb4c9fc6; Security:[seccomp=unconfined]
12s 12s 1 {kubelet 192.168.111.4} spec.containers{pi} Normal Started Started container with docker id 4bc5bb4c9fc6
KEIN ZEICHEN DER INIT CONTAINER !!!
Meine Umwelt: --- Kubernetes Version (Verwendung kubectl Version): Client-Version: version.Info {Dur: "1", Minor: "5", GitVersion: "v1.5.2 + 43a9be4", GitCommit : "43a9be4", GitTreeState: "clean", BuildDatum: "2017-04-20T15: 38: 11Z", GoVersion: "go1.7.4", Compiler: "gc", Plattform: "linux/amd64"} Server Version : version.Info {Major: "1", Minor: "5", GitVersion: "v1.5.2 + 43a9be4", GitCommit: "43a9be4", GitTreeState: "sauber", BuildDate: "2017-04-20T15: 38: 11Z“, GoVersion: "go1.7.4", Compiler: "gc", Plattform: "linux/amd64"}
ich bin in einem Cluster von Openstack arbeitet
OS ist Red Hat Enterprise Linux Server 7.3 (Maipo)
Vielen Dank im Voraus für jede Hilfe.
Hallo Vascop, Vielen Dank für Ihr Interesse. –
Leider habe ich das schon ausprobiert, aber ich befürchte, dass bei Kube 1.5 das Anmerkungsfeld im Metadatenteil des Jobs hinzugefügt werden muss. Ich habe das in der Dokumentation https://v1-5.docs.kubernetes.io/docs/concepts/workloads/pods/init-containers/ gesehen. Ich habe auch versucht, die API-Version zu ändern, aber Jobs benötigen den Stapel/v1 und es passt möglicherweise nicht mit Init-Containern. Nochmals vielen Dank für Ihre Hilfe. Grüße, PP –
Was von Vascop vorgeschlagen wird funktioniert zumindest für kubernetes v1.7 Die Einrückung innerhalb des Beispiels ist falsch, aber die vorgeschlagene Lösung ist in Ordnung. – dbenque