![如何使用 Ansible 管理包更新?](https://linux22.com/image/680126/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20Ansible%20%E7%AE%A1%E7%90%86%E5%8C%85%E6%9B%B4%E6%96%B0%EF%BC%9F.png)
我想使用 Ansible 向我的机器推出软件包更新。但我想先在本地虚拟机上测试这些更新。这在现实世界中通常是如何实现的?
- 我是否将 Ansible 配置中每个重要包“锁定”到特定版本,然后测试每个更新?
- 我是否定期获取可升级软件包列表,并同时在我的虚拟机和服务器上更新它们?我可能会在保持服务器和虚拟机同步方面遇到一些麻烦。
是否有管理更新的最佳实践?
答案1
Ansible 并不是真正为了解决这类问题而设计的。它能这样做,但充其量也只是很麻烦。
就像是卡特洛(Red Hat Satellite 6 所基于的开源)可以很好地处理这类事情。它会将软件包保持在您测试过的确切版本,并允许您将它们从开发阶段推广到暂存阶段再到生产阶段,或者定义任何对您有意义的工作流程。更不用说处理裸机配置和许多其他事情了。它在这种情况下的唯一缺点是它与 Puppet 很好地集成在一起,因此在某些地方将它与 Ansible 一起使用时,自动化程度可能会略低一些。