我如何确保当我在不同时间在 2 个不同的服务器上运行 apt-get update 和 apt-get upgrade 时,我将获得相同的软件包?我如何自动/强制执行此操作?
我目前正在查看的(简化)用例是,如果我将开发实例上的所有内容都升级到最新版本,并针对它测试我的所有自定义软件,这需要一两天时间。当我运行更新/升级时生产机器,我只想升级到我以前测试过的版本。这将允许我建立一个流程来比目前更快更安全地迭代更新的补丁。
理想情况下,我喜欢在第一次升级时使用时间戳,然后在后续升级中强制执行更新到该时间戳。(但任何其他建议都会很棒)
我已经考虑过研究一些选项,但我不确定它们是否有希望,并且它们需要一些工程时间,并且很好奇是否有更简单的方法来做到这一点。
1) 创建某种本地 apt 存储库来缓存版本。该存储库可以为第一次拉取所有最新版本,然后仅在随后查询时返回那些。
2) 看看 ansible/chef 之类的配置管理工具是否可以捕获在第一次拉取时更新的所有版本,然后强制第二次拉取这些确切版本。
谢谢。
您需要使用apt-mirror或aptly 之类的工具运行您自己的 apt 存储库。使用像 apt-mirror 这样的简单工具,您可以在更新开发环境之前同步您的存储库,并且在您更新生产环境之前不会再次同步它。使用像 aptly 这样更复杂的工具,您可以实现那个或更复杂的包流。
| 归档时间: |
|
| 查看次数: |
225 次 |
| 最近记录: |