在最近這幾年來,Fedora Core Linux, Redhat Enterprise, CentOS 似乎已經形成一種穩定的關係。
早在大家所熟知的Redhat 9時代,他似乎就成了Linux的代名詞。而到現在,CentOS帶給我的不僅是因為Opensource所能得到的自由度,更有商業化的Redhat Enterprise的穩定度。
簡單地說,CentOS就是支持開放原碼的社群將RHEL裡非開放的套件自行撰寫換成開放的套件,然後重新取的名字。
對於已經熟悉的系統管理者,就不用介紹那樣多了,還是看看到底增加了什麼吧。
http://www.redhat.com/rhel/features/
這一代最主要的進步就是使用了Xen 3.0,以此達到全虛擬化(Full Virtualization)或半虛擬化(Para Virtualization)的功能。早期我也是使用VMware ESX Server來建立虛擬機器的,不過後來由於Xen大幅度地提高了虛擬化的效能,所以我就跳槽了。在使用及管理上,雖然沒有如ESX 3那樣華麗的操作介面,不過文字介面快速管理的方便性,對系統管理者要在極短時間內完成很多主機的任務才是比較重要。
目前雖然我是使用Fedora 6 Xen作為我們PC Cluster的底層OS,不過也是相當穩定。半虛擬化只是單純利用區隔Process記憶體位置的方式(他叫做Domain)來達到目的,所以在GuestOS裡跑的程式,實際上是和在實體機器上跑一樣。也因此半虛擬化有限制就是必須和實體機器的OS一樣。反之全虛擬化就利用了Intel-VT/AMD-V的虛擬化技術,讓GuestOS可以突破這種限制。但相對的因為也有虛擬層驅動,所以效能當然就一定會稍微慢一點。
可是會有人問說,這樣有啥好處?在大量配置的環境中,如Cluster,除非早期就確定好架構,不然一到要改變配置的時候,可真是會令人叫苦連天!有了虛擬機器,我可以輕易地遠端控制,啟動或關閉。而對我最大的效益,就是如果老闆忽然說要加機器,或是有特殊需求,我可以馬上就生出來而不必擔心實體機器不夠。如果你的機器常壞掉,那只要硬碟讀的到,虛擬機器可以利用其他實體機器快速還原,將硬碟檔拷貝出來然後啟動就好了。針對高效能運算,會有人說幹嘛一定要用虛擬技術。由於半虛擬化的特性,並不會減低系統效能,所以你更可以規劃出比較適合你環境的節點數量。因為節點可以彈性,你就可以隨心所欲地將他們往某個計畫擺,而不用擔心兩個計畫裡使用的軟體會有衝突。
在安裝的時候,有個地方是選擇套件,注意到幾項他和Fedora 6不一樣的地方:
程式開發->相容舊式軟體開發:他將函式庫的部分拿到了 基礎系統->舊式軟體支援
VNC-Server從系統工具拿到 伺服器->網路伺服器
CentOS 發展那麼久了,我現在看妳文章才知道ㄝXD
回覆刪除我去看了一下,目前越來越多OS改用CentOS了ㄝ,已經不再灌Fedora了。
Kiwi妳有沒有時間再寫一寫到底哪一個的效能比較好或有何優缺點(除了你上面講的)
其實效能上是根本不可能有差別的啦~畢竟他們根本是同一個Linux Distribution。
回覆刪除你就把Fedora當成他的開發版,RHEL當成是穩定版,而CentOS根本就是跟RHEL一樣,只是不用錢而已。
如果硬要說差異的話,Cluster套件是RHEL的一個賣點,也就是說Fedora沒有包相關套件。目前RHEL/CentOS 5的套件版本大略和Fedora 5~6之間相同。
也就是說,你的選擇應該會在開發版及穩定版的差別。如果你只是玩玩,可以用Fedora,Xen專用的Virt-Manager管理介面比較新操作比較順。
如果你要跑正式的服務,或是要玩Cluster,可以用RHEL/CentOS。如果你是大台一點的機器,上面有SCSI或是RAID,就基本上不能用Fedora了。
那RHEL要啥好處?有些應該是因為OEM隨機安裝的,大多自己維護機器的話不會再花錢去買吧。雖然說RHEL提供了一張硬體相容列表,如果列表裡有的機器卻不能用,他們要負責的。但我想CentOS因為只是換掉一部份套件,基本上擁有與RHEL相同的相容能力。此外RHEL有個Web介面(RHN)協助你管理你的機器的型號,OS資訊,他的up2date會將資料傳過去RHN。他們也提供了咨詢服務,但其實也不過是幫他們做bug report而已。有個技術後盾...一般沒技術力的商業公司都還是會吃這一套,所以Redhat雖然虧,也沒虧多少。
你要玩不同視窗介面的感覺,還是建議你玩SuSE吧!不然如果真的想要很多廣大的中文社群,良好的開發環境,套件維護,可以選Ubuntu(Debian)。
推薦人: 236
回覆刪除----
謝謝kiwi對centOS詳細的介紹 , 讓我對它有了一點了解 (個人是還沒灌過)
但您有提到這段 "如果你要跑正式的服務,或是要玩Cluster,可以用RHEL/CentOS。如果你是大台一點的機器,上面有SCSI或是RAID,就基本上不能用Fedora了。"
是因為Fedora較不穩的關係嗎? 還有為何機器有SCSI或陣列就不能用Fedora? (因為我都是用Fedora裡的軟體模擬RAID功能,未真正使用實體RAID去測試,所以不太清楚...) 是相容性或未支援?
在這先謝謝您的解答... :)
我相信穩定這個詞對管理員而言,就是說在高負載的情況下,你還是能夠登入操作並且解除可能的狀況或排除障礙。而對於這一點,應該是說所有的Unix都幾乎有這種穩定性。
回覆刪除然而在我以往的經驗看起來,CentOS/Redhat Enterprise似乎對一部份高階伺服器的驅動程式有所最佳化,而也從來都看不到Beta版的驅動,這一點對於要拿來做正式機器,相當重要。反過來Fedora作為Redhat系列的前導產品,有相當多新功能,新驅動都會進行測試,等到穩定才換到Redhat Enterprise/CentOS上,就比較適合當作個人用作業系統,或是純粹測試用。
所以我提到大台一點的機器,是通常這些機器都不會拿來測試用,如果還是裝來玩,當然Fedora也無所謂。但如果是長期正式的機器,還是建議採用CentOS。