【編者按】
作為兩大主流開源云平臺,OpenStack和CloudStack各具優勢。CloudStack安裝和部署都很方便,OpenStack框架相對開放靈活,可以根據用戶需求方便的進行開發定制。本文中,博主通過自身基于OpenStack搭建公司私有云平臺的實戰經驗 ,對OpenStack實施私有云落地的需求進行梳理,綜合產生個人的觀點和評價并和讀者分享。
之前一段時間的工作,基于OpenStack搭建公司私有云平臺。
借此機會梳理了一下OpenStack實施私有云落地的需求,以饗各位讀者。
私有云落地需求:
1.為公司WEB服務提供彈性負載均衡,降低硬件消耗
作為互聯網服務,在訪問高峰時段和低谷時段,流量差異很大,各服務的高峰時段和低谷時段也處于不同時間點上,例如A服務的訪問高峰期在晚上8點到11點,B服務高峰期則處于白天10點到15點。
若以傳統架構,則需要為2個服務的高峰值準備足量的運算資源,服務器消耗則為A+B所需最大資源,才能保證高峰期兩個服務正常運行。換用云平臺方案后,可以對資源進行細粒度管理,將物理服務器資源,分解成虛擬機進行資源管理。在A服務高峰期,可以相應關閉B服務相關實例,以減少計算資源消耗。
線上服務,可以考慮使用虛擬機或容器技術實現。
2.為公司研發和測試,提供虛擬機資源
對于互聯網公司線上服務來說,RD和QA都需要一套線下環境,來對真實場景進行開發和模擬測試。
開發和測試環境,需要完全的隔離,基于此種考慮,使用虛擬機來做開發和測試環境目前是最好的選擇。
3.解決運維部門對資源的分配瓶頸
有云平臺之前,WEB應用的上線和下線,都需要運維人員來部署和回收服務器資源,對于運維部門來說,需要有專人解決機器的安裝和配置、DNS設置、前端代理服務器的配置等問題。研發部門則需要在研發流程結束后,進入排單流程,等待運維將機器安裝并調試,交付之后,才能進行WEB應用上線。
云平臺可以以模板的形式,將虛擬機做成模板,需要上線的時候,可以迅速以此模板為基礎,克隆一臺新的VM進行交付。回收資源的時候,刪除相應VM即可。
4.為公司內部提供文件服務器,提供公司內部員工上傳和下載文件的權限,用于公司內部文件共享,建立公司內部知識庫體系。
私有云落地選型
OpenStack & CloudStack
作為兩大主流開源云平臺,OpenStack和CloudStack各具優勢。
CloudStack是從cloud.com公司的產品轉向開源,從產品化方面來說,本身是個比較成熟的產品,安裝和部署都很方便,且提供了完整的升級流程,可以便于將來和社區保持同步。然而隨著社區版本的不斷更新和兼容各家產品,CloudStack也逐漸變得龐大。以公司搭建私有云落地方案而言,很多功能無用且顯得多余。
OpenStack開放至今,并沒有完成產品化發行,優勢在于其插件化的框架,因為技術框架允許自由的選擇可用插件,私有云落地方案中,可以只選擇需要的組件進行安裝。因為框架允許插入不同組件,所以OpenStack社區也獲得了更多廠商的支持,社區活躍度也比較高。在企業實施落地方案的時候,可以有更多的選擇余地,對遇到的問題,也有了更多更快的響應。
考慮到將來公司還需要進一步開發所需要的組件,并且需要對云平臺進行針對性的調優,例如虛擬機的IO、CPU綁定等操作,而不只是依賴于開源社區的版本,OpenStack的框架則是更好的選擇。CloudStack如果進行二次開發,代碼未合并入社區版本的時候,升級則需要再次merge代碼,重復工作比較多。OpenStack則可以做成插件,在升級OpenStack版本的時候,保持插件的可用。
由于OpenStack的產品化不成熟,搭建落地到將來的升級,以及后續的二次開發,都需要進行不少的開發和測試人力投入。對于互聯網公司來說,因為有著比較成熟的運維團隊和研發團隊,開發和測試在人力資源成本方面計算,并不是特別大的開銷。
最終的選擇,更傾向于OpenStack。
KVM & XenServer & VMWare
OpenStack原生對KVM支持更加完善。
KVM也是比較成熟的虛擬化平臺,于2006年寫入Linux內核,且在Redhat 6以后,轉向對KVM的支持而非之前大力推廣Xen的虛擬化方案。
KVM相比較于Xen,更小,更輕量級,更方便管理。
XenServer是Citrix將之前的商業版本開源而來,其產品成熟,功能和管理界面更加友好。但OpenStack對于XenServer的管理卻并不完善。
VMware是商業軟件,在虛擬化平臺中,目前應該屬于IO和穩定性都最優化的方案。OpenStack中,因為VMware本身提供了相應的driver,對VMware的支持也比較成熟。最終放棄VMware的原因,是因為其授權比較昂貴。
目前暫定的方案,以KVM和XenServer為主,具體使用哪種方案,需要后續進行各版本的測試對比。
CentOS & Ubuntu
OpenStack社區對Ubuntu支持比較完善,Ubuntu更新速度快,內核版本比較新,可以支持更高版本的KVM,對OpenStack使用者來說,Ubuntu可以提供更好的性能。
就系統的穩定性而言,CentOS來自Redhat商業版本的重新編譯,穩定性和系統優化以及兼容性方面,CentOS有著比較完善的測試和發型流程。CentOS 7 以后,也換用了 Linux 3.x內核版本。
鑒于系統可靠性的選擇和之前公司的技術積累,還是選用CentOS系列,比Ubuntu管理更為方便。
結論
目前公司選型,基于OpenStack+KVM/XenServer+CentOS6.5/7.0 實施私有云落地。
KVM和XenServer的選擇,最終還需要進一步測試才能決定使用方案。
評價
個人意見,OpenStack和CloudStack作為兩大開源云平臺,各自有其擅長的領域。
KVM、XenServer、VMware之爭也是各執一詞。
真正選項到實施落地方案,還是要看公司內部技術積累+將來的技術投入+財力來進行選型。
博文出處:http://blog.csdn.net/u011650565/article/details/43372195