你要如何選擇RHEL CentOS系統(tǒng)
在如此之多的操作系統(tǒng)中,如何選擇一個(gè)你最適用的操作系統(tǒng)呢,選擇錯(cuò)了一個(gè)操作系統(tǒng)會有很大的麻煩的。下面我們就來看一看下面這個(gè)故事。
兩臺過百萬的硬件集群設(shè)備上,跑著某個(gè)證券交易所的一個(gè)業(yè)務(wù)。然后你選了debian和CentOS系統(tǒng), 很牛X的對你的老板說,看,我給公司省了多少萬,這種東西這么容易,自己都可以搞定的,Red Hat/Novell公司的售后支持啥都不懂,還不如自己用google,網(wǎng)上論壇或者郵件列表問呢。
老板贊許的看著你,心想你這個(gè)手下真的能力很強(qiáng),這下今年IT基礎(chǔ)建設(shè)的預(yù)算,又可以有一筆錢節(jié)省出來挪作他用了。
某天,你運(yùn)氣不好,CentOS系統(tǒng)出了問題,然后你們公司緊急要求服務(wù)器廠商的人,存儲廠商的人,oracle的人,應(yīng)用開發(fā)公司的人都緊急到場,開協(xié)調(diào)會討論排錯(cuò)問題,而且要求到場的都是各個(gè)原廠商的資深技術(shù)專家。 這套集群上每天交易開盤,有大概50萬股民會上來做交易(做股票的同學(xué)都知道,一個(gè)證券公司如果有開戶交易股民50萬,那是一個(gè)小證券公司), 現(xiàn)在離天亮還有7個(gè)小時(shí)。
一大堆人,包括你在內(nèi),你的老板在內(nèi),都忙起來勒。大家壓力都很大,因?yàn)槿绻也怀龉收显蚝徒鉀Q方案,基本上你們公司的麻煩大了,碰巧這幾天股票不穩(wěn)定,股民情緒本來就不好。
服務(wù)器和存儲廠商的人做了診斷,拿出勒診斷報(bào)告,排除了硬件問題,Oracle的牛人拿出了詳細(xì)的診斷報(bào)告,排除勒數(shù)據(jù)庫的問題, 業(yè)務(wù)應(yīng)用開發(fā)商也是如此。
最后,大家的目光聚焦到了你的身上, 沒錯(cuò),就是你。 你的確從一個(gè)技術(shù)人員的角度,給公司推薦了成本低廉的方案,但是你的過于自信和欠缺成熟的考慮,現(xiàn)在要讓你付出代價(jià)勒。
我不知道這里同學(xué)知道不知道,一個(gè)正常的小證券公司,前一天的交易數(shù)據(jù)量,在清算后,為了排錯(cuò),做一次完全的數(shù)據(jù)移動前前后后要花多少時(shí)間? 2個(gè)多小時(shí) ! 光纖柜柜對倒 !
你還有4個(gè)小時(shí),你的老板,老板的老板,那個(gè)負(fù)責(zé)證券公司業(yè)務(wù)的老總,意料之中的出現(xiàn)在你面前,問你,為什么CentOS系統(tǒng)廠商沒有來?為什么不參與排錯(cuò)? 你無語了。你的老板給你打圓場, 如此這般的解釋勒一下, 你的老板的老板嚴(yán)厲質(zhì)問你老板還有你,他說: 我們?nèi)边@些錢么?我們需要你們的個(gè)人的小聰明么?還有4個(gè)小時(shí)開盤,到時(shí)候CentOS系統(tǒng)還沒有弄好,你們都等著股民打上門吧。
這不是一個(gè)搞笑的故事,這是一個(gè)真實(shí)的故事,發(fā)生在2004年的國慶節(jié)以后, 我就是那個(gè)服務(wù)器廠商在現(xiàn)場的一個(gè)顧問, 故事中的"你" 是某個(gè)證券公司數(shù)據(jù)中心的IT運(yùn)維經(jīng)理,那天,大家的運(yùn)氣都不錯(cuò),而且各個(gè)原廠商來的技術(shù)專家都非常資深,在第二天開盤的前3個(gè)小時(shí)內(nèi),我們找到并排除了問題,并且重寫了數(shù)據(jù)移動的腳本,將數(shù)據(jù)移回服務(wù)器花了1個(gè)半小時(shí),然后順利撐過了這一天的交易。
那兩臺系統(tǒng)上跑的就是CentOS系統(tǒng). 故障的原因是,CentOS系統(tǒng)雖然在源代碼級和RHEL非常接近,但是CentOS系統(tǒng)組織沒有和任何硬件廠商有戰(zhàn)略合作,他們編譯出的二進(jìn)制系統(tǒng),也就是CentOS linux,和RHEL 企業(yè)版有至少10%以上的差異,主要是編譯過程的工程手段不同,以及硬件廠商的特定patchset造成的,另外CentOS系統(tǒng)組織作為一個(gè)非營利性的組織,無法對編譯出的CentOS linux二進(jìn)制系統(tǒng)在各種平臺上做廣泛的和完整的測試,所以在上面這個(gè)故事中,由于我們在每臺服務(wù)器上都部署了光纖雙環(huán)路,兩塊FC HBA卡需要在linux下面做綁定,CentOS linux在安裝了廠商提供的 FC HBA驅(qū)動之后,CentOS linux并沒有在這種卡上做完整測試,而且更要命的是,那個(gè)提供FC HBA卡的硬件廠商也沒有對CentOS做測試和認(rèn)證,所以CentOS系統(tǒng)只能支持這種FC HBA上芯片家族中的一種,但是卻把這兩塊卡當(dāng)作那種芯片識別出來而且去驅(qū)動勒,由于是雙環(huán),卡之間除了failover還需要做load balance,因此觸發(fā)勒CentOS和驅(qū)動之間的兼容性問題,導(dǎo)致系統(tǒng)出現(xiàn)問題。
我通過修改卡廠商的srpm包,調(diào)整了驅(qū)動源代碼里面的參數(shù),冒險(xiǎn)嘗試了一下重新編譯掛到了CentOS系統(tǒng)上,結(jié)果運(yùn)氣好被蒙對,驅(qū)動本身的確可以支持相近系列的芯片,但是需要在驅(qū)動源代碼的參數(shù)上做調(diào)整且重新編譯。我, 后來和那個(gè)IT運(yùn)維經(jīng)理成為了關(guān)系非常不錯(cuò)的朋友,一直到現(xiàn)在。
我的邏輯是,非商業(yè)版本的linux,自己家用玩玩是沒有問題的,但是只要你不是寫這個(gè)linux的人或者你對這個(gè)linux的熟悉程度遠(yuǎn)遠(yuǎn)沒有把握,你就不要盲目自大去把它用在關(guān)鍵的生產(chǎn)環(huán)境。 里面的細(xì)微末節(jié)你是根本不知道的,而且不可能指望每次都像上面這個(gè)故事的主人公運(yùn)氣這么好,弄不好會出人命的。
中國和國外的證券公司和期貨公司用redhat RHEL很普遍,他們有些公司的技術(shù)人員linux水平也都是不錯(cuò)的,你看哪個(gè)敢用沒有專業(yè)服務(wù)的?
當(dāng)然,一些不重要的網(wǎng)站之類的,用debian/slackware/CentOS系統(tǒng)都是不錯(cuò)的選擇。
希望大家能夠正確認(rèn)識各個(gè)版本的優(yōu)劣,精確選擇合適的linux.
【編輯推薦】