我想将卷同时用于具有多个副本的部署。
我现在使用的是hostPath
音量类型,但是hostPath
仅可用于一个吊舱,而其他吊舱则不能同时访问该音量。
如何同时对卷使用所有副本?
部署文件:
apiVersion: apps/v1
kind: Deployment
metadata:
name: pps-wordpress
labels:
app: wordpress
spec:
replicas: 4
selector:
matchLabels:
app: wordpress
template:
metadata:
labels:
app: wordpress
spec:
containers:
- name: wordpress
image: meysam001/wordpress
volumeMounts:
- name: aws-storage
mountPath: /var/www/html
ports:
- containerPort: 80
volumes:
- name: aws-storage
hostPath:
path: /mnt/s3
答案 0 :(得分:0)
关于您的问题,我建议您使用Kubernetes基础的存储解决方案。 它称为PersistentVolumeClaim。此资源独立于Pods存在。数据 在Pod的所有生命周期中,此数量仍然存在。可以比较 NFS自动安装在操作系统的引导上。
您可能会发现这些多个安装选项对于满足以下方面的所有需求很有用 您的Pods生态系统:
ReadWriteOnce -单个节点处于读写模式的卷
ReadOnlyMany -多个节点处于只读模式的卷
ReadWriteMany -所有使用者的读写模式
要以ReadWriteMany模式创建30Gi卷,请按以下方式部署yaml:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: helloweb-disk
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 30Gi
请注意,此功能确实适用于云供应商,显然不适用于私有云 云。