原创

K8S持久化存储-PV、PVC挂载NFS

一、部署NFS

# 安装nfs软件包
yum install nfs-utils
# 指定共享目录和访问权限
vi /etc/exports
# 内容
/data/nfs *(rw,sync)
# 启动服务并配置开机启动
systemctl start nfs-server
systemctl enable nfs-server
#重新加载exports文件并重启NFS服务
exportfs -r
systemctl restart nfs-server
  • rw:可读写权限。
  • sync:同步写入磁盘。

二、k8s创建PV、PVC

1、创建pv

# 编辑pv.yaml文件
vim pv.yaml

apiVersion: v1
kind: PersistentVolume
metadata:
  name: my-nfs-pv
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: 192.168.30.57
    path: /data/nfs
  • name:PV的名称。
  • capacity:指定存储容量。
  • accessModes:指定访问模式,如ReadWriteOnce表示单节点读写。
  • persistentVolumeReclaimPolicy:指定PV回收策略,如Retain表示保留。
  • storageClassName:如果你使用动态PV分配,则需要指定存储类。这里设为空字符串,表示静态PV分配。
  • nfs:如果你使用NFS作为存储卷,需要指定NFS服务器的路径和IP。
# 执行命令创建PV
kubectl create -f pv.yaml

2、创建PVC

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-nfs-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  • name:PVC的名称。
  • accessModes:指定访问模式,如ReadWriteOnce表示单节点读写。
  • resources.requests.storage:指定所需的存储容量。

执行命令创建PVC

kubectl create -f pvc.yaml

3、创建PVC授权给指定命名空间

创建yaml文件

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-nfs-pvc
  namespace: <your-namespace>
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  • namespace:namespace修改为指定的命名空间

执行创建pvc

kubectl apply -f pvc.yaml



正文到此结束
评论

登录后才能发表评论 登录/注册

0评论
  • 还没有评论,快来抢沙发吧!