openshfit挂载NFS服务的两种方式

前言

NFS挂载到openshfit,可以分为两种挂载方式,一种是 执行pv 和pvc 挂载,一种是在ymal文件中添加配置挂载,挂载后必须要授权,才可以使用,

一、准备NFS服务器

一,这里的服务器使用的是 CentOS Linux release 7.9.2009 (Core)

查看服务器999AAA 
cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

二,安装NFS服务器

1.下载安装
yum install -y nfs-utils rpcbind
2.启动
systemctl start rpcbind
3.设置开机自启
systemctl enable rpcbind

二、挂载

1.修改openshfit ymal文件

打开openshfit 项目Deployments 找到需要修改的节点
Appliction->Deployments->XXXXX-Action->Edit Ymal
找到volumeMounts字段与volumes字段

volumeMounts:
            - mountPath: /tmp/configmap
              name: config-volume
            - mountPath: /tmp
              name: springlogs
            - mountPath: file/test-file #应用的路径
              name: test-file           #引用的名称
volumes:
        - configMap:
            defaultMode: 420
          name: demo-file
          name: config-volume
        - emptyDir: {}
          name: applogs
        - emptyDir: {}
          name: springlogs
        - name: test-file          #这里名称必须与上面的一致
          nfs:
            path: /data/file       #NFS服务器下新建的目录
            server: 192.168.152.1  #NFS服务器



2.读入数据

1.vim /etc/exports 添加以下

/data/file 10.21.01.01(rw,sync,no_root_squash)

2.然后执行命令:exportfs -rv


ymal文件挂载

以下就是ymal方式挂载,顺序不能搞错,先导入pv.ymal 后导入pvc.ymal
1.pv.yaml:

apiVersion: v1
kind: PersistentVolume
metadata:
annotations:
pv.kubernetes.io/bound-by-controller: "yes"
pv.kubernetes.io/provisioned-by: fuseim.pri/ifs
creationTimestamp: null
finalizers:
- kubernetes.io/pv-protection
name: 名字1(自己取)
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 100Gi
mountOptions:
- hard
- intr
nfs:
path: /opt/files         #nfs服务器共享目录
server: 192.168.152.1    #nfs服务器ip
persistentVolumeReclaimPolicy: Retain
storageClassName: nfs-storage
status: {}

2.pvc.yaml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
annotations:
pv.kubernetes.io/bind-completed: "yes"
pv.kubernetes.io/bound-by-controller: "yes"
volume.beta.kubernetes.io/storage-provisioner: fuseim.pri/ifs
creationTimestamp: null
finalizers:
- kubernetes.io/pvc-protection
name: 名字2(自己取)
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 100Gi
storageClassName: nfs-storage
volumeName: pc.yaml      #中的名字1,需要保持一致
status: {}

3,:依次import这两个ymal,顺序不可颠倒,因为后面的pvc.yaml依赖于pv.yaml文件。
文章希望能带给你你参考,希望大家多多点赞,有问题可私信,或者微信:45779131

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值