我们必须遵循相当严格的修补流程:
- 修补开发或测试机器
- 等一周看看它是否爆炸
- 将相应的生产机器补丁到相同的软件包版本
我似乎无法使用 yum 实现这一点,因为它坚持在生产服务器上将软件包更新到最新版本。有没有其他人开发过工作流程/程序来实现这一点?
我试过了:
- 在本地镜像软件包并控制镜像的更新时间。但是,由于某些系统与许可证号绑定(本例中为 Oracle Linux),因此我认为我无法镜像这些存储库。
- 禁用 yum-updatesd 守护进程,同时在生产机器和测试机器上运行 yum check-update。但是,稍后当我运行 yum update -C 尝试从缓存中更新时,它失败了(EPEL 出了问题)。
答案1
正确的做法是按照您的建议去做。设置本地更新服务器并将所有系统指向它。这样您就可以控制软件包的更新时间。这可能无法解决您的许可问题,您需要联系您的销售代表并与他们交谈。
既然你提到了 yum,我假设你使用的是 RedHat 或其衍生产品。如果你使用的是 RHEL,那么可以向他们咨询卫星以及您是否已获得许可。否则,请查看太空行走项目。它是 RHN Satellite 的上游项目。在直接 Satellite 界面和底层 cobbler 安装之间,您可以获得镜像存储库、管理和报告系统补丁级别等所需的一切。
除此之外,您绝对应该禁用 yum-updatesd。由于您实际上试图遵循补丁计划,因此您需要直接控制何时应用更新。您是通过手动登录系统并运行更新还是使用 cronjob 为您应用更新来做到这一点,将取决于您的舒适度以及与变更管理办公室的讨论。但是,我强烈建议您采用自动化路线。从历史上看,与人类同行相比,cron 不太可能分心并忘记执行任务。