有人會(huì)說(shuō),我買(mǎi)我自己的物理機(jī)可以做上面的優(yōu)化,效果比主機(jī)好。這是真的嗎?現(xiàn)實(shí)是:絕大多數(shù)公司管理服務(wù)器的數(shù)量不多,不足以建立相應(yīng)的團(tuán)隊(duì);同時(shí)因?yàn)榉?wù)器的數(shù)量(如不低于百萬(wàn)單位)、硬件和軟件的優(yōu)化環(huán)境不理想。
有人會(huì)說(shuō),我買(mǎi)我自己的物理機(jī)可以做上面的優(yōu)化,效果比主機(jī)好。這是真的嗎?現(xiàn)實(shí)是:絕大多數(shù)公司管理服務(wù)器的數(shù)量不多,不足以建立相應(yīng)的團(tuán)隊(duì);同時(shí)因?yàn)榉?wù)器的數(shù)量(如不低于百萬(wàn)單位)、硬件和軟件的優(yōu)化環(huán)境不理想。
下面就上述要點(diǎn)展開(kāi)。
虛擬化層和宿主機(jī)內(nèi)核的故障率如何降低?
這主要通過(guò)自主掌控虛擬化層和宿主機(jī)內(nèi)核,這整套內(nèi)核來(lái)實(shí)現(xiàn)。
1. 自主維護(hù)Linux內(nèi)核
商業(yè) Linux 發(fā)行版(如 RHEL6.X)的內(nèi)核其實(shí)有不少 BUG,因?yàn)閮?nèi)核太龐大、太復(fù)雜,BUG 修之不盡而且不斷涌現(xiàn),只要 內(nèi)核有人在改動(dòng),更多的 BUG 就還在路上。
但我們自己維護(hù)的 Linux 內(nèi)核,我們可以迅速修復(fù)并應(yīng)用進(jìn)實(shí)際環(huán)境,不像商業(yè) Linux 要等待較長(zhǎng)的發(fā)布周期。
我們還可以預(yù)先研究別人犯過(guò)的錯(cuò)誤,把更新補(bǔ)丁打入現(xiàn)在的內(nèi)核;還可以屏蔽不必要的特性和改動(dòng)避免 BUG 的引入。
簡(jiǎn)單講,自主維護(hù)內(nèi)核很靈活,最終質(zhì)量不低于商業(yè) Linux 發(fā)行版。國(guó)內(nèi)有海量服務(wù)器的公司如騰訊和阿里都運(yùn)行自主維 護(hù)的 Linux 內(nèi)核。
2. 免重啟熱補(bǔ)丁技術(shù)
這是指通過(guò)二進(jìn)制指令修改的方式修改 Linux 內(nèi)核達(dá)到修復(fù)的目的。
結(jié)合自主維護(hù) Linux 內(nèi)核,如果發(fā)現(xiàn)了 BUG 并制作修復(fù)補(bǔ)丁后,可以免重啟應(yīng)用到生產(chǎn)環(huán)境的 Linux 內(nèi)核里。
這點(diǎn)目前主流 Linux 廠商不提供。但
云平臺(tái)廠商可以自己做。
3. 熱遷移技術(shù)
特殊情況下的熱遷移,可規(guī)避尚未完全定位的內(nèi)核問(wèn)題。
這三點(diǎn)的綜合效果,使得某些云廠商,因?yàn)閮?nèi)核原因造成的宕機(jī)低到可以忽略。幾萬(wàn)臺(tái)服務(wù)器半年可以減少到一兩次。
可能有些早期用戶應(yīng)該比較有感覺(jué),幾年軟件宕機(jī)不少,給客戶推送的故障報(bào)告不時(shí)就和內(nèi)核有關(guān),但經(jīng)過(guò)一年半載的工作 后,現(xiàn)在幾乎沒(méi)有了。