背景
我正在使用TZCronJob在Kubernetes中运行带有时区的cronjobs。示例cronjob.yaml
可能如下所示(根据cronjobber docs)。请注意指定的时区,时间表和kind=TZCronJob
:
apiVersion: cronjobber.hidde.co/v1alpha1
kind: TZCronJob
metadata:
name: hello
spec:
schedule: "05 09 * * *"
timezone: "Europe/Amsterdam"
jobTemplate:
spec:
template:
spec:
containers:
- name: hello
image: busybox
args:
- /bin/sh
- -c
- date; echo "Hello,World!"
restartPolicy: OnFailure
通常,在Kubernetes中使用任何旧的cronjob,您都可以按照kubectl create cronjob docs运行kubectl create job test-job --from=tzcronjob/name_of_my_cronjob
。
错误
但是,当我尝试使用kubectl create job test-job --from=tzcronjob/name_of_my_cronjob
运行它(将命令从--from=tzcronjob/
切换)时,我得到:
error: from must be an existing cronjob: no kind "TZCronJob" is registered for version "cronjobber.hidde.co/v1alpha1" in scheme "k8s.io/kubernetes/pkg/kubectl/scheme/scheme.go:28"
当我尝试窥视https://kubernetes.io/kubernetes/pkg/kubectl/scheme/scheme.go:28时,我得到404(未找到)。
这几乎可行,但无济于事:
kubectl create job test-job-name-v1 --image=tzcronjob/name_of_image
如何从图表定义中创建一个新的一次性工作?