自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

使用OpenStack實(shí)現(xiàn)云計(jì)算和存儲(chǔ)

云計(jì)算 OpenStack
Infrastructure as a Service (IaaS) 云平臺種類繁多,例如像 Nebula 和 Eucalyptus 這樣為人熟知的解決方案。而此領(lǐng)域的一個(gè)新來者已展示了其不俗的增長,不僅包括用戶數(shù)量的增長,還包括支持公司的數(shù)量的大量增長。在本文中,我們將了解這個(gè)開源平臺 OpenStack,發(fā)現(xiàn)它是否真的是一種開源云操作系統(tǒng)。

云和公共 Infrastructure as a Service (IaaS) 背后的理念并不算很新。實(shí)際上,Amazon Elastic Compute Cloud (Amazon EC2) 到今年已經(jīng)有六歲了。有所改變的是,現(xiàn)在已經(jīng)主要將 IaaS 作為一種私有云計(jì)算,以滿足具有敏感數(shù)據(jù)的企業(yè)計(jì)算。私有云計(jì)算將 IaaS 的理念應(yīng)用到私有基礎(chǔ)架構(gòu)。雖然這么做缺少公共云(現(xiàn)收現(xiàn)付服務(wù))的經(jīng)濟(jì)優(yōu)勢,但它充分利用了云計(jì)算的核心原理,使企業(yè)數(shù)據(jù)中心內(nèi)有了可伸縮和彈性的基礎(chǔ)架構(gòu)。

讓我們先來快速介紹一下 IaaS 及其基礎(chǔ)架構(gòu),然后再深入研究這個(gè)領(lǐng)先的開源解決方案:OpenStack。

IaaS 和云基礎(chǔ)架構(gòu)

云計(jì)算架構(gòu)常常都著重于虛擬化后按需向用戶公開的一組公共資源。這些資源包括功能各異的計(jì)算資源、持久的存儲(chǔ)資源,以及將這些資源組合在一起并將它們有條件地公開到互聯(lián)網(wǎng)的可配置聯(lián)網(wǎng)資源。

IaaS 實(shí)現(xiàn)的基礎(chǔ)架構(gòu)(參見 圖 1)就遵循了這樣的模型,并添加了其他元素,比如計(jì)量(為計(jì)費(fèi)的目的來說明使用的情況)。物理的基礎(chǔ)架構(gòu)則通過由各種技術(shù)(包括系統(tǒng)管理程序(用于平臺虛擬化)、虛擬網(wǎng)絡(luò)和存儲(chǔ))實(shí)現(xiàn)的虛擬層提取自應(yīng)用程序和用戶。

圖 1. IaaS 的高級視圖

 

IaaS 的高級視圖

 

雖然 OpenStack 是如今最為流行的一種可用的開源云解決方案,但它當(dāng)然不是最早的一個(gè)。實(shí)際上,OpenStack 是在公共和私有領(lǐng)域開發(fā)的兩種舊解決方案的綜合。

由位于圣巴巴拉市的加州大學(xué)的一個(gè)研究項(xiàng)目開發(fā)的 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是更早的一種開源 IaaS 解決方案。其他的解決方案還包括 OpenNebula(一種開源的云計(jì)算工具箱)和 Nimbus(另一種面向 IaaS 云的開源工具箱)。OpenStack 集成了美國國家航空和航天局 (NASA) 的部分 Nebula 平臺和 Rackspace Cloud Files 項(xiàng)目(云存儲(chǔ))。#p#

云計(jì)算的新來者:OpenStack

OpenStack 是 IaaS 空間的一個(gè)新來者,在 2010 年末首次發(fā)布。盡管此解決方案成熟度不夠,而且面市還不到兩年時(shí)間,但是 OpenStack 現(xiàn)已成為了使用最為廣泛的云堆棧之一。OpenStack 不是單一的解決方案,而是一個(gè)不斷成長的開源解決方案套件(包括核心以及新孵化的項(xiàng)目),并共同形成了一個(gè)強(qiáng)大成熟的 IaaS 堆棧。

