计划作业在 kubernetes 中同步外部文件系统上的文件
Scheduled jobs to sync files on an external filesystem in kubernetes
有没有一种方法可以运行 定期将一些文件拉到已安装的共享卷上的计划作业?
我试过 cronjob 但显然它不支持外部文件系统
提前致谢。
CronJobs 应该能够像任何其他产生 Pods 的资源一样装载 PVC,您只需在 container
模板下添加一个 volumeMounts
部分,然后添加一个 [= template
.
下的 13=] 部分
类似于以下内容:
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: example-name
spec:
schedule: '0 * * * *'
jobTemplate:
spec:
completions: 1
template:
spec:
containers:
- name: example-container-name
image: your-docker-repo/your-docker-image:the-tag
volumeMounts:
- name: data
mountPath: /internal/path/to/mount/pvc
volumes:
- name: data
persistentVolumeClaim:
claimName: example-claim
这应该会在生成 Pod 时将 example-claim
PVC 安装到 CronJob 的 Pod。
基本上有两个部分.. 在每个容器下 volumeMounts 列出容器安装的卷,路径和一些配置。所有 volumeMounts 条目都应该在关联名称(作为规范的键)和声明或空目录的卷部分中定义一次。
至于创建 PVC,让我 link 你的文档 (https://kubernetes.io/docs/concepts/storage/persistent-volumes/)
你基本上想要做的是创建一个指向你安装的共享卷的持久卷(它是什么,nfs 存储?声明略有变化,具体取决于你想要安装的内容)然后在将绑定到 PV 的 CronJob 的同一命名空间中声明 (PVC)。
如果您不确定各种对象的正确缩进或放在哪里,请查看实用的 API 参考文档 (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#cronjob-v1beta1-batch)
有没有一种方法可以运行 定期将一些文件拉到已安装的共享卷上的计划作业?
我试过 cronjob 但显然它不支持外部文件系统
提前致谢。
CronJobs 应该能够像任何其他产生 Pods 的资源一样装载 PVC,您只需在 container
模板下添加一个 volumeMounts
部分,然后添加一个 [= template
.
类似于以下内容:
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: example-name
spec:
schedule: '0 * * * *'
jobTemplate:
spec:
completions: 1
template:
spec:
containers:
- name: example-container-name
image: your-docker-repo/your-docker-image:the-tag
volumeMounts:
- name: data
mountPath: /internal/path/to/mount/pvc
volumes:
- name: data
persistentVolumeClaim:
claimName: example-claim
这应该会在生成 Pod 时将 example-claim
PVC 安装到 CronJob 的 Pod。
基本上有两个部分.. 在每个容器下 volumeMounts 列出容器安装的卷,路径和一些配置。所有 volumeMounts 条目都应该在关联名称(作为规范的键)和声明或空目录的卷部分中定义一次。
至于创建 PVC,让我 link 你的文档 (https://kubernetes.io/docs/concepts/storage/persistent-volumes/)
你基本上想要做的是创建一个指向你安装的共享卷的持久卷(它是什么,nfs 存储?声明略有变化,具体取决于你想要安装的内容)然后在将绑定到 PV 的 CronJob 的同一命名空间中声明 (PVC)。
如果您不确定各种对象的正确缩进或放在哪里,请查看实用的 API 参考文档 (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#cronjob-v1beta1-batch)