针对做高性能计算和高IO操作的服务器的内存参数调优推荐如下:
#追加内核对脏页控制的参数
cat >> /etc/sysctl.conf <<- EOF
vm.min_free_kbytes = 245760
vm.watermark_scale_factor=500
vm.swappiness = 1
vm.dirty_background_ratio = 10
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.vfs_cache_pressure = 500
vm.extfrag_threshold = 200
kernel.numa_balancing=0
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 20000
net.ipv4.tcp_keepalive_time = 120
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.core.somaxconn = 65535
net.ipv4.ip_local_port_range = 1024 65536
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_window_scaling = 0
net.ipv4.tcp_sack = 0
net.core.netdev_max_backlog = 30000
net.ipv4.tcp_no_metrics_save=1
net.ipv4.tcp_max_orphans = 262144
fs.file-max = 6553600
kernel.watchdog_thresh=30
EOF
sysctl -p
echo "kernel.watchdog_thresh=30" >> /etc/sysctl.conf
sync
echo 3 > /proc/sys/vm/drop_caches一下
#打开 swap交换区
mkswap -f /data/.swapfile
swapon /data/.swapfile
[root@mmp-dldmp ~]#swapon -s
[root@mmp-dldmp ~]#swapoff /dev/dm-1
[root@mmp-dldmp ~]#free -h
开机自动启动:
vi /etc/fstab
/data/.swapfile swap swap defaults 0 0