跨持久卷共享AWS EFS接入点



我在AWS EFS上创建了一个接入点,现在我确实需要在Kubernetes中的多个持久卷之间共享它,这些卷最终将被多个名称空间使用。

是否有一种方法可以执行这些操作,或者我需要在相同的挂载点下创建一个具有大小分配的单独卷?

...share it across multiple Persistent Volumes in Kubernetes which would eventually be used by multiple namespaces

首先,安装EFS CSI驱动程序。

然后创建StorageClass和PersistentVolume,分别代表你创建的EFS卷和接入点:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: <name>
provisioner: efs.csi.aws.com
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: <name>
spec:
capacity:
storage: 1Gi
volumeMode: Filesystem
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
storageClassName: <name>  # <-- match this to the StorageClass name
csi:
driver: efs.csi.aws.com
volumeHandle: <fs-handle-id>::<access-point-id>

在您希望挂载访问点的每个名称空间中,创建一个persistentvolumecclaim:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: <name>
namespace: <namespace>
spec:
accessModes:
- ReadWriteMany
storageClassName: <name>  # <-- match this to the StorageClass name
resources:
requests:
storage: 1Gi  # <-- match this to the PersistentVolume

与往常一样,您可以在规格中指定使用它的音量:

...
volumes:
- name: <name>
persistentVolumeClaim:
claimName: <name>

最新更新