在 CentOS 8.5 上进行系统调优可以提高性能和稳定性。以下是一些详细的调优技巧:
1. 内核参数优化
-
sysctl
配置:编辑/etc/sysctl.conf
文件,以调整内核参数,从而提高系统性能。例如:bash
-
# 减少交换使用 vm.swappiness = 10# 增加文件描述符限制 fs.file-max = 2097152# TCP 参数 net.ipv4.tcp_max_syn_backlog = 2048 net.ipv4.ip_local_port_range = 1024 65535 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200
执行
sysctl -p
命令应用这些更改。 -
文件描述符限制:通过编辑
/etc/security/limits.conf
文件,增加进程可以打开的文件描述符数,例如:bash
-
* soft nofile 65536 * hard nofile 65536
2. 网络优化
-
TCP 调优:编辑
/etc/sysctl.conf
,添加以下配置:bash
-
net.core.somaxconn = 65535 net.core.netdev_max_backlog = 5000 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 net.ipv4.tcp_congestion_control = cubic
-
网络服务优化:使用
systemctl
禁用不必要的网络服务,例如:bash
-
systemctl disable avahi-daemon systemctl disable NetworkManager-wait-online
3. 存储和 I/O 优化
-
文件系统选择:选择合适的文件系统,如 XFS 或 EXT4。XFS 在处理大文件和高性能需求时表现较好。
-
调整 I/O 调度器:根据应用负载选择合适的 I/O 调度器,例如
deadline
或noop
。可以通过编辑/etc/default/grub
文件修改启动参数:bash
-
GRUB_CMDLINE_LINUX_DEFAULT="... elevator=deadline"
-
文件系统挂载选项:使用高效的挂载选项,例如:
bash
-
/dev/sda1 / ext4 defaults,noatime,discard 0 1
4. 内存管理
-
缓存管理:使用
drop_caches
来清理内存中的缓存,定期执行以下命令:bash
-
echo 3 > /proc/sys/vm/drop_caches
-
内存过度承诺:调整
vm.overcommit_memory
以控制内存分配:bash
-
vm.overcommit_memory = 1
5. 服务和进程优化
-
服务管理:使用
systemctl
管理和优化服务,禁用不必要的服务:bash
-
systemctl stop <service> systemctl disable <service>
-
资源限制:使用
systemd
的资源限制功能,通过编辑服务单元文件设置 CPU、内存限制:bash
-
[Service] CPUQuota=50% MemoryLimit=512M
6. 日志和监控
-
日志管理:配置
logrotate
来定期轮换日志,防止日志文件占用过多空间。编辑/etc/logrotate.conf
和/etc/logrotate.d/
中的配置文件。 -
系统监控:使用工具如
top
、htop
、vmstat
、iostat
和sar
监控系统性能,识别性能瓶颈。
7. 安全和更新
-
安全更新:定期更新系统和软件包,确保系统安全。使用
dnf
工具:bash
-
dnf update
-
SELinux 配置:确保 SELinux 处于 Enforcing 模式以提升安全性,通过
/etc/selinux/config
文件进行配置:bash
-
SELINUX=enforcing
通过上述技巧,可以显著提升 CentOS 8.5 的系统性能和稳定性。调优时应根据实际负载和需求进行测试和调整。