Kubernetes 在cronjob和pod之间共享数据
现在我有一个cronjob可以下载数据,我想将它共享到另一个容器中,该容器在上传新数据时对数据进行处理。我想知道在没有任何外部服务的情况下,是否有办法在cronjob pod和我的主pod之间共享这些数据 我尝试创建一个持久卷和持久卷声明来共享数据,但是当cronjob下载数据时,即使卷已装入,它也不会出现在另一个pod中Kubernetes 在cronjob和pod之间共享数据,kubernetes,persistent-volumes,kubernetes-pvc,kubernetes-cronjob,Kubernetes,Persistent Volumes,Kubernetes Pvc,Kubernetes Cronjob,现在我有一个cronjob可以下载数据,我想将它共享到另一个容器中,该容器在上传新数据时对数据进行处理。我想知道在没有任何外部服务的情况下,是否有办法在cronjob pod和我的主pod之间共享这些数据 我尝试创建一个持久卷和持久卷声明来共享数据,但是当cronjob下载数据时,即使卷已装入,它也不会出现在另一个pod中 apiVersion: batch/v1beta1 kind: CronJob metadata: name: download spec: concurrency
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: download
spec:
concurrencyPolicy: Forbid
suspend: false
schedule: "* * * * *"
jobTemplate:
spec:
template:
spec:
volumes:
- name: downloaded-data-claim
persistentVolumeClaim:
claimName: downloaded-data-claim
#container and image is here where it downloads
然后吊舱安装音量
volumes:
- name: downloaded-data-claim
presistentVolumeClaim:
claimName: downloaded-data-claim
- name: output
emptyDir: {}
containers:
- name: "rand"
image: <filler>
imagePullPolicy: <filler>
volumeMounts:
- name: downloaded-data-claim
mountPath: /input
- name: output
mountPath: /output
resources:
卷:
-名称:下载的数据声明
预设卷目标:
claimName:下载的数据声明
-名称:输出
emptyDir:{}
容器:
-名称:“兰德”
图片:
政策:
体积数量:
-名称:下载的数据声明
装载路径:/input
-名称:输出
挂载路径:/output
资源:
确保在正确的名称空间中创建了CronJob,即pod和pv所在的位置。
如果您有权访问您希望存储数据的目录,请注意
事实上,我认为除了使用外部服务之外,没有其他可能性。
最有用的是nfs卷。但也有基于服务和外部nfs服务器的。
NFS代表网络文件系统–它是一个可以通过网络访问的共享文件系统。
NFS必须已经存在–Kubernetes不运行NFS,只需访问其中的pod即可。确保在正确的命名空间中创建了CronJob,即pod和pv所在的位置。 如果您有权访问您希望存储数据的目录,请注意 事实上,我认为除了使用外部服务之外,没有其他可能性。 最有用的是nfs卷。但也有基于服务和外部nfs服务器的。 NFS代表网络文件系统–它是一个可以通过网络访问的共享文件系统。 NFS必须已经存在–Kubernetes不运行NFS,只需访问其中的POD即可
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: downloaded-data-claim
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
volumeName: downloaded-data
volumes:
- name: downloaded-data-claim
presistentVolumeClaim:
claimName: downloaded-data-claim
- name: output
emptyDir: {}
containers:
- name: "rand"
image: <filler>
imagePullPolicy: <filler>
volumeMounts:
- name: downloaded-data-claim
mountPath: /input
- name: output
mountPath: /output
resources: