模拟题目:
设置配置环境:
[candidate@node-1] $ kubectl config use-context k8s
Task
- 用执行命令'date; echo Hello from the Kubernetes cluster'的镜像 busybox ,创建一个名为 busybox-job 的 Job 。
- 修改此 Job ,确保在执行时间超过 3000 秒后,kubernetes 会自动终止该 Job。
- 如果容器失败,则尝试重启容器,但最多尝试重启 5 次。
- 检查此Job的日志
参考:
https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/job/#job-termination-and-cleanup
kubectl explain job.spec
解答:
切换环境
kubectl config use-context k8s
创建job模板
kubectl create job busybox-job --image busybox --dry-run=client -oyaml > 28.yaml
编辑
apiVersion: batch/v1
kind: Job
metadata:
creationTimestamp: null
name: busybox-job
spec:
backoffLimit: 5 #失败次数限制
activeDeadlineSeconds: 3000 #存活时间s
template:
metadata:
creationTimestamp: null
spec:
containers:
- image: busybox #镜像
name: busybox-job
command: # 命令模板
- /bin/sh
- -c
- date; echo Hello from the Kubernetes cluster #执行的命令
restartPolicy: OnFailure #题目要求的重启策略
应用
kubectl apply -f 28.yaml
检查
kubectl get jobs busybox-job
kubectl get pod
kubectl logs busybox-job-rljjz