基于NFS服务来做PV:
安装NFS服务及rpcbind服务:
1.[root@master yaml]# yum install -y nfs-utils rpcbind #这里注意三台都要安装NFS服务。
2.[root@master yaml]# vim /etc/exports
文件中添加/nfsdata *(rw,sync,no_root_squash)
4.[root@master yaml]# mkdir /nfsdata
5.[root@master yaml]# systemctl start rpcbind
6.[root@master yaml]# systemctl start nfs-server.service
7.[root@master yaml]# showmount -e
Export list for master:
/nfsdata *
创建PV资源对象:
vim nfs-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
name: test
spec:
capacity:#给予的容量大小
storage: 1Gi
accessModes:#PV支持的访问模式
- ReadWriteOnce#这里表示只能以读写的方式挂载到单个节点
persistentVolumeReclaimPolicy: Recycle#pv的回收策略:表示自动清楚数据
storageClassName: nfs#定义的存储类名字
nfs:#这里要和上面定义的存储类名字一致
path: /nfsdata/pv1#指定NFS的目录
server: 192.168.1.1#指定NFS服务器的IP
执行nfs-pv.yaml文件:
**` kubectl apply -f nfs-pv.yaml ` **
persistentvolume/test created
**` kubectl get pv `**
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
test 1Gi RWO Recycle ** Available ** nfs 7s
**这里注意STATUS状态为Available才能够使用。**
pv支持的访问模式:
ReadWriteOnce:访问模式为只能以读写的方式挂载到单个节点
ReadWriteMany:访问模式为只能以读写的方式挂载到多个节点
ReadOnlyMany:访问模式为只能以只读的方式挂载到多个节点
PV存储空间的回收策略:
Recycle:自动清除数据。
Retain:需要管理员手动回收。
Delete:云存储专用。
PV和PVC相互的关联:通过的是storageClassName与accessModes
创建PVC:
vim nfs-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: test
spec:
accessModes:
- ReadWriteOnce#定义访问模式,这里必须与Pv定义一致
resources:
requests:
storage: 1Gi#请求容量的大小
storageClassName: nfs#存储类的名字,必须与pv定义的一致。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。