很多人聽說過云計算,這已經(jīng)不算新名詞了。還有一個詞叫虛擬化,它是云計算的奠基了。本文嘗試用通俗易懂的方式,講述OpenStack是什么。
OpenStack是什么?
OpenStack是云計算管理的工具,就像k8s之于Docker。OpenStack對服務(wù)器的虛擬化依然是調(diào)用底層操作系統(tǒng)的虛擬化接口(hypervisor),其重點在于管理,關(guān)注的是對虛擬機的管理。
可以說,OpenStack是一款開源的虛擬機管理軟件,既然對虛擬機管理,那么虛擬機需要的資源,比如CPU/內(nèi)存/磁盤/網(wǎng)絡(luò)/鏡像等都在其功能范圍內(nèi),還有為了保障虛機的安全做的鑒權(quán)/快照/遷移等服務(wù)(組件)。
為什么要用OpenStack
1. 云計算的趨勢
云計算的一個本質(zhì)就是把物理設(shè)備虛擬化,通俗的講就是在物理機上部署虛擬機。為什么要使用虛擬機?首先,現(xiàn)在的服務(wù)器CPU內(nèi)存多得不行,比如一臺服務(wù)器就128核1T的RAM,每個業(yè)務(wù)都使用物理機簡直是浪費。其次,機房的建設(shè)周期長,成本高,比如你公司今天要建個網(wǎng)站,你就要下訂單買服務(wù)器、找機房托管、機房給你施工布線、服務(wù)器初始化。。。簡直把人煩死。最后,虛擬機容易定制化,想要多少內(nèi)存要多少臺鼠標(biāo)點一點就出來了。既然虛擬機這么重要,那么就要有管理軟件吧。
2. 方便對虛擬機的管理
我們自己在PC上折騰的虛擬機,一般都是用虛擬機軟件,比如VirtualBox/VMware,甚至有用Hyper-V, 從而能夠在windows體驗linux操作系統(tǒng)甚至macOS操作系統(tǒng)。回憶一下,你創(chuàng)建虛擬機是不是一臺一臺的創(chuàng)建,還需要規(guī)劃分配多少CPU多少內(nèi)存多少硬盤的。那么想象一下,在一個數(shù)據(jù)中心,一次要創(chuàng)建100臺虛擬機,你怎么辦?這時候虛擬機管理軟件應(yīng)運而生。批量生成虛擬機的軟件統(tǒng)稱MANO,即操作維護(hù)平臺。后續(xù)有機會將展示如何使用MANO創(chuàng)建虛機。有興趣可以關(guān)注我。
3. 開源、免費
我們也知道市面上云平臺管理軟件應(yīng)該很多,但是為什么要使用OpenStack呢?因為“免費”,是真的免費。任何人可以從網(wǎng)上下載到OpenStack的軟件,然后安裝使用,比如我前面一篇文章寫的。實際上,國內(nèi)的大部分云計算平臺都是使用OpenStack為基礎(chǔ)改造優(yōu)化的,比如華為的FusionSphere 、騰訊的TStack云平臺、華三的云操作系統(tǒng)等,國內(nèi)的涉及云計算的大廠,大都是OpenStack的基金會的會員。我這里說大廠使用開源的東西,并不代表這些云廠家不厲害,實際上,OpenStack從開源版本到可商用的穩(wěn)定版本,需要花費企業(yè)大量的人力去改造,包括代碼、架構(gòu)、邏輯和UI的優(yōu)化,我們現(xiàn)在使用公有云業(yè)務(wù)的時候,看不到界面上有太多OpenStack的風(fēng)格,這是UI經(jīng)過了重構(gòu)。畢竟OpenStack的Dashboard(就是OpenStack管理界面)還是有很多可優(yōu)化的地方。
華為FusionSphere官網(wǎng)
4. 和AWS兼容
OpenStack可以說一直是AWS的追隨者。AWS就是亞馬遜云平臺。AWS的設(shè)計思路、功能都極大促進(jìn)的OpenStack的發(fā)展(說得好聽的叫借鑒,不好聽的叫抄,軟件設(shè)計上畢竟idea想法最重要)。因為追隨AWS,很多開發(fā)者有意兼容AWS的API接口。所以很多組件可以直接對接AWS,