1. 内存管理参数
- vm.swappiness:控制系统在内存不足时,内核将页面交换到磁盘的程度。默认值:60,建议值:10-30。
- vm.overcommit_memory:控制系统是否允许超额分配内存。默认值:0,建议值:1。
- vm.dirty_ratio:控制系统脏页占内存的比例。默认值:20,建议值:5-10。
- vm.dirty_background_ratio:控制系统后台写入脏页的比例。默认值:10,建议值:1-5。
- vm.dirty_expire_centisecs:控制系统脏页过期时间。默认值:3000,建议值:1000-2000。
- vm.dirty_writeback_centisecs:控制系统写回脏页的时间间隔。默认值:500,建议值:100-200。
- vm.vfs_cache_pressure:控制系统内核缓存的大小和清理频率。默认值:100,建议值:50-100。
- vm.min_free_kbytes:控制系统保留的最小空闲内存。默认值:4096,建议值:65536。
- vm.max_map_count:控制系统允许的最大内存映射数量。默认值:65530,建议值:262144。
2. 网络参数
- net.core.somaxconn:系统TCP连接的最大排队数量。默认值:128,建议值:1024。
- net.core.netdev_max_backlog:系统网络设备接收数据包的队列大小。默认值:1000,建议值:5000。
- net.core.rmem_max:系统TCP接收缓冲区的最大大小。默认值:212992,建议值:524288。
- net.core.wmem_max:系统TCP发送缓冲区的最大大小。默认值:212992,建议值:524288。
- net.ipv4.tcp_fin_timeout:系统TCP连接关闭的超时时间。默认值:60,建议值:10-20。
- net.ipv4.tcp_tw_reuse:系统是否允许重用TIME_WAIT状态的TCP连接。默认值:0,建议值:1。
- net.ipv4.tcp_tw_recycle:系统是否启用TCP连接回收机制。默认值:0,建议值:1。
- net.ipv4.tcp_max_syn_backlog:系统TCP连接请求队列的大小。默认值:128,建议值:1024。
- net.ipv4.tcp_keepalive_time:系统TCP连接的保持时间。默认值:7200秒,建议值:600-1200。
- net.ipv4.tcp_max_tw_buckets:系统可以处理的TIME_WAIT状态的TCP连接的最大数量。默认值:180000,建议值:262144。
- net.ipv4.ip_local_port_range:系统可以使用的本地端口范围。默认值:32768-61000,建议值:1024-65535。
- net.ipv4.tcp_slow_start_after_idle:系统TCP连接空闲一段时间后是否重新进入慢启动状态。默认值:1,建议值:0。
- net.ipv4.tcp_no_metrics_save:系统是否保存TCP连接的性能指标。默认值:0,建议值:1。
- net.ipv4.tcp_mtu_probing:系统是否启用TCP MTU探测。默认值:0,建议值:1。
- net.ipv4.tcp_congestion_control:系统TCP拥塞控制算法。默认值:cubic,建议值:bbr。
3. 文件系统参数
- fs.file-max:系统可以打开的文件句柄数量。默认值:65536,建议值:1048576。
- fs.nr_open:系统可以打开的文件句柄数量。默认值:1048576,建议值:1048576(注意:这里两个参数重复,应为同一参数)。
- fs.inotify.max_user_watches:系统可以监视的文件数量。默认值:8192,建议值:524288。
4. 内核参数
- kernel.sem:系统信号量的数量。默认值:250,建议值:512-1024。
- kernel.shmmax:系统的共享内存大小。默认值:4294967295,建议值:536870912。
- kernel.shmall:系统的共享内存大小。默认值:4294967296(纠正了原文档中的097152),建议值:134217728。
- kernel.pid_max:系统可以创建的最大进程数。默认值:32768,建议值:524288。
- kernel.core_pattern:系统在出现核心转储文件时的文件名格式。默认值:core,建议值:/corefiles/core-%e-%s-%u-%g-%p-%t。
- kernel.msgmnb:系统消息队列的最大大小。默认值:16384,建议值:65536。
- kernel.msgmax:系统消息队列的最大大小。默认值:8192,建议值:65536。
- kernel.sysrq:系统是否允许使用SysRq键。默认值:1,建议值:0。
- kernel.printk:系统内核日志的输出级别。默认值:4 4 7(纠正了原文档中的4 417),建议值:3 3 3。
- kernel.randomize_va_space:系统是否启用地址空间随机化。默认值:2,建议值:2。
- kernel.nmi_watchdog:系统是否启用NMI watchdog。默认值:1,建议值:0。
- kernel.softlockup_panic:系统是否在软锁定时触发内核崩溃。默认值:0,建议值:1。
- kernel.hung_task_panic:系统是否在任务超时时触发内核崩溃。默认值:0,建议值:1。
- kernel.panic:系统在内核崩溃时的行为。默认值:0,建议值:10。
- kernel.panic_on_oops:系统在Oops发生时是否触发内核崩溃。默认值:0,建议值:1。
- kernel.exec-shield:系统是否启用执行保护。默认值:1,建议值:1。
- kernel.dmesg_restrict:系统是否限制非特权用户访问dmesg。默认值:1,建议值:1。