PUB:20141125 Four ways Linux is headed for no-downtime kernel patching

@coloka
This commit is contained in:
wxy 2015-01-13 20:22:59 +08:00
parent f3196a73ff
commit 59a96f8971

View File

@ -1,10 +1,13 @@
不重启不当机!四招搞定Linux内核热补丁
不重启不当机!Linux内核热补丁的四种技术
================================================================================
![Credit: Shutterstock](http://images.techhive.com/images/article/2014/10/patch_f-100526950-primary.idge.jpeg)
供图: Shutterstock
多种技术在竞争成为实现Linux内核热补丁的最优方案。
有多种技术在竞争成为实现Linux内核热补丁的最优方案。
没人喜欢重启机器,尤其是涉及到一个内核问题的最新补丁程序。
为达到不重启的目的目前有3个项目在朝这方面努力将为大家提供内核升级时打热补丁的机制这样就可以做到完全不重启机器。
### Ksplice项目 ###
@ -21,7 +24,7 @@ Kgraft和Ksplice在工作原理上很相似都是使用一组diff文件来计
### Kpatch项目 ###
Red Hat也提出了他们的内核热补丁技术。同样是在今年年初 -- 与Suse在这方面的工作差不多 -- [Kpatch][5]的工作原理也和Kgraft相似。
Red Hat也提出了他们的内核热补丁技术。同样是在2014年初 -- 与Suse在这方面的工作差不多 -- [Kpatch][5]的工作原理也和Kgraft相似。
主要的区别点在于正如Red Hat的Josh Poimboeuf[总结][6]的那样Kpatch并不将内核调用重定向到老版本。相反它会等待所有函数调用都停止时再切换到新内核。Red Hat的工程师认为这种方法更为安全且更容易维护缺点就是在打补丁的过程中会带来更大的延迟。