1

用户态的NFS Server

 1 year ago
source link: https://bajie.dev/posts/20220706-nfs_usermode/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

用户态的NFS Server

2022-07-06 1 分钟阅读

NFS Server 很常用,但是坑也是巨大的。之前在京东运维 Hadoop 集群的时候碰到过脑裂,原因就是 NFS 引起的。

关键 NFS 是内核态的,一旦崩溃,那么客户端的所有命令,ls、df、du等等,统统无反应,结果是很悲剧的。

下面要推荐一下 nfs-ganesha ,它是用户态的nfs-server,支持v3和v4,而nfs缺省是内核态的v3。

强烈推荐大家用这个,而不是用内核态的,并且 nfs-ganesha 还是支持 glusterFS 的。

yum install -y centos-release-nfs-ganesha30.noarch
    
vi /etc/ganesha/ganesha.conf
%include /etc/ganesha/exports/gv0.conf
    
vi /etc/ganesha/exports/gv0.conf
EXPORT{
    Export_Id = 1 ;   # Export ID unique to each export
    Path = "/mnt/upload";
    Pseudo = /upload;
    FSAL {
        name = VFS;
    }
    Access_type = RW;    # Access permissions
    Squash = No_root_squash; # To enable/disable root squashing
    Disable_ACL = TRUE;  # To enable/disable ACL
    Protocols = "4" ;    # NFS protocols supported
    Transports = "UDP","TCP" ; # Transport protocols supported
    SecType = "sys";     # Security flavors supported
}

#启动
systemctl restart nfs-ganesha

#手动mount的方法
mount -t nfs -o soft,intr,rsize=8192,wsize=8192,timeo=900,proto=tcp,vers=4 192.168.31.2:/upload /mnt/nfs-upload
    
#自动mount的方法
cat /etc/fstab
192.168.31.2:/upload /mnt/nfs-upload nfs rw,vers=4,addr=192.168.31.2,clientaddr=192.168.31.8 0 0

注意id对齐问题可能要用到rpcidmapd


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK