歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> OpenStack開源雲計算

OpenStack開源雲計算

日期:2017/2/27 16:04:59   编辑:Linux教程

OpenStack是一個美國國家航空航天局和Rackspace合作研發的,以Apache許可證授權,並且是一個自由軟件和開放源代碼項目。
OpenStack是一個雲平台管理的項目,這個項目由幾個主要的組件組合起來完成一些具體的工作。
OpenStack作為基礎設施即服務(簡稱IaaS)資源的通用前端。OpenStack項目的首要任務是簡化雲的部署過程並為其帶來良好的可擴展性。

本文翻譯自OpenStack官方網頁的介紹:http://www.openstack.org/,後期有時間會在第二天文檔中翻譯安裝與部署指南。

1. 關於OpenStack

OpenStack是通過數據中心控制大量的計算,存儲與網絡資源的雲操作系統,管理員通過控制台進行所有的管理,通過Web接口為授權用戶提供資源。

接下來我們分別了解一下compute(計算),storage(存儲),networking(網絡)與dashborad(控制台)。

2. OpenStack Compute

OpenStack Compute提供與管理大量網絡虛擬機實例。

OpenStack雲操作系統允許企業和服務供應商通過提供與管理大量網絡虛擬機來定制靈活的計算資源,你可以開發自己的雲應用程序並通過APIs訪問這些計算資源,或是管理員簡單地通過Web接口訪問。計算架構被設計與標准硬件之上。

架構靈活

OpenStack為用戶設計自己的雲提供了足夠的靈活性,OpenStack不需要專門的硬件與軟件,並且可以與傳統的系統或第三方技術相結合。它被設計用來自動化管理計算資源群組並可以與大多數虛擬化技術協同工作,比如HPC。

在虛擬化環境中,管理員經常會使用一個或多個hypervisor來部署OpenStack Compute。KVM和XenServer就是hypervisor非常流行的選擇,建議大多數人選擇這種解決方案。如果用戶需要減小虛擬化開銷來達到 更高的效果與性能的話,Linux容器技術LXC也是被支持的一種解決方案。另外對於不同的hypervisor,OpenStack支持ARM或其他替 換架構。

使用案例:

服務提供商可以提供IaaS給客戶

IT部門可以為公司或項目組提供雲服務

配合hadoop之類的工具進行大數據運算

矩陣運算,滿足web與應用程序從高到低的不同需求

高性能運算處理大量、集中的工作負載

3. OpenStack Storage

OpenStack Storage為服務器或應用程序提供對象與塊存儲功能。

除了傳統企業級存儲技術外,現在很多公司為了滿足不同的性能與價格需求,他們需要更多樣的存儲技術。OpenStack支持對象記憶塊存儲技術,來滿足不同的開發需求。

對象存儲是性價比很高、可擴展的存儲技術。它為我們提供了完全分布式的,可通過API訪問的存儲平台,這種存儲平台可以直接整合到應用中去,或是用 來備份,打包與保留數據。塊存儲為外部存儲提供對計算實例公開並與之連接,可與企業存儲平台更好的集成提供更高的性能,如NetApp,Nexenta或 SolidFire。

對象存儲功能

OpenStack提供了冗余、可擴展的對象存儲,滿足雲計算存儲PE級別數據的要求。

對象存儲不是傳統的分解系統,它是用來存儲像虛擬機鏡像,圖片,郵件,打包或備份之類的靜態數據。沒有主控點使得對象存儲可以提供更好的擴展性、冗余性和鞏固性。

對象與文件在數據中心服務器中被寫入到多個磁盤中,通過OpenStack軟件確保數據的響應與完整性。

可以簡單地通過添加服務器橫向擴展雲存儲。當服務器或磁盤損壞時,OpenStack會從雲中的其他活動節點響應數據請求。由於OpenStack通過軟件確保數據的響應與分布,你可以用便宜的磁盤與服務器來替代昂貴的設備。

塊存儲功能

OpenStack仍然為計算實例提供塊級別存儲設備。

塊存儲系統負責管理服務器塊設備的創建、添加與刪除。塊存儲卷完全整合於OpenStack Compute並且在控制面板中雲用戶可以管理他們自己的存儲。

使用Linux存儲服務器,這種統一的存儲結構被大多數存儲平台所支持包括Ceph,NetApp,Nexenta以及SolidFire。

塊存儲適合於對性能敏感的解決方案,如存儲數據庫、可擴展的文件系統,或為服務器提供原始數據塊訪問的存儲。

快照管理為塊存儲提供了強大的數據備份功能。快照可以用來還原或創建一個新的塊存儲卷。

4. OpenStack Networking

OpenStack Networking:可插入的、可擴展的、通過API驅動的網絡與IP網絡系統。

