centos

centos镜像安装后如何优化系统性能

小樊
38
2025-11-01 20:21:50
栏目: 智能运维

CentOS镜像安装后系统性能优化指南

一、系统基础优化

  1. 更新系统与软件包
    运行sudo yum update -y更新所有系统软件包至最新版本,修复已知漏洞并提升兼容性与稳定性。
  2. 关闭不必要的服务
    使用systemctl list-unit-files --type=service列出所有服务,禁用不需要的服务(如firewalldNetworkManager,若无需防火墙或网络管理):
    sudo systemctl stop service_name && sudo systemctl disable service_name
    
    减少后台进程对CPU、内存的占用。
  3. 移除无用软件包与清理垃圾
    使用yum list installed查看已安装软件包,删除无用软件(如sudo yum remove package_name);清理/tmp/var/tmp目录下的临时文件,使用yum clean all清理yum缓存,释放磁盘空间。

二、内核参数调优

  1. 调整内存管理参数
    编辑/etc/sysctl.conf,添加或修改以下参数以优化内存使用:

    • vm.swappiness=10:降低系统对交换分区(Swap)的依赖(0-10适合服务器,数值越小越优先使用物理内存);
    • vm.dirty_ratio=10:当脏页(未写入磁盘的内存数据)占内存比例达10%时,触发后台写入;
    • vm.dirty_background_ratio=5:当脏页占内存比例达5%时,启动后台写入进程;
    • vm.vfs_cache_pressure=50:调整虚拟文件系统(VFS)缓存压力,数值越大,内核越倾向于回收缓存。
      执行sudo sysctl -p使配置生效。
  2. 优化网络参数
    /etc/sysctl.conf中添加以下参数,提升网络吞吐量与连接效率:

    • net.ipv4.tcp_tw_reuse=1:允许复用TIME_WAIT状态的TCP连接;
    • net.ipv4.tcp_fin_timeout=15:缩短TIME_WAIT状态超时时间(默认60秒);
    • net.core.somaxconn=65535:增加TCP连接队列长度(默认128,适合高并发场景);
    • net.ipv4.tcp_max_syn_backlog=8192:增加SYN队列长度(默认1024,应对大量并发连接请求);
    • net.ipv4.ip_local_port_range="1024 65535":扩大本地端口范围,支持更多并发连接。
      执行sudo sysctl -p使配置生效。
  3. 调整文件描述符限制
    编辑/etc/security/limits.conf,添加以下内容,提高用户进程能打开的文件数(避免因文件描述符耗尽导致服务崩溃):

    * soft nofile 65535
    * hard nofile 65535
    * soft nproc 65535
    * hard nproc 65535
    

    重启系统或重新登录使配置生效。

三、磁盘I/O优化

  1. 选择高性能存储与挂载选项

    • 硬件升级:优先使用SSD替代HDD,提升读写速度(尤其是随机I/O场景);
    • 挂载选项:编辑/etc/fstab,为文件系统添加noatime(不更新文件访问时间)、nodiratime(不更新目录访问时间)选项,减少不必要的磁盘写操作。例如:
      /dev/sda1 / ext4 defaults,noatime,nodiratime 0 0
      
      执行sudo mount -a重新挂载文件系统。
  2. 调整I/O调度器
    根据磁盘类型选择合适的I/O调度器(默认CFQ适合机械硬盘,Deadline/NOOP适合SSD):

    • 查看当前磁盘调度器:cat /sys/block/sdX/queue/schedulersdX为磁盘设备名,如sda);
    • 切换至Deadline调度器(适合大多数服务器场景):
      echo deadline | sudo tee /sys/block/sdX/queue/scheduler
      
      若需永久生效,可将elevator=deadline添加到内核启动参数(/etc/default/grub中的GRUB_CMDLINE_LINUX行)。
  3. 优化文件系统

    • 选择合适文件系统:推荐使用XFS(高性能、支持大文件)或EXT4(稳定、兼容性好);
    • 调整挂载选项:对于XFS,可添加noatimenodiratime;对于EXT4,可添加data=writeback(减少日志写入,提升写入性能,但需注意数据一致性)。

四、服务与安全优化

  1. 禁用SELinux(可选)
    若无需SELinux的强制访问控制,可关闭以减少系统资源消耗:

    • 编辑/etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled
    • 执行setenforce 0临时生效(重启后永久生效)。
  2. SSH服务优化

    • 修改SSH端口(避免暴力破解):编辑/etc/ssh/sshd_config,将#Port 22改为Port 2222(或其他非标准端口);
    • 禁用root远程登录:将PermitRootLogin yes改为PermitRootLogin no
    • 使用密钥认证(替代密码认证):生成密钥对(ssh-keygen -t rsa),将公钥复制至服务器(ssh-copy-id user@ip);
    • 减少登录延迟:将#LoginGraceTime 2m改为LoginGraceTime 1m

五、监控与持续优化

  1. 安装监控工具
    使用htop(实时查看CPU、内存、进程)、iotop(监控磁盘I/O)、nmon(综合监控系统性能)等工具,定期检查系统资源使用情况:
    sudo yum install htop iotop nmon -y
    
  2. 定期清理日志
    使用logrotate工具自动轮转日志(避免日志文件过大占用磁盘空间),或手动清理旧日志(如/var/log/messages/var/log/secure)。

以上优化措施需根据服务器实际用途(如Web服务器、数据库服务器、高性能计算节点)调整,建议在测试环境中验证后再应用于生产环境。

0
看了该问题的人还看了