Kubernetes 在GKE的cronjob中使用卷展栏重新启动命令
我想使用k8s cronjob定期重新启动部署 请检查yaml文件有什么问题 当我从本地命令行执行该命令时,部署会正常重新启动,但使用cronjob似乎无法重新启动。 e、 g$kubectl推出重新启动部署我的入口-我的应用 我的cronjob yaml文件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
正如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
---