job

199 阅读1分钟
apiVersion: batch/v1
kind: Job
metadata:
  name: busybox
spec:
  completions: 3 #有3个pod成功运行结束job,默认为1
  parallelism: 3 #并行运行多少个pod,默认为1
  template:
    metadata:
      name: busybox
    spec:
      containers:
      - name: busybox
        image: busybox
        command: ["echo", "hello"]
      restartPolicy: Never #仅支持 Never 或 OnFailure
  successfulJobsHistoryLimit: 保留成功job数量
  failedJobsHistoryLimit: 保留失败job数量
  backoffLimit:4 #容错次数,默认为6,次数达到后停止此job
  activeDeadlineSeconds: 30 #超时时间,达到后停止job,标记退出状态reason: DeadlineExceeded   

查看名字为pi的job产生的pod名称
kubectl get pods --selector=job-name=pi --output=jsonpath={.items..metadata.name}
kubectl logs pod名称 查看输出信息
kubectl label pod node01 app=node02 将名称为node01的pod app标签更改为node02
kubectl label pod node01 app- 删除标签
kubectl label node node01 disk=ssd 给node01节点添加一个disk=ssd的标签,创建pod时可以选择标签进行创建
kuebctl lable node node01 disk- 删除标签    

apply:编程式创建,可根据配置文件升级,创建deployment最优

create:命令时创建,已经创建后会报错,创建其他资源最优