使用Docker的NFS-Ganesha镜像搭建nfs服务器的详细过程

目录
  • 一、nfs-ganesha的简介
  • 二、nfs-ganesha的配置
  • 三、nfs-ganesha容器的使用
    • 3.1 nfs-ganesha的服务端搭建
    • 3.2 nfs-ganesha的客户端使用
  • 四、参考资料

    nfs-ganesha3镜像的说明及使用

    一、nfs-ganesha的简介

    ​ nfs-ganesha是一个用户态的支持nfs协议(nfsv3/nfsv4,nfsv4.1)的文件服务器,它为unix和类unix的操作系统提供了fuse(filesystem in userspace)兼容的接口fsal(file system abstraction layer) 。这样用户通过nfs client可以访问自己的存储设备。nfs-ganesha 服务允许用户通过fsal在用户态访问数据而不需要和内核频繁的交互,大大的减少了数据读取的响应时间。

    二、nfs-ganesha的配置

    · ganesha_logfile: log file location

    · ganesha_configfile: location of ganesha.conf

    · ganesha_options: command line options to pass to ganesha

    · ganesha_epoch: ganesha epoch value

    · ganesha_export_id: ganesha unique export id

    · ganesha_export: export location

    · ganesha_access: export access acl list

    · ganesha_root_access: export root access acl list

    · ganesha_nfs_protocols: nfs protocols to support

    · ganesha_transports: nfs transports to support

    · ganesha_bootstrap_config: write fresh config file on start

    · startup_script: location of a shell script to execute on start

    三、nfs-ganesha容器的使用

    3.1 nfs-ganesha的服务端搭建

    1. 若主机存在nfs服务,首先要关闭主机本机的nfs服务

    systemctl stop nfs
    systemctl disable nfs 及rpc相关服务
    或者
    直接 yum remove nfs-utils

    2.运行容器

    docker run -d --net=host --privileged=true --restart=always --name=nfs_server -v /data/k8s:/export elimuzi/nfs-ganesha

    run 运行容器

    -d 表示后台运行

    –net=host 表示共用主机ip

    –privileged=true 使用该参数,container内的root拥有真正的root权限

    –name=nfs_server 将容器名命名为nfs_server

    -v /data/k8s:/export 建立磁盘映射,/data/k8s为本机需要作为nfs需要共享的目录,/export为容器的目录,配置文件中固定

    elimuzi/nfs-ganesha 为镜像名

    –restart=always 表示开机自启动

    3.可选:若要修改默认配置

    配置文件可以使用默认的,但是若要修改默认配置,ganesha镜像中,nfs-ganesha的启动脚本为/start.sh,若需要对其进行修改,可以先将这个文件拷贝出来

    docker cp nfs_server:/start.sh .

    修改完后再重新复制回容器之中

    docker cp start.sh nfs_server:/start.sh
    docker restart nfs_server # 重启容器

    3.2 nfs-ganesha的客户端使用

    查看服务端的主机ip地址

    查看客户机的ip地址

    3.showmount查看

    showmount -e 192.168.18.143

    4.nfs3的挂载

    mount命令默认使用的是nfs3

    mount 192.168.18.143:/export /mnt

    mount #查看挂载

    5.nfs4的挂载

    mount.nfs4 192.168.18.143:/ /mnt #nfs4使用的是/,而不是/export

    四、参考资料

    nfs-ganesha的源码地址: https://github.com/nfs-ganesha/nfs-ganesha
    nfs-ganesha2.5的容器源码地址: https://github.com/apnar/docker-image-nfs-ganesha
    nfs-ganesha3的容器源码地址: https://github.com/jihetuxing/docker-image-nfs-ganesha
    nfs-ganesha2.5的容器地址: https://hub.docker.com/r/apnar/nfs-ganesha
    nfs-ganesha3的容器地址:https://hub.docker.com/r/elimuzi/nfs-ganesha

    到此这篇关于使用docker的nfs-ganesha镜像搭建nfs服务器的文章就介绍到这了,更多相关docker搭建nfs服务器内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

    THE END
    喜欢就支持一下吧
    点赞15 分享