如 圖 2 所示,OpenStack 構(gòu)建自幾個(gè)核心技術(shù)(多于這里所展示的,但這里所展示的代表關(guān)鍵方面)。左側(cè)是 Horizon 儀表盤,顯示了一個(gè)可為用戶和管理員用來管理 OpenStack 服務(wù)的用戶界面。Nova 提供了一個(gè)可伸縮的計(jì)算平臺,用來支持大量服務(wù)器和虛擬機(jī)(VM;以一種系統(tǒng)管理程序不可知的方式)的配置和管理。Swift 實(shí)現(xiàn)一個(gè)具有內(nèi)部冗余、可大量伸縮的對象存儲(chǔ)系統(tǒng)。在底部的是 Quantum 和 Melange,二者實(shí)現(xiàn)了網(wǎng)絡(luò)連接即服務(wù) (network connectivity as a service)。最后,Glance 項(xiàng)目為虛擬磁盤映象實(shí)現(xiàn)了一個(gè)存儲(chǔ)庫(映像即服務(wù) (image as a service))。

圖 2. OpenStack 解決方案的核心和附加組件

 

OpenStack 解決方案的核心和附加組件

 

如圖 2 所示,OpenStack 是一個(gè)項(xiàng)目集合,整體提供了一個(gè)完整的 IaaS 解決方案。表 1 展示了這些項(xiàng)目及其起作用的方面。

表 1. OpenStack 項(xiàng)目和組件

 

 

其他重要的方面還包括 Keystone,它實(shí)現(xiàn)了對企業(yè)私有云十分關(guān)鍵的身份識別服務(wù)(對計(jì)算服務(wù)器、Glance 內(nèi)的映像以及 Swift 對象存儲(chǔ)區(qū)的訪問方面的管理)。#p#

OpenStack 架構(gòu)

OpenStack 用三個(gè)核心開源項(xiàng)目(如 圖 2 所示)來表示:Nova(計(jì)算)、Swift(對象存儲(chǔ))和 Glance(VM 存儲(chǔ)庫)。Nova(或 OpenStack Compute),提供了跨服務(wù)器網(wǎng)絡(luò)的 VM 實(shí)例的管理。它的應(yīng)用程序編程接口 (API) 為試圖無知物理硬件和系統(tǒng)管理程序提供了一種計(jì)算編排方法。請注意,Nova 不僅提供了用于管理的 OpenStack API,還為那些習(xí)慣該界面的人提供了一種 Amazon EC2-兼容 API。Nova 支持組織所使用的專有系統(tǒng)管理程序,但更為重要的是,它支持像 Xen 和 Kernel Virtual Machine (KVM) 這樣的系統(tǒng)管理程序,也支持像 Linux® Container 這樣的操作系統(tǒng)虛擬化。出于開發(fā)的目的,還可以使用 QEMU 這樣的仿真解決方案。

Swift(或 OpenStack Object Storage)項(xiàng)目可通過配置了普通硬盤的標(biāo)準(zhǔn)服務(wù)器提供可伸縮的冗余存儲(chǔ)集群。Swift 并不代表一個(gè)文件系統(tǒng),它實(shí)現(xiàn)的是一個(gè)更為傳統(tǒng)的對象存儲(chǔ)系統(tǒng),可用于主要是靜態(tài)數(shù)據(jù)(一種關(guān)鍵的使用模型是靜態(tài) VM 映像)的長期存儲(chǔ)。Swift 不具備集中式控制器,它能改善整體的可伸縮性。它在內(nèi)部管理跨集群的復(fù)制(無需獨(dú)立磁盤冗余陣列)來提高可靠性。

Glance(或 OpenStack Image Service)為 Nova 能夠使用(此選項(xiàng)存儲(chǔ)在 Swift 內(nèi))的虛擬磁盤映像提供了一個(gè)存儲(chǔ)庫。Glance 提供了一個(gè) API 來注冊磁盤映像,此外還提供了通過一個(gè)簡單的 Representational State Transfer (REST) 界面的發(fā)現(xiàn)和交付。Glance 很大程度上對虛擬磁盤映像格式不可知,支持各種標(biāo)準(zhǔn),包括 VDI (VirtualBox)、VHD (Microsoft® Hyper-V®)、QCOW2 (QEMU/KVM)、VMDK/OVF (VMware) 以及原始格式。Glance 還提供了磁盤映像校驗(yàn)和、版本控制(和其他元數(shù)據(jù))以及虛擬磁盤驗(yàn)證和審計(jì)/調(diào)試日志。

