Linux NFS服务器的端口优化(nfslinux端口)
Linux NFS服务器端口优化是为了提高性能,满足不同的使用场景,灵活的使用NFS资源,达到NFS的最高性能。NFS服务器端口优化,主要是用于客户端、服务器端之间通信效率和性能优化。
NFS服务器端口优化的一般步骤主要分不同部分,分别是:一、服务器端Socket参数调优;二、服务器端TCP参数调优;三、服务器端NFS的参数调优;四、服务器端缓存调优;五、客户端Socket参数优化;六、客户端TCP参数优化;七、客户端NFS参数优化。
1、NFS服务器端Socket参数调优,一般有以下几个参数可以调节:SO_RCVBUF和SO_SNDBUF,一般采用4M以上;SO_RCVLOWAT,一般采用4K以上;SO_SNDLOWAT,一般采用4K以上,最后使用如下命令:
echo 65536 > /proc/sys/net/core/rmem_max
echo 4194304 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/wmem_default
echo 65536 > /proc/sys/net/core/wmem_max
echo 4096 > /proc/sys/net/core/optmem_max
echo 4096 > /proc/sys/net/core/optmem_max
2、NFS服务器端TCP参数调优,一般有以下几个参数可以调节:net.ipv4.tcp_rmem,net.ipv4.tcp_wmem,net.ipv4.tcp_retries2,net.ipv4.tcp_max_syn_backlog。
echo “2048 87380 16777216” > /proc/sys/net/ipv4/tcp_rmem
echo “2048 65536 16777216” > /proc/sys/net/ipv4/tcp_wmem
echo 7 > /proc/sys/net/ipv4/tcp_retries2
echo 2048 > /proc/sys/net/ipv4/tcp_max_syn_backlog
3、NFS服务器端NFS参数调优,一般有以下几个参数可以调节:sunrpc.tcp.msize,sunrpc.tcp.min_resvport,sunrpc.tcp.max_resvport,sunrpc.tcp.clients_per_port。
echo 4194304 > /proc/sys/sunrpc/tcp_max_msg_size
echo 49152 > /proc/sys/sunrpc/tcp_min_resvport
echo 65535 > /proc/sys/sunrpc/tcp_max_resvport
echo 32 > /proc/sys/sunrpc/tcp_clients_per_port
4、NFS服务器缓存调优,主要参数有writeback_cache、readahead_cache、dirty_background_ratio、dirty_ratio等。writeback_cache基本就是定义缓存的容量大小,readahead_cache设置的参数与服务器的网络速度有关系,dirty_background_ratio和dirty_ratio也可以设置合理的值通过调优来提高NFS的性能。
5、客户端Socket参数优化,一般有以下几个参数可以调节:SO_RCVBUF和SO_SNDBUF,一般采用4M以上;SO_RCVLOWAT,一般采用4K以上;SO_SNDLOWAT,一般采用4K以上,最后使用如下命令:
echo 65536 > /proc/sys/net/core/rmem_max
echo 4194304 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/wmem_default
echo 65536 > /proc/sys/net/core/wmem_max
echo 4096 > /proc/sys/net/core/optmem_max
echo 4096 > /proc/sys/net/core/optmem_max
6、客户端TCP参数优化,主要参数有net.ipv4.tcp_keepalive_time,该参数调整位置,可以有效减少客户端多次重连服务器的时间,从而减少客户端read阻塞。
echo 7200 > /proc/sys/net/ipv4/tcp_keepalive_time
7、客户端NFS参数优化,一般有以下参数可以调节:NFS_MOUNT_NONBLOCK,NFS_MOUNT_SOFT,NFS_MOUNT_INTR,NFS_MOUNT_TCP,NFS_MOUNT_NOCTO,NFS_MOUNT_NOAC,NFS_MOUNT_BROKEN_SUID,NFS_MOUNT_MAXGROUPS。调整参数,可以有效提高NFS客户端在服务器断开或者不可用时的恢复策略,从而提升使用NFS的可靠性。
echo 1 > /proc/sys/fs/nfs/nfs_mount_nonblock
echo 0 > /proc/sys/fs/nfs/nfs_mount_soft
echo 0 > /proc/sys/fs/nfs/nfs_mount_intr
echo 1 > /proc/sys/fs/nfs/nfs_mount_tcp
echo 1 > /proc/sys/