Rancher 使用 NFS 存储

1. 安装 NFS Server

想要在 Rancher 中使用 NFS 存储类,首先需要选择一台服务器作为服务端(本例为 172.22.190.172),安装 NFS 服务。

# 下载 nfs 相关软件
yum -y install nfs-utils rpcbind
# 启动服务并加入开机自启
systemctl start nfs && systemctl enable nfs
systemctl start rpcbind && systemctl enable rpcbind
# 创建共享目录并赋予最大权限
mkdir -p /nfs && chmod -R 777 /nfs
# 多种权限配置策略,此处举例两种,第一种为限制 172.22.190 网段访问
echo "/nfs  172.22.190.*(rw,sync,no_root_squash)" >> /etc/exports
# 第二种为无限制访问
echo "/nfs  *(rw,sync,no_root_squash)" >> /etc/exports
# 配置完成后重新加载
exportfs -r
# 查看挂载点信息
showmount -e

2. 安装 nfs-client-provisioner

  1. 打开 Rancher 应用商店,找到 nfs-client-provisioner 点击进入编辑页面
    在这里插入图片描述

  2. 填写应答后点击启动即可

    # 应答内容
    nfs.server=172.22.190.172
    nfs.path=/nfs
    

    在这里插入图片描述
    等待片刻后即可安装完成。
    在这里插入图片描述

  3. 新建 mysql 负载验证 pvc
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    启动服务即可,如果顺利的话此时已正常启动。
    在这里插入图片描述
    在这里插入图片描述

  4. 如果启动报错,错误内容如下:

    0/4 nodes are available: 4 pod has unbound immediate PersistentVolumeClaims.
    I1009 04:21:09.817638   1 controller.go:987] provision "default/mysql-test-pvc" class "nfs-client": started
    E1009 04:21:09.822616   1 controller.go:1004] provision "default/mysql-test-pvc" class "nfs-client": unexpected error getting claim reference: selfLink was empty, can't make reference
    

    这个问题应该是由于 k8s 版本是 v1.20+ 导致的,解决方法很简单,往下看。

    编辑集群,通过 yaml 文件编辑
    在这里插入图片描述
    在这里插入图片描述

    在 kube-api 下面添加内容如下即可

    extra_args:
      feature-gates: RemoveSelfLink=false
    

    更新集群后,重新建立 pvc 即可成功。

    关于此问题的具体原因参考链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值