此核心 OpenStack 項(xiàng)目(Nova、Swift 和 Glance)是使用 Python 開發(fā)的,它們都可以在 Apache License 下使用。#p#

演示 OpenStack

因?yàn)橛写罅开?dú)立項(xiàng)目需要安裝并配置以便能夠相互協(xié)作,安裝 OpenStack 可能會(huì)非常耗時(shí)(參見 參考資料 獲取完整安裝的更多信息)。但是對于好奇的讀者來說,有其他一些選項(xiàng)可以極大地簡化 OpenStack 的啟動(dòng)和運(yùn)行。

閱讀過我之前文章的讀者都知道我是一個(gè) VM 映像迷,熱衷于基于 Linux 軟件的簡化使用。VM 允許您輕松地創(chuàng)建一個(gè)新實(shí)例來嘗試或演示軟件。此 VM 是一個(gè)自包含的 Linux 實(shí)例(有時(shí)稱作虛擬設(shè)備),可以用必要的軟件預(yù)安裝并預(yù)配置以供使用。以這種方式配置的軟件可極大地簡化其使用,讓您得以試驗(yàn)?zāi)切┓駝t很難掌握或掌握起來很耗時(shí)的軟件。參閱 參考資料 獲取滿足您特定的硬件和基礎(chǔ)操作系統(tǒng)需求的安裝選項(xiàng)。

對于本次展示,我決定使用最新的 Ubuntu 發(fā)布版 (12.04) 和 OpenStack Essex 發(fā)布版。Essex 的 ISO 版本可以使用 uksysadmin 安裝程序進(jìn)行安裝(參見 參考資料)。在 Ubuntu Precise 上成功安裝了 OpenStack Essex 后,使用一個(gè)外部的 Web 瀏覽器能夠登錄 OpenStack 儀表盤。圖 3 顯示了具有兩種容器格式的來賓(Guest) VM 映像的 System Panel Images 選項(xiàng)卡界面。

圖 3. 可用來賓映像的 OpenStack Dashboard 視圖

 

 

此映像可用來創(chuàng)建一個(gè)演示實(shí)例,正如圖 4 所示,創(chuàng)建已經(jīng)開始。這個(gè)實(shí)例現(xiàn)在就可以使用了。

圖 4. 計(jì)算實(shí)例的 OpenStack Dashboard 視圖

 

 

現(xiàn)在,有了運(yùn)行于 OpenStack 之上的計(jì)算映像,我可以通過一個(gè)簡單的 Secure Shell (SSH) 會(huì)話使用其 IP 地址 (172.16.1.1) 對其進(jìn)行訪問(參見清單 1,用戶輸入以粗體顯示)。

