馮子煦

【摘要】? ? 云計算(CloudComputing)是信息時代虛擬化、網絡化、共享化的重要產物。目前Openstack架構是較流行的云計算核心架構,作為一種開源架構,被廣泛應用。下文就以Openstack為核心的云計算結構做簡要介紹,幫助大家了解云計算基礎結構知識的同時簡要介紹云計算的一些應用實踐場景和應用優勢。
【關鍵字】? ? CloudComputing? ? Openstack? ? keystone? ? swift? ? glance? ? cinder? ? nova? ? Neutron
引言
云計算(cloud computing)是一種分布式計算結構,通過網絡中的一個或多個服務管理節點來整合網絡中個無數個計算節點、存儲節點為用戶提供通常一臺主機無法提供的高運算、高質量、高保護、高性能服務。云計算與高速網絡密不可分,通過現代通信網絡整合資源,按需為用戶提供各類存儲、計算、虛擬主機租用服務,服務類型靈活多樣,并能實現異地共享服務。目前云計算架構大多數以Openstack架構為核心,通過Openstack架構協調和調用大量計算能力、存儲、網絡等資源,通過Dashboard控制整個Openstack云計算平臺的運作,為租戶提供個性化服務[1]。
一、計算機虛擬化
要將一臺物理機虛擬成多臺虛擬機,首先要確定物理機的CPU是否支持虛擬化技術。根據物理機CPU型號區別,Intel CPU支撐VT-x指令集和AMD CPU支撐AMD-V指令集,是判斷電腦是否支撐虛擬化的前提條件。簡單的方法可以通過查看電腦的BIOS系統來看是否相應的選項,打開相應的選項來開啟虛擬化。或者也可以通過相應的命令和軟件來查看CPU是否支持相應的指令集來確定硬件是否支撐虛擬化。
二、Openstack架構各個組件功能與作用
Openstack架構作為開源云計算的核心架構,了解其各個組件的功能和特點是我們深入了解云計算基礎核心,學習和應用云計算技術的基礎。Openstack架構包含keystone、swift、glance、cinder、nova、Neutron等核心組件。各個組件相互獨立又協調工作,為云計算的控制、存儲、網絡等功能提供相應保證,下面就一一介紹各個組件的功能和作用(見圖1):
2.1 keystone組件的功能和作用
Keystone組件是Openstack架構中的控制組件,主要功能有身份管理與認證授權服務,以令牌模式來授權和管理其余組件的創建、刪除、修改、插入等功能。主要作用有兩點(1)用戶管理:驗證用戶身份的合法性;(2)服務目錄管理:提供服務目錄(ServiceCatalog:包括service和endpoint)服務,類似于UDDI服務的概念,用戶(無論是Dashboard, APIClient)都需要通過Keystone服務來獲取相關服務權限,以及每個服務的掛接地址點(Openstack中稱為Endpoint)。組件服務通過Keystone組件獲得一個令牌,并通過該令牌的授權獲得操作其它組件的一個權限。保證相應的時間段內能夠提供對應的服務[2]。
2.2? Swift組件的功能和作用
Swift組件主要負責提供對象存儲服務,對于高可用分布式對象存儲服務,Swift組件主要由2個部分組成:一個是代理服務(proxy),一個是存儲內容服務(storage)。代理服務作為Swift組件內部存儲的拓撲邏輯,具體說明一個文件位于存儲節點位置,接受客戶端的請求實現上傳、下載服務,實現Swift各個組件之間的通信;存儲內容服務是具體對象存儲實例,分別由3個組件來完成:對象服務器、容器服務器、賬戶服務器來提供服務[3]。
2.3? Glance組件的功能和作用
Glance組件是鏡像管理服務,是對已經安裝過系統的硬盤文件,提供對虛擬機的各種鏡像的管理服務,包含鏡像的導入,格式,以及制作相應的模板。鏡像一般包含了四個狀態:1、saving狀態:鏡像上傳中,還沒有上傳完成;2、Active狀態:鏡像上傳完成,可以正常使用;3、killed:鏡像上傳失敗,不能正常使用;4、Queued:鏡像并沒有上傳,但id已經被記錄了
兩種常用的鏡像存儲方案分別是使用Swift作為Glance的后端存儲或者使用Cept(文件存儲、塊存儲)作為Glance的后端存儲
2.4? Cinder組件的功能和作用
Cinder是云硬盤,是管理存儲資源的主要部件。一般操作系統獲得存儲空間的方式一般有兩種:方式一:裸硬盤Block Storage(塊存儲),多用于掛載,通過某種協議(SAS,SCSI,SAN,iSCSI 等)掛接裸硬盤,然后分區、格式化、創建文件系統或者直接使用裸硬盤存儲數據(數據庫);方式二:文件系統存儲,各種分布式文件系統提供的都是這種存儲,通過 NFS、CIFS等協議,mount 遠程的文件系統。該組件主要為云計算提供存儲資源池[3]。
2.5? Neutron組件的功能和作用
Neutron組件提供云計算各節點間網絡管理服務,對網絡拓撲節點進行管理。在云計算中,存在存儲節點、控制節點和計算節點,而各個節點之間的通信和數據交流需要網絡互聯。neutron組件使用了軟件定義網絡(software-defined networking, SDN),他的特點是靈活性和自動化優勢成為云時代網絡管理的主流。Neutron為整個 OpenStack 環境提供網絡支持,包括二層交換,三層路由,負載均衡,防火墻和VPN 等。Neutron 提供了一個靈活的框架,通過配置,無論是開源還是商業軟件都可以被用來實現這些功能[4]。
2.6? Nova組件的功能和作用
Nava組件是Openstack核心組件你,負責虛擬服務器部署和業務計算模塊。Nova是最核心的,一套虛擬化管理程序,可管理網絡和存儲。Nova實現對虛擬機虛擬機實例進行管理和控制,根據用戶需求來實現對虛擬機的開關機、調配CPU、RAM等操作。
2.7 Horizon組件的功能和作用
Horizon組件提供web界面的控制、調用服務,通過DashBoard來實現各種資源、虛擬機、實例等資源的管理。是用戶使用web控制臺來實現資源調度管理和監控的窗口。該組件還提供console、VNC直接訪問實例,通過各種方式的管理和監控,實現人機互動。
三、云計算運用實踐
根據以上Openstack的主要組件和功能介紹,我們了解了云計算的基本情況。目前運營商作為云基礎提供商,主要提供公有云、私有云、混合云等多種云計算資源給客戶使用。對于公有云主要是提供給各類電商、中小型企業、個人使用,云資源部署在公網上,內部云資源根據客戶需要通過IP映射和端口映射提供給相應的客戶使用,所有用戶共用計算、存儲、網絡資源;私有云主要提供給政府單位和大型企業使用,一般該類用戶要求高安全、私密性和高可用性,從計算資源池、存儲資源池、網絡資源都根據客戶需求設置獨立區域,通過專用網絡與客戶內網互聯,提供用戶獨立使用,所有資源為客戶獨享,根據客戶需求可以增加相應的租戶,共享獨立的資源;混合云技術結合了私有云和公有云的特點,提供給有部分保密資源要在內網使用,又有部分資源需要在公網使用的客戶,通過不同的資源分配和網絡防護措施做到相應的安全與私密的綜合要求。充分結合了私有云和共有云的特點,利用云資源網絡控制和資源靈活分配的特點控制資源和信息的發布區域和來訪客戶的合法性[5]。
云計算能夠廣泛的應用是與云計算分布式部署、虛擬化應用、廣泛的適應性、多樣的應用服務提供密不可分的。例如云主機屏蔽了底層硬件設備的差異,在云主機內部都是標準化的虛擬配置,這就為云主機的平滑遷移和平滑擴容創造了各種便利條件。
在云遷移方面,由于沒有底層設備的差異,我們能將實驗或測試環境建立的云主機配置打包成一個鏡像文件,在其它的云環境下搭建同樣的虛擬環境,就能將云主機輕松無縫遷移。對于在物理機環境下較難實現的無縫擴容,對虛擬機也是輕松實現,只需要在管理界面內配置增加相應的虛擬設備,相應的環境就能在極短時間內滿足客戶的需求。
在云主機的適應性方面,云主機的高安全性和靈活性也是云主機得以廣泛應用的關鍵。云主機的運行是依賴于整個資源池而不是單臺主機的,整個云架構分為控制節點、計算節點和存儲節點三大類,所有的節點都是通過多臺主機負荷分擔的模式工作的,當某臺物理機發生故障的情況下,云主機的控制節點會進行相應的動作,將該臺設備上的運用資源進行重新調整分配,保證其上的運用或存儲、計算資源調整到其它正常的物理主機上。實現虛擬主機的資源漂移,以保證整個系統的穩定可靠。
四、結束語
目前云計算的發展更多與現代技術相互融合,云計算全棧化趨勢催生出了docker容器應用;智能化應用充分與AI人工智能相互結合;行業化應用推動全球化進程。可以預見未來云計算將成為我們信息化發展中不容缺失的一環,將會推動信息化走向更寬廣的未來!
參? 考? 文? 獻
[1]許豪主編.云計算導論[M].西安:西安電子科技大學出版社,2015.
[2]朱培佩.基于云計算的大數據分析優化技術研究[J].現代信息科技,2019(14):69.
[3]邢偉,蘇圣魁.大數據云計算環境下的數據安全分析[J].通訊世界,2016(13):25.
[4]張佳,周雪.基于云計算的大數據處理技術探討[J].電腦編程技巧與維護,2019(12):104-105+120.
[5]蔡煒.以云計算為基礎的大數據處理技術探討[J].數字技術與應用,2017(12):205-206.