事情本身不复杂,线索都在日志里。机器上还跑着老版本系统,软件源已经停止更新,装新软件处处报错,又不敢直接重装。
把日志和配置对完,能解释这个现象的基本就这几处。官方源停止维护,安全更新不再提供。还有一种是直接重装会丢失环境配置。
不容易想到的是,部分软件依赖旧的库版本,升级后不兼容。
盘点系统版本与已装软件
cat /etc/redhat-release && rpm -qa | wc -l
做整机快照留退路
echo '在控制台创建系统盘快照'
随后在新机器上按清单重建环境
nginx -v && php -v && mysql --version
等前面都确认过,再用解析切换完成灰度
dig +short 域名
怎么算真的好了,看的是同一批现象。新系统上业务验证通过,旧机器保留一段时间后下线。
这里还有个坑。原地升级风险高,换新机器重建更可控;重建时把配置文件和证书一并整理成清单,能省掉大量排查时间。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。