从CentOS7迁移到Rocky Linux 8.6的10项深度优化指南
当CentOS7即将结束生命周期,许多运维工程师开始将目光转向它的继任者Rocky Linux。作为RHEL的完美替代品,Rocky Linux继承了CentOS的稳定性和兼容性,同时提供了更长的支持周期。本文将分享在VMware虚拟化环境中部署Rocky Linux 8.6服务器后,我总结的10项关键优化措施,帮助您打造一个高性能、安全且易于管理的生产环境。
1. 系统基础优化
1.1 精简VMware虚拟机配置
在创建Rocky Linux虚拟机时,合理的硬件配置是性能优化的第一步。不同于桌面环境,服务器应该遵循"够用即可"的原则:
- CPU配置:根据实际负载需求,通常1-2个vCPU足够应对大多数服务
- 内存分配:4GB内存是测试环境的理想起点,生产环境需根据应用需求调整
- 磁盘选择:推荐使用NVMe虚拟磁盘,单个文件存储方式更易于管理
- 网络设置:NAT模式适合大多数开发测试场景,桥接模式更适合生产环境
提示:移除不必要的硬件设备如打印机、声卡可以降低资源开销和安全风险
1.2 系统安装最佳实践
最小化安装是服务器部署的金科玉律。Rocky Linux 8.6的Minimal Install选项只包含必要的软件包:
# 安装完成后检查已安装软件包数量 rpm -qa | wc -l分区方案对服务器性能影响显著。我的建议是:
/根分区:分配大部分空间(至少50GB)/boot或/boot/efi:1GB足够swap分区:物理内存的1-2倍(不超过8GB)/home:服务器环境下通常不需要太大空间
2. 系统性能调优
2.1 优化启动过程
默认的5秒GRUB等待时间对服务器而言过于冗长。对于EFI引导系统,修改/boot/efi/EFI/rocky/grub.cfg:
# 查找并修改timeout参数 vim /boot/efi/EFI/rocky/grub.cfg将set timeout=5改为set timeout=1可以显著减少启动时间。需要注意的是,直接编辑grub.cfg文件在系统更新时可能会被覆盖,更持久的方法是使用grub2-mkconfig。
2.2 移除不必要的服务
VMware Tools中的vmtoolsd服务在无GUI的服务器环境中往往成为资源负担。彻底移除它可以释放系统资源:
systemctl stop vmtoolsd systemctl disable vmtoolsd rm -rf /etc/pam.d/vmtoolsd /usr/bin/vmtoolsd但要注意,NetworkManager服务对Rocky Linux的网络管理至关重要,不可随意停止:
# 确保NetworkManager正常运行 systemctl enable --now NetworkManager2.3 内核参数调优
根据服务器用途调整内核参数可以显著提升性能。例如,对于运行Java应用(如Elasticsearch)的服务器:
# 编辑limits.conf增加文件描述符限制 vim /etc/security/limits.conf添加以下内容:
* soft nproc 65536 * hard nproc 65536 * soft nofile 65536 * hard nofile 65536同时调整虚拟内存映射限制:
echo "vm.max_map_count=655360" >> /etc/sysctl.conf sysctl -p3. 系统维护与安全
3.1 配置高效的软件源
使用国内镜像源可以大幅提升软件安装速度。阿里云提供了稳定的Rocky Linux镜像:
# 安装wget(最小化安装可能不包含) yum install -y wget # 配置阿里云镜像源 wget -O /etc/yum.repos.d/Rocky-BaseOS.repo http://mirrors.aliyun.com/repo/Centos-8.repo yum clean all yum makecache3.2 基础工具安装
最小化安装后,一些常用工具需要手动安装:
yum install -y vim net-tools unzip zip bash-completion特别是net-tools提供了ifconfig等传统网络工具,对习惯CentOS7的用户更为友好。
3.3 SSH安全优化
启用SSH密钥认证是服务器安全的基本要求:
# 生成SSH密钥对 ssh-keygen -t rsa -b 4096 # 配置公钥认证 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys为进一步增强安全,建议:
- 禁用root直接登录
- 修改默认SSH端口
- 启用Fail2Ban防止暴力破解
4. 网络与时间配置
4.1 网络参数优化
正确的网络配置对服务器稳定性至关重要。编辑网卡配置文件:
vim /etc/sysconfig/network-scripts/ifcfg-ens160确保关键参数正确:
ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=114.114.114.114 DNS2=223.5.5.54.2 时间同步配置
准确的时间同步对分布式系统和日志分析极为重要。配置NTP服务:
# 安装chrony时间服务 yum install -y chrony # 配置阿里云NTP服务器 sed -i 's/^pool/#pool/g' /etc/chrony.conf echo "server ntp.aliyun.com iburst" >> /etc/chrony.conf # 启用并启动服务 systemctl enable --now chronyd验证时间同步状态:
chronyc sources -v timedatectl5. 实用工具与习惯优化
5.1 恢复常用命令
从CentOS7迁移的用户可能会怀念一些熟悉的命令。例如,tailf可以替代tail -f:
# 从CentOS7获取tailf二进制文件 wget http://example.com/tailf -O /usr/bin/tailf chmod +x /usr/bin/tailf5.2 启用rc.local
虽然systemd已成为主流,但传统的/etc/rc.local仍可用于简单的启动脚本:
# 启用rc.local chmod +x /etc/rc.d/rc.local # 确保systemd服务已启用 systemctl enable rc-local5.3 日志管理优化
Rocky Linux使用journald作为默认日志系统。为持久化日志并限制大小:
# 创建持久化日志存储 mkdir -p /var/log/journal systemd-tmpfiles --create --prefix /var/log/journal # 配置日志大小限制 vim /etc/systemd/journald.conf设置:
SystemMaxUse=500M RuntimeMaxUse=100M这些优化措施只是Rocky Linux调优的起点。每项调整都应该根据实际业务需求进行评估和测试。记住,最好的优化是理解每项更改背后的原理,而不是盲目复制粘贴命令。