当集群中的特定 pod 重新启动时,如何触发 kubernetes/openshift 作业重新启动?

时间:2021-01-25 17:04:07

标签: kubernetes

例如,我有一个在其中运行服务器的 pod,我的集群中有一项工作是在服务器部署上进行一​​些 yaml 修补。

有没有一种方法可以设置某种触发器或任何东西,以便在相应的部署更改发生时重新运行作业?

1 个答案:

答案 0 :(得分:1)

您可以像 initContainer 那样将您的作业规范添加到部署中:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: example
spec:
  replicas: 1
  selector:
    matchLabels:
      app: example
  template:
    metadata:
      labels:
        app: example
    spec:
      initContainers:
      - name: init
        image: centos:7
        command:
        - "bin/bash"
        - "-c"
        - "do something useful"
      containers:
      - name: nginx
        image: nginx

在这种情况下,每次推出部署时,initContainers 中定义的作业都会运行。