构建
2024年11月13日
一、认识
PV
常见存储类型为:
-
HostPath
: 将节点上的目录挂载为存储卷(仅限单节点开发或测试)。 -
NFS
: 使用网络文件系统。 -
iSCSI
: 基于iSCSI
协议的块存储。 -
Cloud Storage
: 如AWS EBS
、Google Persistent Disk
、Azure Disk
等。
二、PV CSI
csi:
driver: io.kubernetes.storage.mock
volumeHandle: mock-pv
三、PV NFS
3.1 编写 PV 配置文件
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-demo
spec:
storageClassName: test-pv
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Recycle
nfs:
server: k8s-master
path: /mnt/nfs_share
3.2 创建 PV 存储资源
kubectl apply -f test-pv.yaml
3.3 验证 PV 存储状态
kubectl get pv pv-demo
四、PV iSCSI
五、PV HostPath
apiVersion: v1
kind: PersistentVolume
metadata:
name: example-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: fast-storage
hostPath:
path: /mnt/data
type: Directory
六、PV AWS Elastic Block Store
awsElasticBlockStore:
volumeID: vol-0abcd1234efgh5678
fsType: ext4
七、PV Google Cloud Persistent Disk
gcePersistentDisk:
pdName: my-disk
fsType: ext4