我正在运行一个由不超过 10 台 Linux 服务器组成的小型(但不断增长的)Linux 环境。
环境由 CentOS 5 & 6 和 Oracle Linux 5 & 6 boxen 组成。所有这些都通过相应的 yum repos 单独修补。
谁能建议一种为这些服务器集中补丁管理的方法?我听说 Puppet 经常用于执行此操作,但我自己从未使用过它,并且有兴趣听取其他系统管理员的意见。
我正在运行一个由不超过 10 台 Linux 服务器组成的小型(但不断增长的)Linux 环境。
环境由 CentOS 5 & 6 和 Oracle Linux 5 & 6 boxen 组成。所有这些都通过相应的 yum repos 单独修补。
谁能建议一种为这些服务器集中补丁管理的方法?我听说 Puppet 经常用于执行此操作,但我自己从未使用过它,并且有兴趣听取其他系统管理员的意见。
大多数配置管理工具都非常擅长这一点。 puppet和Chef是最受欢迎的两个,而radmind是我使用的。
特定工具的文档将使您了解如何实施补丁管理——它确实因工具而异。
其他选项包括集中式 yum/apt/whatever 存储库和自行开发的脚本,以按计划的时间间隔(或按需)从中提取补丁,还有来自一些主要供应商的商业解决方案,其中一些(如RedHat 的 RHN Satellite)相当如果您花时间学习它们的工作原理并真正利用它们的功能,那就太好了。
还没有人指出但我觉得值得注意的一项是同质性——在可能的范围内,使您的服务器可互换齿轮运行相同的软件。这极大地简化了补丁管理(相同的补丁必须随处可见)并且恕我直言,随着环境的发展,生活会变得更加轻松。
我会推荐一些类似于Spacewalk的东西。它基本上是 Red Hat 的 Satellite 软件的免费版本。
由于您正在研究 Linux,请查看 Redhat 即将推出的项目:Pulp。
Pulp 是解决该问题的更现代的解决方案,它专门针对包和补丁管理、审计等。这是 puppet/chef 可以通过一些努力自行完成的事情。Pulp 只做 packages 和 Yum,将 Config 管理留给 puppet/chef,这是应该的。它有一个用于脚本等的 Rest api。
我不是 Spacewalk/Satellite 的粉丝,而是 YMMV 的粉丝。
是的,我们使用 puppet 进行大型集群补丁和行政管理。小集的另一种选择是创建本地 yum 存储库并使用自定义 RPM 打包部署更改。