Ich habe folgende Kubernetes Job Konfiguration:
---
apiVersion: batch/v1
kind: Job
metadata:
name: dbload
creationTimestamp:
spec:
template:
metadata:
name: dbload
spec:
containers:
- name: dbload
image: sdvl3prox001:7001/pbench/tdload
command: ["/opt/pbench/loadTpcdsData.sh", "qas0063", "dbc", "dbc", "1"]
restartPolicy: Never
imagePullSecrets:
- name: pbenchregkey
status: {}
Wenn ich kubectl create -f dbload-deployment.yml --recordden Job erledige und ein Pod erstellt wird, wird der Docker-Container vollständig ausgeführt und ich erhalte den folgenden Status:
$ kubectl get job dbload
NAME DESIRED SUCCESSFUL AGE
dbload 1 1 1h
$ kubectl get pods -a
NAME READY STATUS RESTARTS AGE
dbload-0mk0d 0/1 Completed 0 1h
Dieser Job ist einmalig und ich muss ihn erneut ausführen können. Wenn ich versuche, es mit kubectl createBefehl erneut auszuführen, erhalte ich diesen Fehler
$ kubectl create -f dbload-deployment.yml --record
Error from server: error when creating "dbload-deployment.yml": jobs.batch "dbload" already exists
Natürlich kann ich es tun kubectl delete job dbloadund dann rennen, kubectl createaber ich frage mich, ob ich den Job, der bereits existiert, irgendwie wieder aufwecken kann?
kubectl replacelöscht den Job, bevor die Fehler beim Neuerstellen auftreten.