【转】《从入门到精通云服务器》第六讲—OpenStack基础
前五期的《從入門到精通云服務器》受到了廣泛好評,收到留言,有很多讀者對云計算相關的技術非常感興趣。應觀眾要求,我們這期要安利一條純技術內容。準備好瓜子、花生,隨小編一起進入OpenStack 基礎知識大講堂吧。
了解OpenStack
OpenStack 是最火的開源軟件之一,活躍度呈指數級別上升;它是一組開源項目,誕生之初是由兩個項目組成,目前十幾個項目;它是一個云操作系統,OpenStack is a cloud operating system that …
OpenStack 管理的資源不是單機的而是一個分布的系統,把分布的計算、存儲、網絡、設備、資源組織起來,形成一個完整的云計算系統;OpenStack 也提供一個 UI,這里包括一個圖形化的 UI:Horizon,也提供命令行的界面,還提供了一套 API 支持用戶開發自己的軟件……
OpenStack 是用 Python 實現的軟件。
分布式系統的邏輯非常復雜,所以用更高級的語言去做,可以把精力更多的放在邏輯上,而不是說糾結與底層的細節,因為高級語言的底層機制已經優化的非常好了,C/C++ 寫出來的東西性能不一定就真高;事實上在分布式系統這個領域,有很多很好的例證,比方說 OpenStack 用 Python 寫的,Hadoop 使用 Java 寫的,UC Berkeley 的 Spark 使用 Scala 語言寫的,Twitter Storm 是用 Clojure 語言開發的,這些都是很著名的分布式系統,都是用的更高層的語言而不是 C
OpenStack的特點
OpenStack 是一套框架 —— API,它有兩個特點:
它是一個中間層,可以創建、管理和銷毀虛擬機,但是要完成這些操作需要依賴于第三方的 Hypervisor,通過這個 Hypervisor 去完成虛擬化的工作,OpenStack 并不能自己去提供一個虛擬化的運行環境,OpenStack 有個組件叫 Cinder(用來提供塊存儲服務的),但是 OpenStack 自己并不能進行數據的存儲和讀寫,它需要依賴一個實際的塊存儲設備的支持,這個設備可以是一個分布式的存儲系統,比如說 Ceph,也可以是一個存儲設備,比如說 EMC 的 SAN,也可以是存儲服務器的本地硬盤,但是它必須依賴一個存儲設備的支持,OpenStack 本身并不具備這個功能。OpenStack 是一個中間層。
框架有一個很重要的特點,那就是它能提供一批 API 去支持應用的開發,這也是我們業內對框架的一個定義,OpenStack 當然也有這個特點,云計算的愿景就是讓用戶能夠像用電一樣去使用計算,OpenStack 的設計也是朝著這個愿景去做設計的,但是實際上我們平時是不能直接用電的,我們需要用的是電冰箱、電腦、電視等等這些電器。同理,對于云計算來說,提供 API 去支持開發應用這個事情就合情合理的非常的重要了,具有完備的 API 是 OpenStack 的突出優點。
OpenStack ≠虛擬化軟件
第一,它不是虛擬化軟件(必須知道這點),OpenStack 雖然管理虛擬機,但不具備虛擬化的功能,它給上層提供一個虛擬化的運行環境,必須得依賴一個第三方的虛擬化軟件來實現,比如默認支持的 Linux 內核虛擬機,裝完 Linux 之后就自動帶了,集成到 Linux 內核里面了(KVM),另外它還支持 Xen,還支持微軟的 Hyper-V,支持 VMware 的 Vshpere,還支持像 Linux Container 和 Docker 這樣輕量級的虛擬化技術。總之,OpenStack 本身不提供虛擬化,依賴第三方軟件。
需要了解的第二層含義:這個云化和虛擬化實際上是不一樣的,云 != 虛擬化,云化的目的是為了實現效用計算,彈性計算,動態資源調度,多租戶等這樣的一些特性;而虛擬化只是實現云計算的這些特性中的一個技術手段而已,而且它不是必需的。比方說 IBM 的 Softlayer 是 IBM 主推的云服務之一,它中間有一個非常大的特點就是,它支持 Bare Metal Server,直譯過來就是 “金屬裸機”,也就是 Softlayer 在上面不做虛擬化,而是直接用物理服務器來實現云,直接給用戶、租戶提供的就是物理服務器,Softlayer 也可以在上面來實現多租戶 、彈性計算等等特性。總之,Softlayer 沒有虛擬化,但是 Softlayer 也做了云。第二個例子是 OpenStack 也有一個項目叫作 Ironic,是為了通過管理 “金屬裸機”來實現云從而提出的項目。
OpenStack資源管理
OpenStack 作為一個操作系統,管理資源是它的首要任務;
OpenStack 管理資源主要有三個方面:計算、存儲和網絡。
OpenStack 對資源進行管理,并且以服務的形式提供給上層應用或者用戶去使用。這些資源的管理是通過 OpenStack 中的各個項目來實現的。
其中計算資源管理相關的項目是 Nova(又稱為 OpenStack Compute);
存儲相關的主要有塊存儲服務 Cinder、對象存儲服務 Swift、鏡像存儲服務 Glance 這三種;
與網絡相關的主要是一個和軟件定義網絡相關的項目叫作 Neutron;另外,Nova 中間有一個管理網絡的模塊叫作 Nova Network,作為一個比較穩定的遺留組件仍在 OpenStack 里面和 Neutron 并存,我們在小規模部署里面經常為了追求這種穩定,并且減少工作量會去使用 Nova Network 這樣的一個組件來對網絡資源進行管理。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的【转】《从入门到精通云服务器》第六讲—OpenStack基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自从装了windows神器,再也不用羡慕
- 下一篇: 浮点型数据的输出格式