目录
1.Job
Job用于负责批处理任务,即仅执行一次的任务(例如数据库迁移,批处理脚本等),它保证批处理任务的一个或多个Pod成功运行到结束(与Linux基础中的at命令相似)。
1、spec.template格式同 Pod;
2、RestartPolicy仅支持Never或OnFailure;
3、单个Pod 时,默认Pod成功运行后Job 即结束;
4、spec.completions标志Job 结束需要成功运行的Pod个数,默认为1; 默认为1;
5、spec.parallelism标志并行运行的Pod的个数;
6、spec.activeDeadlineSeconds标志失败Pod的重试最大时间,超过这个时间不会继续重试;
架构: 1.Job Controller负责根据配置创建Pod 2.Job Controller 跟踪Job状态,根据配置及时重试Pod或者继续创建 3.Job Controller 会自动添加label来跟踪对应的pod,并根据配置并行或者串行创建pod
所有的 job都是一个controller,它会watch这个APl Server,我们每次提交一个Job的yaml都会经过 api-server传到ETCD里面去,然后Job Controlle