小编san*_* jk的帖子

在每次安装 helm 时重新创建作业或删除旧作业

我已经创建了 Kubernetes 作业,并且作业已创建,但部署到 Kubernetes 集群时失败。当我尝试使用 Helm 重新部署它时,作业不会重新部署(删除旧作业并重新创建新作业,与微服务部署不同)。

如何在不手动删除 Kubernetes 的情况下实现此重新部署作业?我可以告诉它重新创建容器吗?

job.yaml包含:

apiVersion: batch/v1
kind: Job
metadata:
  name: "{{ .Release.Name }}-init-job"
  namespace: {{ .Release.Namespace }}
spec:
  template:
    metadata:
      annotations:
        linkerd.io/inject: disabled
        "helm.sh/hook-delete-policy": before-hook-creation
        "helm.sh/hook": pre-install,pre-upgrade,pre-delete
        "helm.sh/hook-weight": "-5"
    spec:
      serviceAccountName: {{ .Release.Name }}-init-service-account
      containers:
        - name: app-installer
          image: some image
          command:
            - /bin/bash
            - -c
            - echo Hello executing k8s init-container
          securityContext:
            readOnlyRootFilesystem: true
      restartPolicy: OnFailure
Run Code Online (Sandbox Code Playgroud)

作业没有被重新部署

kubectl get jobs -n namespace

NAME                    COMPLETIONS   DURATION   AGE
test-init-job   0/1           13h        13h
Run Code Online (Sandbox Code Playgroud)

kubectl …

kubernetes kubectl kubernetes-helm kubernetes-pod

8
推荐指数
1
解决办法
3483
查看次数