就在2020年的末尾,公司将一部分项目准备迁至腾讯云,30号部署了一批nginx服务器并已经运行。
今日项目开始放量,出于谨慎登录服务器看了下状态,惊讶发现nginx路径下涉及到nginx的文件全部丢失,只剩下空文件夹。
幸亏服务没有重启,原先的配置仍在内存中。
检查了很多的可能点,排除了人为的删除动作,阿里云云效执行动作,salt的执行动作。最后我把目标放在crontab中。因为能在不知不觉中删除文件的行为,比较像是crontab的动作。
于是发现基础运维在crontab中有这一句:
0 10 * * 2 /usr/bin/yum update -y --skip-broken
感觉问题在这里,于是在腾讯测试机进行测试,先部署好nginx,然后手动yum update,果不其然
一个clean up之后,再去看nginx的配置,文件已经全部清空。
意识到问题后,立马把这批机器的crontab改了一下,顺便在/etc/yum.conf中排除了nginx有关的升级,以防后患。
问题有惊无险解决。