Sophon集群中安装nfs及创建pv/pvc

  其他常见问题
内容纲要

概要描述

由于Sophon notebook使用NFS(Network File System)存放代码文件、python安装包,Sophon api使用NFS保存模型文件。如需使用notebook或部署api,Sophon集群需先安装nfs服务。
本文主要介绍Sophon集群中宿主机上安装nfs服务的步骤,Sophon2.4.0开始引入容器化nfs服务,不需要在宿主机上安装nfs。

详细说明

对于TDH环境(Centos系统)

  1. 在集群上每个节点安装nfs-utils: yum install nfs-utils
    下面2-5的步骤只需要在一个节点就可以,不需要每个节点都做!请务必遵守!
  2. 首先下载 run_pvc.tar.gz 进入解压后的目录 run_pvc( 只需要在一个节点就可以,不需要每个节点都做!)
  3. bash run_pvc.sh (第一次提示时输入当前节点ip,只输入ip地址即可)
  4. 创建pv:kubectl create -f nfs-pv.yaml
    这一步执行完没有任何输出提示表示成功,执行kubectl get pv 返回nfs-pv 的相应结果,确认pv创建成功。成功后再进行后续操作。
  5. 创建pvc,必须确保步骤4成功后再执行:
    kubectl create -f nfs-pvc.yaml
    这一步执行完没有任何输出提示表示成功,执行kubectl get pvc 返回nfs-test 的相应结果,确认pvc创建成功。
    安装完成后,需要将nfs挂载到sophon中,参见:Sophon以pv/pvc的方式挂载nfs

对于TDC环境(Centos系统)

同上面TDH环境一样执行步骤1-3,只是创建pv/pvc有一点区别,TDC环境中的sophon服务所在的k8s的namespace(名称空间)不再是TDH环境中的default,
file
kubectl create -n sophon所在的namespace名字 -f nfs-pv.yaml
kubectl create -n sophon所在的namespace名字 -f nfs-pvc.yaml

对于TDH环境(Suse系统)

  1. 在系统中选择某个节点执行一下步骤:
    zypper install nfs-kernel-server
    rpm -qa | grep nfs // check 是否已经成功安装nfs-kernel-server和nfs-client的包
    systemctl enable rpcbind.service
    systemctl start rpcbind.service
    systemctl enable nfsserver.service
    systemctl start nfsserver.service
    df -lh // 找一个空余空间最多的磁盘, 进入到磁盘里面
    mkdir nfsDir
    chown nobody:nogroup nfsDir
    echo -e "/自己找的磁盘/nfsDir *(rw,async,no_root_squash,no_subtree_check,insecure)\n" >> /etc/exports 
    exportfs -a
    showmount -e localhost //查看是否已经将目录共享
  2. 创建nfs-pv.yaml, 如下, 需要做修改
    apiVersion: v1
    kind: PersistentVolume
    metadata:
    name: nfs-pv
    spec:
    capacity:
    storage: 150Gi
    accessModes:
    - ReadWriteMany
    persistentVolumeReclaimPolicy: Recycle
    nfs:
    path: /自己找的磁盘/nfsDir
    server:当前节点的ip
  3. 创建nfs-pvc.yaml
    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
    name: nfs-test
    spec:
    accessModes:
    - ReadWriteMany
    resources:
    requests:
      storage: 150Gi
  4. 创建pv和pvc
    kubectl create -f nfs-pv.yaml
    kubectl create -f nfs-pvc.yaml
    kubectl get pvc // 成功的化会看到nfs-test, 以及bound的字样
  5. 在集群中其他节点执行
    zypper install nfs-kernel-server (不需要再执行systemctl start nfsserver.service等操作)

这篇文章对您有帮助吗?

平均评分 1 / 5. 次数: 1

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。