--- #新建一个名称空间
apiVersion: v1 #指定api组
kind: Namespace #指定api类型
metadata: #元数据
name: test-pv-pvc #定义名称空间名字
--- #新建一个PV
apiVersion: v1 #指定api组
kind: PersistentVolume #指定api类型
metadata: #元数据
name: test-pv
namespace: test-pv-pvc #指定名称空间
spec:
capacity: #容量配置
storage: 5Gi #PV的容量
volumeMode: Filesystem #存储类型
accessModes: #访问模式:ReadWriteMany、ReadWriteOnce、ReadOnlyMany
- ReadWriteMany #可被任意节点读写
persistentVolumeReclaimPolicy: Retain #回收策略
mountOptions: #加载配置
- hard
- nfsvers=4
nfs: #指定对nfs进行配置
path: /data/test #指定nfs路径
server: 10.0.0.4 #指定nfs地址
--- #新建一个pvc
apiVersion: v1 #指定api组
kind: PersistentVolumeClaim #指定api类型
metadata: #元数据
name: test-pvc #定义pvc名字
namespace: test-pv-pvc #指定名称空间
spec: #配置对象规约
accessModes: #访问模式
- ReadWriteMany #需要和pv保持一致
volumeMode: Filesystem #存储类型,需要和pv保持一致
resources: #申请空间
requests: #最少需求量
storage: 2.5Gi #指定空间大小
--- #启动一个pod,用来测试
apiVersion: v1 #指定api组
kind: Pod #指定api类型
metadata: #元数据
name: test-pv-pvc-pod #定义pod名字
namespace: test-pv-pvc #指定名称空间
spec: #指定对象规约
containers: #定义容器
- name: busybox #定义容器名字
image: busybox:1.36 #指定镜像和版本
command: ["/bin/sh","-c","sleep 3600"] #pod启动命令
volumeMounts: #配置数据卷挂载
- mountPath: /test-pv-pvc #指定挂载点
name: test-pv-pvc-volume #指定存储卷名称
volumes: #定义存储卷
- name: test-pv-pvc-volume #定义存储卷名称
persistentVolumeClaim: #关联pvc
claimName: test-pvc #要关联到哪个pvc