閒聊雲服務計算技術--OpenStack

這個話題是我一直想寫的內容,畢竟裏面包含了我一部分青春在裏面,仍是要簡單記念一下的。因爲雲服務的技術發展實在是太快,因此要寫完全部本身接觸過的相關內容單靠1,2篇文章,會顯得篇幅過長了,因此準備依靠一個系列來完成全部內容。安全


與雲服務結緣
微信


在2012年開始,我開始和團隊搭建ECG本身的Selenium Grid的集羣(這裏面也能夠寫蠻多內容的,我本身用Perl作的第一個實際項目,將來有機會介紹給你們),最早咱們是採用的VMware workstation來生成和管理咱們的VM,當時機房在歐洲的Amsterdam, 坦白的說,用起來仍是不錯的。不過呢,隨着咱們有更多的美洲項目,在歐洲機房來跑服務,速度上有一些力不從心了。因此開始準備找新的解決方案。網絡

13年的時候 ,雲計算其實已經很是火了,正在不斷地改變傳統IDC的結構,逐步取代以昂貴硬件爲中心的數據中心,從新定義了計算、存儲以及網絡。我也開始試用一些AWS的公有云服務(儘管在國內用得並不方便),將本身的一些應用服務放在上面,甚至咱們也在利用AWS提供的服務來作持續集成發佈。不得不說,雲服務尤爲是IaaS層,AWS是最領先的,基本已經成爲了行業的標準,因此國內的不少雲產商都是從「模仿」AWS開始的。但AWS畢竟是公有云,即使AWS技術先進,但並不開源,只能用它的服務,不能構建本身的私有云。因此對於一些大公司而言,考慮安全性,他們更願意建設本身的私有云,把東西放在本身的硬件上,使用本身的私有網絡。 架構


進入OpenStackoop


以前不是說,AWS不開源嗎?這可好,Open Stack就是模仿AWS作出的一套開源架構,正如當年Google的三駕馬車 GFS, MapReduce, Bigtable, 對應開源社區作出了hdfs, Hadoop和HBase的感受。雲計算

Open Stack經過將異構的物理資源抽象成統一的虛擬資源池,而後根據用戶的需求再進行靈活的虛擬資源分配,爲用戶提供虛擬資源服務,即提供IaaS服務,其目的是爲了提升資源利用率。其底層的核心技術有:虛擬化技術,實現資源抽象;資源動態調度技術,高效分配虛擬資源;高速網絡通訊技術,實現用戶與雲平臺的順暢交互;安全技術。操作系統

Openstack的出現,終於讓咱們看到了曙光,有一個開源的雲基礎資源管理平臺項目,各家企業可以利用Openstack快速構建本身的私有云, 那時候,各大私有云廠商都會考慮Openstack,好比國內的華爲,爲OpenStack仍是貢獻了不少不少代碼的,正是愈來愈多的企業客戶對私有云的需求,推動了Open Stack社區的發展。rest

做爲互聯網的元老企業,eBay在這一塊仍是肯投入的,因此基本從13年開始,內部已經在推Open Stack了,也逐步推出了自身的基於Open Stack的私有云服務。也利用這個機會,結識了一些eBay當時作OpenStack的牛人們。 記得內部推出私有云後,咱們也將Selenium Grid集羣搬到上面來,雖然過程當中也有不少坑,可是解決了我前面提到的地域訪問問題,畢竟機器在美國,仍是比從歐洲走快很多的。cdn


Open Stack目前的問題
資源


雖然我前面花了幾大段吹了吹Open Stack,可是實際上若是要將Open Stack搬進來本身玩,放在生產環境上用,仍是有不少技術挑戰要解決的,好比高可用CAP方案,系統監控,故障隔離,快速部署等等,這些都沒有現成的方案,須要本身二次開發使用。


下集預告


Open Stack解決了基於虛擬機的虛擬化,但在實際使用場景中,咱們使用虛擬化技術實際上是爲了按需分配資源來完成服務的部署和使用,同時對服務所依賴的環境進行隔離,不被其它服務感知或干擾。爲何不考慮讓多個虛擬機公用一個操做系統內核,只隔離開服務運行環境同時控制服務使用的系統資源呢?基於容器的虛擬化就是這樣一種技術,因此在下一篇,我會來和你們聊聊這塊技術實現的表明- Docker。


掃描二維碼或手動搜索微信公衆號【架構棧】: ForestNotes

歡迎轉載,帶上如下二維碼便可

相關文章
相關標籤/搜索