我会有兴趣听到服务器故障社区与Ksplice在生产中的经验。
维基百科的快速入门:
Ksplice是Linux内核的一个免费和开源的扩展,允许系统pipe理员将安全补丁应用到正在运行的内核,而无需重新启动操作系统。
和
Ksplice可以在不重新启动内核的情况下应用任何只需修改内核代码的源代码补丁。 与其他热点更新系统不同的是,Ksplice只input统一的差异和原始的内核源代码,并且正确地更新运行的内核,而不需要进一步的人工协助。 此外,利用Ksplice在系统初始引导之前不需要任何准备(例如,运行的内核不需要被特别编译)。 为了生成更新,Ksplice必须确定内核中的哪些代码已被源代码修补程序更改。
所以有几个问题:
稳定性如何? 内核的“无重启实时修补”遇到的任何奇怪的问题? 内核恐慌或恐怖故事?
我已经在几个testing系统上运行了它,到目前为止它一直在按照广告的方式运行,但是我感兴趣的是在进行“全面实施”并将其部署到我们的生产服务器之前,Ksplice的其他系统pipe理员的经验。
那么,有谁在生产中使用Kspice?
更新:嗯,几个小时后(除了一些upvotes和fav)之外,没有看到这个问题上的任何真正的活动。 也许引发一些活动,我还会问一些更多的问题,看看我们是否可以讨论这个问题。
“如果你知道Ksplice,有没有理由不使用它?
“你觉得它仍然太过stream血的边缘,未经证实或未经testing?”
“Ksplice不适合你当前的补丁pipe理系统吗?”
“你讨厌拥有长期(和安全)的系统?” 😉
(首先,免责声明:我为Ksplice工作。)
当然,我们在自己的生产基础设施上使用它,但更重要的是,我们的500多家公司客户(截至2010年12月的数字)也是如此。
一个系统pipe理员在红帽企业Linux用户邮件列表上提出相同的问题 ,并且遇到了一些答案,其中几个摘录如下:
我们已经在几十个主机上运行Ksplice几个月了。 到目前为止,它像广告一样工作。
和
我有超过500台机器在我的控制下,其中约445台连接到uptrack(rhel 4&5)。 在我们有机会重启机器之前,我们使用ksplice来阻止一些根攻击。 由于我们还在testing,我们推出了新内核,但是我已经运行了几个星期ksplice'd没有问题。
人们所expression的一个担忧不在于稳定性,而在于与现有审计和监测工具的整合:
关于使用ksplice的唯一“窍门”是没有任何“ksplice-aware”审计工具可用。
正如您所预料的那样,现在这是我们投入巨资的一个领域。
我听说Ksplice,当时我觉得这是个好主意。 没有停机时间,没有重新启动。 但后来我进一步研究,我害怕尝试。
我避免的原因是:
Linux内核已经非常复杂了。 Ksplice增加了复杂性。 更复杂=失败更多。
在远程服务器上尝试使用Ksplice将是蛮横的,因为这种远程服务器的故障会导致停机时间长和代价高昂的维修。
在我的情况下唯一的好处是更高的正常运行时间统计。
我一直在我的家庭服务器上使用Ksplice(正常运行时间并不重要,但是很好用)。 根本没有任何问题 – 偶尔通过Apt更新到客户端,从来没有任何问题与内核更新自己,没有(明显)不稳定。
虽然通常的“YMMV”免责声明适用! 😉
Ksplice是一个开放源代码的内核扩展,但要记住,虽然软件是免费的,任何人都可以使用,但是它是专门为做Linux补丁pipe理的公司(也称为“Ksplice”)创build的。 Ksplice(内核模块)只有在你的内核有ksplice可用的补丁时才有用,除非你与Ksplice(公司)签有支持合同,否则你可能永远都看不到。
所以,虽然ksplice(工具)已经相当成熟,但是如果您正在考虑使用Ksplice(公司)进行修补程序pipe理,那么这只是相关的。
好问题。 我最初的回应将是“为什么我需要这个?”。
最有可能不需要它。 即使在五十九的设置中,“定期维护”通常也是SLA中的一个条款,允许这种停机时间。 如果您有HA设置,请切换到故障转移,在一个框中安装内核,重新引导,然后重复。 如果在一个盒子上连5分钟的停机时间都无法承受,那么无论如何您都需要一个故障转移设置。
虽然这是一种新颖的技术,但我还没有看到太多的实用性。 当然,内核安全更新是必要的,应该尽快修补,但是这样做会节省多less时间/精力/担心,而不是简单地安装一个新内核并重新启动? 如果出现错误怎么办? 假设您有幸拥有PXE型恢复选项,那么您通过重新映像系统损失了多less时间?
另外,如上所述,如果在多台服务器上出现问题,则使用这种技术进行远程实验可能会是一场灾难。 在testing中,您是否使用了与DC相同的硬件? 在一台机器上玩的很好,可能在另一台机器上打不开。
只是我的$ 0.02。
这是很久以前,但Ksplice可以为你做的是很多….
安全性得到提高,因为它允许在不停机的情况下进行修补,这在高度敏感的环境中可能非常重要。
改进的稳定性,因为它允许在没有停机时间飞行修补,事情可以改善,而没有时间重新启动可用。
改进的性能,因为它允许在没有停机时间的情况下进行修补,只需要你需要做什么就可以做到。
因为它允许在不停机的情况下进行飞行修补,所以改进的亲活动,因此可以设置一个热点新补丁的testing场,同时容易恢复到之前的状态。