[英]How can I run cronjobs in kubernetes PHP pods?
I have Kubernetes replication controller which is running 2 pods of PHP applicaton. 我有运行2个PHP applicaton的Kubernetes复制控制器。 Now, I need to schedule 3 cronjobs which run some PHP scripts in those pods. 现在,我需要安排3个cronjobs,它们在这些pod中运行一些PHP脚本。 How can I achieve it? 我该如何实现? (The base image for the container is centos:7). (容器的基本映像是centos:7)。
As said in comments your best option is create Kubernetes CronJobs . 正如评论中所说,最好的选择是创建Kubernetes CronJobs 。
If you don't want to expose you PHP functions, you can always use a container that execute commands in your PHP pods. 如果您不想公开PHP函数,则始终可以使用在PHP容器中执行命令的容器。
Here is an example that create a cronjob. 这是创建cronjob的示例。 This cronjob runs kubectl exec for every pod with label app=my-php, calling ls in each pod. 这个cronjob为带有标签app = my-php的每个pod运行kubectl exec,并在每个pod中调用ls。
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: hello-cron
spec:
schedule: "*/1 * * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: kubectl
image: lachlanevenson/k8s-kubectl
command:
- /bin/sh
- -c
args:
- kubectl get pod -l app=my-php -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}' | xargs -i kubectl exec {} ls
restartPolicy: Never
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.