清單 1. 通過 SSH 訪問 OpenStack 計(jì)算實(shí)例

  1. $ ssh -i Downloads/demo.pem ubuntu@172.16.1.1  
  2. The authenticity of host '172.16.1.1 (172.16.1.1)' can't be established.  
  3. RSA key fingerprint is df:0e:d0:32:f8:6d:74:49:ea:60:99:82:f1:07:5d:3b.  
  4. Are you sure you want to continue connecting (yes/no)? yes  
  5. Warning: Permanently added '172.16.1.1' (RSA) to the list of known hosts.  
  6. Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-virtual x86_64)  
  7.  
  8.  * Documentation:  https://help.ubuntu.com/  
  9.  
  10.  System information disabled due to load higher than 1.0  
  11.  
  12. 0 packages can be updated.  
  13. 0 updates are security updates.  
  14.  
  15. Get cloud support with Ubuntu Advantage Cloud Guest  
  16.   http://www.ubuntu.com/business/services/cloud  
  17.  
  18. The programs included with the Ubuntu system are free software;  
  19. the exact distribution terms for each program are described in the  
  20. individual files in /usr/share/doc/*/copyright.  
  21.  
  22. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by  
  23. applicable law.  
  24.  
  25.  
  26. To run a command as administrator (user "root"), use "sudo <command>".  
  27. See "man sudo_root" for details.  
  28.  
  29. ubuntu@demo1:~$   
  30. ubuntu@demo1:~$ hostname  
  31. demo1  
  32. ubuntu@demo1:~$ ps  
  33.   PID TTY          TIME CMD  
  34.   835 pts/0    00:00:06 bash  
  35.   948 pts/0    00:00:00 ps  
  36. ubuntu@demo1:~$  

 

所有這些層都運(yùn)行后,可能很難想象所發(fā)生的事情。圖 5 展示了整個(gè)堆棧,希望能幫助解釋清楚。在這個(gè)演示中,運(yùn)行 Mac OS X 的 Mac 提供了基礎(chǔ)平臺。VirtualBox 運(yùn)行于 Mac OS X 之上,提供了 OpenStack 的執(zhí)行平臺(運(yùn)行于 Ubuntu Linux 上)。注意,VirtualBox 是一個(gè)類型-2 的虛擬化管理程序。在 OpenStack Linux 層,QEMU 被用作一個(gè)來賓系統(tǒng)管理程序,從硬件角度來看,這很理想,但缺乏真正的產(chǎn)品設(shè)置所需的性能。

圖 5. 在普通硬件上運(yùn)行的 OpenStack 演示堆棧

 

 

沒有了對嵌套虛擬化(在另一個(gè)系統(tǒng)管理程序之上有效運(yùn)行一個(gè)系統(tǒng)管理程序)的支持,我依賴于 QEMU 作為我在 OpenStack 上運(yùn)行的來賓系統(tǒng)管理程序。這讓我能夠在一個(gè)來賓系統(tǒng)管理程序上運(yùn)行一個(gè)來賓 VM,該來賓 VM 在一個(gè)類型-2 的虛擬化管理程序上運(yùn)行。雖然這種設(shè)置可能會(huì)很慢,但它充分展示了一個(gè)在普通計(jì)算機(jī)系統(tǒng)上運(yùn)行的 IaaS 堆棧。注意,如今某些 AMD 處理器可提供一種有效的支持嵌套虛擬化的方式。

雖然使用 QEMU 對于性能而言并不理想,但它與 KVM (Linux as a hypervisor) 極為兼容,因而很容易在兩個(gè)系統(tǒng)管理程序之間遷移(除了在這兩者之前兼容的 VM 映像)。在這種情況下,讓 QEMU 之所以理想的原因是它可以在未提供虛擬化支持的硬件上執(zhí)行。注意,我的平臺在這個(gè)例子中是具有虛擬化功能的,但是由于我在 VirtualBox(一個(gè)憑借自身力量的虛擬化管理程序)上運(yùn)行,嵌套虛擬化的缺乏讓我不得不使用一個(gè)不依賴虛擬化擴(kuò)展的來賓系統(tǒng)管理程序。不管在哪種情況下,我都使用 libvirt 來管理 VM(啟動(dòng)、停止、監(jiān)視等),所以,在一個(gè)有虛擬化功能的硬件上遷移到 KVM 簡單至極,只需在 OpenStack 配置文件內(nèi)進(jìn)行兩行修改即可。#p#

使用 OpenStack 的其他方式

即便您沒有自己的集群,也可采用其他選項(xiàng)來享受 OpenStack 帶來的益處。OpenStack 的創(chuàng)作者之一 Rackspace,就提供了它寄予厚望的云的 Linux。Rackspace 的 OpenStack 云平臺提供了 OpenStack 在公共云基礎(chǔ)架構(gòu)的靈活性和可伸縮性方面的優(yōu)勢。

為了簡化 OpenStack 面向私有云的安裝,很多公司都關(guān)注于簡化 OpenStack 在私有集群內(nèi)的使用。比如,Piston Cloud Computing 公司就提供了 Piston Enterprise OS 這種基于 OpenStack 的私有云操作系統(tǒng)。Mirantis 則向企業(yè)提供了專業(yè)的構(gòu)建 OpenStack 基礎(chǔ)架構(gòu)的服務(wù)。

OpenStack 的前景

OpenStack 將繼續(xù)集成新的功能,提高了 IaaS 解決方案的定義。OpenStack 旗下有許多其他項(xiàng)目可用,但還有很多仍在孵化進(jìn)程中。Keystone 項(xiàng)目提供的身份識別服務(wù)統(tǒng)一了跨 OpenStack 組件的身份驗(yàn)證,同時(shí)又集成了現(xiàn)有的身份驗(yàn)證系統(tǒng)。還存在目的各異的社區(qū)項(xiàng)目,比如負(fù)載均衡即服務(wù) (Atlas-LB);云安裝和維護(hù)系統(tǒng) (Crowbar);云可配置和可伸縮的關(guān)系數(shù)據(jù)庫 (RedDwarf);面向云編排的基于REST 的 API (Heat);以及涵蓋了監(jiān)視、計(jì)費(fèi)等的云管理工具 (Clanavi)。在 OpenStack 項(xiàng)目內(nèi)外還有無數(shù)其他項(xiàng)目正在開發(fā)當(dāng)中,只要 OpenStack 的構(gòu)建勢頭不減,這個(gè)列表每天都在增長。

OpenStack 并非沒有競爭,隨著舊項(xiàng)目的不斷發(fā)展,新的項(xiàng)目也會(huì)出現(xiàn)。例如,CloudStack(在 2009 年首次發(fā)布)具有幾個(gè)產(chǎn)品安裝,但缺乏 OpenStack 所具備的開源貢獻(xiàn)者支持的級別。

結(jié)束語

繼 Linux 發(fā)展成為能符合所有使用模型的通用操作系統(tǒng)之后,OpenStack 也正在向代表云操作系統(tǒng)的方向前進(jìn)。與管理有限集的核心和本地資源不同,OpenStack 管理的是包含計(jì)算和存儲(chǔ)資源的龐大的服務(wù)器網(wǎng)絡(luò),以及將它們連接在一起的虛擬網(wǎng)絡(luò)膠。

自它在 2010 年末首次發(fā)布以來 (Austin),OpenStack 項(xiàng)目已經(jīng)又發(fā)布了四個(gè)版本,最新的一個(gè)版本在 2012 年 4 月發(fā)布 (Essex)。對于每次發(fā)布,OpenStack 都繼續(xù)推動(dòng)新的、改進(jìn)了的功能,這也提高了其他 IaaS 解決方案的競爭門檻。如今,在 Apache 旗下,OpenStack 成為云堆棧內(nèi)的標(biāo)準(zhǔn)實(shí)在不足為奇。

責(zé)任編輯:王程程 來源: 51CTO
相關(guān)推薦

2012-09-13 11:06:03

IBMdW

2012-09-11 17:10:40

OpenStack

2011-11-18 10:12:32

云存儲(chǔ)云計(jì)算

2010-03-19 16:05:42

云計(jì)算

2011-09-09 09:37:15

HP云計(jì)算云存儲(chǔ)

2012-10-09 09:18:37

云計(jì)算認(rèn)證項(xiàng)目OpenStackOpenStack認(rèn)證

2012-06-25 09:58:11

OpenStack云計(jì)算

2010-06-07 09:53:36

ApacheHadoo

2013-12-11 21:44:01

OpenStack對象Swift

2018-03-18 07:44:47

云計(jì)算云存儲(chǔ)IT

2010-04-02 13:13:28

云計(jì)算

2014-08-29 09:40:24

OpenStackDocker

2011-07-29 09:31:38

HPOpenStack云計(jì)算

2013-12-10 09:57:35

Openstack S開源云存儲(chǔ)Openstack

2012-03-29 11:15:20

ASGCloudFactor云計(jì)算

2013-08-08 10:14:52

云存儲(chǔ)云計(jì)算

2013-10-10 09:25:14

SeaMicroVerizon云平臺Verizon公有云

2015-07-08 16:17:07

OpenStackDocker開源云計(jì)算

2015-02-06 09:39:16

OpenStack j云主機(jī)創(chuàng)建

2013-11-07 10:24:26

OpenStackAmazon云計(jì)算
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號