K8s的网络共享存储原理
姓名:唐钰杰 时间:2020年10月20日
背景
Kubernetes对于有状态的容器应用或者对数据需要持久化的应用,不仅需要将容器内的目录挂载到宿主机的目录或者emptyDir临时存储
卷,而且需要更加可靠的存储来保存应用产生的重要数据,以便容器应用在重建之后仍然可以使用之前的数据。
PV
定义
PV是对底层网络共享存储的抽象。PV由管理员创建和配置,它与共享存储的具体实现直接相关。PV作为存储资源,包括:
- 存储能力
- 访问模式
- 存储类型
- 回收策略
- 后端存储类型
K8s支持的PV类型
- NFS
- AWS
- Fc等
PV的关键配置参数
- 存储能力——storage=xx
- 存储卷模式——volumeMode=xxx
- 访问模式AccessMode
- ReadWriteOnce(只读,且供一个Node挂载)
- ReadOnlyMany(只读,可供多个node挂载)
- ReadWriteMany(读写,可供多个node挂载)
- 存储类别——StorageClassName
- 回收策略——persistentVolumeReclaimPolicy
- 挂载参数——mountOptions
- 节点亲和性——nodeAffinity(只适用于Local存储卷&