如今數據中心的網絡所包含的設備比以往任何時候否多,網絡設備、存儲設備、安全設備更進一步劃分為虛擬機與虛擬網絡。IP地址、路由配置與安全策略 會快速地增長至百萬級別。傳統的網絡管理技術不再適合與下一代網絡的擴展性以及自動管理屬性。與此同時用戶則希望獲得更多的控制以及快速服務的靈活性。

OpenStack Networking是一個可插入、可擴展並使用API驅動的網絡與IP地址管理系統,像其他雲操作系統一樣,它可以被管理員或用戶用來提升現有數據中心 資產的價值。OpenStack Networking確保部署雲時網絡不會出現瓶頸或某些限制因素,還可以為用戶提供真正意義上的自助服務,用戶可以通過他們自己的網絡配置管理網絡。

Networking功能

OpenStack為不同的應用與用戶組織提供了足夠靈活的網絡模型。標准模型包括服務器與通訊分離的平面網絡或VLAN。

OpenStack Networking可以通過靜態或動態的方式管理IP地址。浮動IP使得與任何計算機資源的通訊可以被動態地重新路由,即允許你在維護設備或設備損壞時重定向通訊流量。

用戶可以創建自己的網絡,進行通訊控制以及連接服務器與設備。

可插入式架構設計讓用戶可以從廠商那裡獲得高級網絡服務功能。

管理員可以使用像OpenFlow這樣的SDN技術(software-defined networking)

OpenStack Networking的可擴展架構設計可以附加其他網絡服務,如入侵檢測,負載均衡,防火牆以及VPN等技術。

5. Dashboard

OpenStack dashboard為管理員與用戶提供了圖形接口的訪問方式,基於雲的自動化資源。它的可擴展性設計使得加載第三方產品與服務非常容易,比如計費、監控以 及額外的管理工具。對於那些想要使用它的服務供應商以及其他的商業廠商而言,控制面板同樣很具有吸引力。

Dashboard是與OpenStack資源交互的一種方式。開發者可以使用OpenStack API或EC2兼容API構建自己的工具去管理我們的資源。

Dashboard功能

Dashboard是允許雲管理員和用戶控制他們計算、存儲與網絡等資源的可擴展web應用。

作為一名雲管理員,dashboard使你可以了解雲環境的整體大小與狀態。你可以創建用戶與項目,並賦予權利給用戶以及設置項目資源限制。

Dashboard在管理員給定的限制內可以自主地提供自己的資源。

6. Shared Services

OpenStack提供了眾多的共享服務,這些共享服務分別在 compute,storage,networking三大支柱組件中,使你可以更輕松地部署與操控你的雲。這些共享服務包括身份認證,鏡像管理和供外部 其他系統與OpenStack組件交互的一個Web集成接口。

身份認證服務

OpenStack提供了用戶目錄與他們能訪問的OpenStack服務之間的映射。在整個雲操作系統中它扮演了通用型認證系統,並且它可以與現有的後端目錄服務如LDAP集成。它提供了多種格式的認證,包括標准的用戶名、密碼認證,基於令牌系統以及AWS類型的登錄。

另外,在OpenStack雲中提供了一個可以查詢所有已部署服務的目錄列表。用戶與第三方工具可以規劃他們可以訪問哪些資源。

作為管理員,OpenStack可以使你:
集中地配置用戶與系統策略
使用基於角色控制(RBAC)的特性創建用戶以及定義compute,storage,networking資源的權限
與現有LDAP集成,實現單點登錄、統一身份認證功能

作為用戶,OpenStack可以使你:
獲得一份你可以訪問資源的列表
通過API請求或登錄web控制台去創建屬於自己的資源

鏡像服務

OpenStack鏡像服務可以用來查找、注冊與部署服務器鏡像。它提供了對鏡像的拷貝、快照以及快速存儲功能。

多鏡像格式的支持,鏡像服務允許上傳私有或公鑰鏡像格式,包括:

Raw
Machine(kernel/ramdisk outside of image)
VHD(Hyper-v)
VDI(VirtualBox)
qcow2(Qemu/KVM)
VMDK(VMware)

7. 路線圖

OpenStack致力於開放設計與開發進程。社區基於六個月的開發周期運轉。

OpenStack項目列表:
OpenStack Compute(代碼名稱:Nova)
OpenStack Networking(代碼名稱:Quantum)
OpenStack Object Storage(代碼名稱:Swift)
OpenStack Block Storage(代碼名稱:Cinder)
OpenStack Identity(代碼名稱:Keystone)
OpenStack Image Service(代碼名稱:Glance)
OpenStack Dashboard(代碼名稱:Horizon)

Copyright © Linux教程網 All Rights Reserved