Kubernetes 在GKE的cronjob中使用卷展栏重新启动命令

Kubernetes 在GKE的cronjob中使用卷展栏重新启动命令,kubernetes,kubernetes-cronjob,Kubernetes,Kubernetes Cronjob,我想使用k8s cronjob定期重新启动部署 请检查yaml文件有什么问题 当我从本地命令行执行该命令时,部署会正常重新启动,但使用cronjob似乎无法重新启动。 e、 g$kubectl推出重新启动部署我的入口-我的应用 我的cronjob yaml文件 正如David建议的那样,运行kubectl的cron类似于执行命令 apiVersion: batch/v1beta1 kind: CronJob metadata: name: hello spec: schedule: &q

我想使用k8s cronjob定期重新启动部署

请检查yaml文件有什么问题

当我从本地命令行执行该命令时,部署会正常重新启动,但使用cronjob似乎无法重新启动。 e、 g$kubectl推出重新启动部署我的入口-我的应用

我的cronjob yaml文件
正如David建议的那样,运行kubectl的cron类似于执行命令

apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: hello
spec:
  schedule: "*/5 * * * *"
  jobTemplate:
    spec:
      template:
        spec:
          serviceAccountName: sa-jp-runner
          containers:
          - name: hello
            image: bitnami/kubectl:latest
            command:
            - /bin/sh
            - -c
            - kubectl rollout restart deployment my-ingress -n my-app
          restartPolicy: OnFailure
我还建议您检查角色服务帐户权限

参考示例:

kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: default
  name: kubectl-cron
rules:
- apiGroups:
  - extensions
  - apps
  resources:
  - deployments
  verbs:
  - 'patch'

---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: kubectl-cron
  namespace: default
subjects:
- kind: ServiceAccount
  name: sa-kubectl-cron
  namespace: default
roleRef:
  kind: Role
  name: kubectl-cron
  apiGroup: ""

---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: sa-kubectl-cron
  namespace: default

---

共享您的RBAC权限和服务帐户YAML config,因此get iead可能是权限的问题。您的意思可能是最后一行是三个单独的单词,它们应该在三个单独的行上。(如果在本地shell中运行“kubectl”卷展栏“重新启动”部署/我的入口-n我的应用程序“”,则会出现相同的错误。)需要同意前面的评论。请您添加
CronJob
Pod
)中的日志,以显示您得到的确切错误。谢谢。同样,在创建服务帐户并修改yaml文件以适合我的服务器后,您也提供了帮助,它可以按需要工作!!!!!
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: default
  name: kubectl-cron
rules:
- apiGroups:
  - extensions
  - apps
  resources:
  - deployments
  verbs:
  - 'patch'

---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: kubectl-cron
  namespace: default
subjects:
- kind: ServiceAccount
  name: sa-kubectl-cron
  namespace: default
roleRef:
  kind: Role
  name: kubectl-cron
  apiGroup: ""

---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: sa-kubectl-cron
  namespace: default

---