HCRM博客

如何优化CentOS系统性能,掌握内核参数调整的关键技巧?

CentOS内核参数优化是一个复杂但重要的任务,它直接关系到系统的性能、稳定性和安全性,以下是对CentOS内核参数的详细解析,包括内存管理、TCP/IP网络、文件系统以及其他关键参数的说明:

一、内存管理参数

参数 默认值 说明
vm.admin_reserve_kbytes min(free_page * 0.03, 8MB) 给有cap_sys_admin权限的用户保留的内存数量。
vm.block_dump 0 如果设置非零值,则启用块I/O调试。
vm.compact_memory 0 进行内存压缩,仅在启用CONFIG_COMPACTION时有效。
vm.dirty_background_bytes 0 当脏页所占内存超过此值时,内核开始回写脏页。
vm.dirty_background_ratio 10 脏页所占百分比达到此值时,内核开始回写脏页数据。
vm.dirty_bytes 0 当脏页所占内存达到此值时,进程开始回写脏数据。
vm.dirty_expire_centisecs 3000 脏数据过期时间(百分之一)。
vm.dirty_writeback_centisecs 500 Flusher线程唤醒间隔(百分之一秒)。
vm.drop_caches 0/1/2/3 释放不同类型的缓存。
vm.extfrag_threshold 0 外部碎片整理阈值。
vm.hugepages_treat_as_movable 0 控制是否可以从ZONE_MOVABLE域分配大页面。
vm.hugetlb_shm_group 0 SySV共享内存段组ID。
vm.laptop_mode 0 开启或关闭Laptop模式以延长电池续航。
vm.legacy_va_layout 0 地址空间布局模式(经典/新)。
vm.lowmem_reserve_ratio 256 低端内存保护强度。
vm.max_map_count 65530 一个进程能拥有的最大内存区域数。
vm.memory_failure_early_kill 0 内存错误处理机制。
vm.memory_failure_recovery 0 是否开启内存错误恢复机制。
vm.min_free_kbytes 65536 每个内存区保留的最小内存大小(KB)。
vm.min_slab_ratio 5 Numa系统中可回收slab页面的最小百分比。
vm.min_unmapped_ratio 5 允许回收状态内存页的最小百分比。
vm.mmap_min_addr 0 用户进程通过mmap使用的最小虚拟内存地址。
vm.nr_hugepages 0 大页的最小数目。
vm.nr_overcommit_hugepages 0 保留的大页数。
vm.nr_pdflush_threads 0 Pdflush线程数量。

二、TCP/IP网络参数

参数 默认值 说明
net.ipv4.tcp_fin_timeout 60 决定套接字保持在FINWAIT2状态的时间。
net.ipv4.tcp_keepalive_time 7200s (2 hours) Keepalive探测的时间间隔。
net.ipv4.tcp_keepalive_intvl 75s Keepalive探测的初始间隔。
net.ipv4.tcp_keepalive_probes 9 Keepalive探测的最大次数。
net.ipv4.tcp_max_syn_backlog 1024 SYN包的最大挂起连接队列。
net.ipv4.tcp_max_tw_buckets 180000 同时保持TIMEWAIT套接字的最大数量。
net.ipv4.tcp_rmem [4096 87380 6291456] TCP接收缓冲区的最小、默认和最大值。
net.ipv4.tcp_wmem [4096 65536 4194304] TCP写入缓冲区的最小、默认和最大值。
net.ipv4.tcp_mem [786432 1048576 1572864] TCP内存管理的三个阈值。
net.ipv4.tcp_retries2 永久重试次数(默认15) TCP数据包重传次数。
net.ipv4.tcp_syncookies 0 是否开启SYN Cookies。
net.ipv4.tcp_tw_reuse 0 是否开启TIMEWAIT套接字重用。
net.ipv4.tcp_tw_recycle 0 是否快速回收TIMEWAIT套接字。
net.ipv4.tcp_timestamps 1 是否开启TCP时间戳。
net.ipv4.tcp_window_scaling 1 是否开启窗口缩放
net.ipv4.ip_local_port_range 32768 60999 用于向外连接的端口范围。
net.core.somaxconn 128 listen()的挂起请求的最大数量。
net.ipv4.route.gc_elasticity 16 路由缓存弹性因子。
net.ipv4.route.gc_thresh 64 路由缓存垃圾回收阈值。
net.ipv4.route.gc_min_interval 5 路由缓存垃圾回收最小时间间隔(秒)。
net.ipv4.route.gc_timeout 60 路由缓存条目超时时间(秒)。
net.ipv4.route.max_size 4096 路由表的最大尺寸。

三、文件系统参数

参数 默认值 说明
fs.filemax 100000 系统允许的最大文件描述符数量。
fs.aiomaxnr 65536 AIO的最大异步I/O操作数。
fs.inotify.max_user_watches 8192 inotify的最大监控对象数量。
fs.inotify.max_user_instances 128 inotify的最大用户实例数量。
fs.inotify.max_queued_events = 16384 inotify的最大排队事件数。
fs.inotify.max_watched_objects = 8192 inotify的最大被监控对象数量。
如何优化CentOS系统性能,掌握内核参数调整的关键技巧?-图1
(图片来源网络,侵权删除)
分享:
扫描分享到社交APP
上一篇
下一篇