本文档提供NFS共享存储的标准化安装与验证流程,适用于基于Kubernetes环境的存储部署场景,帮助用户快速完成NFS共享存储的搭建与配置校验。

一、前置须知

环境要求

  • 基础环境:安装前必须确认Kubernetes集群状态正常(所有节点Ready,核心组件运行稳定);
  • 操作节点:所有安装及验证操作均在同一服务器(node01节点)上执行,请勿跨节点操作。

关键注意事项

由于NFS共享存储服务端IP为随机生成,而客户端需配置固定的服务端IP才能正常通信,因此安装后必须检查客户端配置,确保已正确匹配服务端实际IP,若未匹配需手动更新。

二、安装步骤

通过脚本一键安装NFS共享存储,操作如下:

  1. 登录node01节点,打开终端工具;

  2. 执行以下安装脚本,脚本将自动完成NFS服务端、客户端相关组件的部署:

     wget -qO- https://cloud-help.mandao.com/uploads/cloud/install/storage/0.11.0/install-nfs.sh | bash说明:脚本执行过程中请勿中断操作,等待终端输出完成提示即表示安装流程结束。

三、安装验证与配置修正

安装完成后需分两步验证配置有效性,若存在配置不匹配问题需及时修正。

第一步:查询NFS服务端IP

node01节点终端执行以下命令,查看NFS服务端的ClusterIP(即服务端实际IP):

[root@node01 ~] kubectl get svc -n nfs

预期输出示例(重点记录NAME为nfs-service对应的CLUSTER-IP):

NAME          TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
nfs-service   ClusterIP   10.143.193.47   <none>        2049/TCP,20048/TCP,111/TCP   94m

记录示例中的服务端IP:10.143.193.47(实际环境以查询结果为准)。

第二步:验证客户端IP配置

执行以下命令,查询NFS客户端配置中是否已正确匹配上述服务端IP:

[root@node01 1]# kubectl get deploy -n nfs nfs-client-provisioner -o yaml |grep -5 "服务端实际IP"

说明:将命令中的“服务端实际IP”替换为3.1步骤中查询到的CLUSTER-IP(如示例中的10.143.193.47)。

预期输出示例(需包含两处服务端IP配置,且均与查询结果一致):

...
      containers:
      - env:
        - name: PROVISIONER_NAME
          value: nfs-local-provisioner
        - name: NFS_SERVER
          value: 10.143.193.47
...
      volumes:
      - name: nfs-client-root
        nfs:
          path: /
          server: 10.143.193.47
...

配置修正(若验证失败)

若执行查询命令后,结果中显示的是server: nfs-service.kube-dns.nfs.svc.cluster.local(而非服务端实际IP),说明客户端配置未自动更新,需手动修改:

kubectl edit deployment nfs-client-provisioner -n nfs

执行命令后将进入编辑界面,找到以下两处配置项,将值修改为3.1步骤中查询到的服务端IP:

  • env 下 NFS_SERVER 对应的 value 值;
  • volumes 下 nfs 配置中 server 对应的 value 值。
    修改完成后,保存并退出编辑界面,系统将自动重启nfs-client-provisioner组件,使配置生效。

四、视频操作指引

若需直观查看安装与验证的完整操作过程,可观看以下操作视频:

视频操作

以上的步骤可以通过操作视频观看。

作者:admin  创建时间:2024-07-23 17:55
最后编辑:吴升斌  更新时间:2026-01-30 18:08