CentOS 7 迁移至 Rocky Linux 或 AlmaLinux 9

CentOS Linux 7 已结束生命周期。对于重要业务,优先建议“新建 EL9 主机—迁移应用与数据—灰度切流—保留回退”,而不是直接在唯一生产节点上跨大版本原地升级。原地升级适合经过厂商支持和完整演练的特定场景,不是默认捷径。

一、先做工作负载清点

cat /etc/centos-release
uname -r
rpm -qa | sort > packages-centos7.txt
systemctl list-unit-files --state=enabled > enabled-services.txt
ss -lntup > listening-ports.txt
df -hT > filesystem.txt
ip addr show > addresses.txt
ip route show > routes.txt

同时记录:业务进程、启动方式、配置目录、数据目录、证书、定时任务、挂载、数据库版本、第三方仓库、内核模块、监控、备份和防火墙策略。不要只复制 /etc,旧配置可能与 EL9 的软件版本不兼容。

二、重点兼容性差异

  • Python、OpenSSL、PHP、数据库和运行时版本可能跨越多个大版本。
  • 网络配置工具、加密策略、SELinux、cgroup 和防火墙默认行为有变化。
  • 老旧硬件驱动、DKMS 模块或闭源软件可能不支持新内核。
  • 第三方 RPM 仓库不能直接沿用 CentOS 7 地址。
  • 应用若依赖废弃算法、旧 TLS 或过时库,需要先改造应用而不是降低整机安全策略。

三、推荐的并行迁移流程

  1. 根据兼容矩阵选择 Rocky Linux 或 AlmaLinux 的目标版本。
  2. 新建目标服务器,完成磁盘、网络、时间、DNS、账号、SSH、审计和监控基线。
  3. 安装经过确认的软件版本,不直接复制旧 RPM 数据库。
  4. 迁移配置时逐项审阅差异,把密钥和凭据通过受控渠道注入。
  5. 先同步全量数据,再在切换窗口同步增量数据。
  6. 使用测试域名、临时地址或少量流量完成验证。
  7. 切换 DNS、负载均衡或路由,并持续观察错误率、时延和资源使用。
  8. 在规定观察期内保留旧环境只读或隔离状态,确认后再下线。

四、原地升级何时可考虑

只有同时满足以下条件才考虑:目标路径被迁移工具明确支持;软硬件兼容;具备带外控制台;第三方仓库和内核模块已处理;备份经过恢复验证;能接受较长维护窗口;已在克隆环境完整演练。

CentOS 7 跨多个大版本升级通常需要分阶段进行。不要把面向 EL8/EL9 同版本转换的脚本直接用于 CentOS 7 大版本升级。

五、验收与回退

验收至少覆盖:

  • 系统启动、内核、时间、DNS、路由和挂载;
  • 应用启动、健康检查、日志和依赖;
  • 数据完整性、读写、备份和恢复;
  • 监控、告警、审计、漏洞扫描和补丁源;
  • 用户登录、接口调用、批处理与峰值性能。

回退条件应量化,例如错误率、关键接口失败、复制延迟或业务核对不一致达到阈值。回退不仅是“把 DNS 改回去”,还要处理切换后产生的新数据。

六、迁移完成后的治理

将目标系统纳入生命周期清单,记录支持期限、仓库来源、维护窗口和负责人。删除临时账户、测试防火墙规则和旧密钥,更新 CMDB、备份、监控、应急预案与软件许可证信息。

延伸阅读

Copyright © yan-jian.com 2023 - 2026 · Powered by GitBook更新时间: 2026-10-16 07:53:12

results matching ""

    No results matching ""