999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于開源軟件的私有云計算平臺構建*

2013-10-08 01:59:20王偉軍陳桂強
電信科學 2013年1期
關鍵詞:用戶服務

姜 毅 ,王偉軍 ,曹 麗 ,劉 凱 ,陳桂強

(1.華中師范大學信息管理學院 武漢 430079;2.浙江理工大學經濟管理學院 杭州 310018;3.浙江理工大學信息學院 杭州 310018)

1 引言

云計算的應用越來越廣泛,對相關問題的研究也逐漸深入,不少公司和研究機構需要構建自己的私有云計算平臺。商業解決方案存在價格高、授權模式復雜等問題,并且無法獲得系統源代碼,很多情況下并不適合采用。開源云計算技術具有成本低、靈活性高等優勢,能夠方便地獲得源代碼進行深入研究,因此很多機構都采用開源軟件構造私有云計算平臺。目前主要的開源云計算項目有Eucalyptus、OpenStack、OpenNebula 和 Nimbus,本文在對比這些項目的基礎上,分析了OpenStack的架構,闡述了利用OpenStack構建私有云平臺的方法。

2 私有云平臺概述

2.1 私有云概念

從用戶使用的角度來看,云計算平臺可以分為公共云和私有云[1]。公共云部署在互聯網中,用戶通過網絡獲得計算資源和存儲資源,并按照“即用即付”(pay-as-you-go)的方式付費。私有云是企業或組織內部數據中心的資源,只提供給機構內部人員使用,不對外面向公眾。私有云計算平臺一般構建在機構的防火墻內部,相對于公共云,其安全性更高,服務質量更有保證。私有云能夠充分利用現有的硬件資源和軟件資源,可以有效地降低信息化成本。

2.2 私有云計算平臺構建模式

私有云平臺的構建可以采用3種模式:研究機構自行開發[2],這種方式需要企業或研究機構有很強的技術實力,比較典型的是清華大學的透明計算平臺;采用商業解決方案[3],不少商業公司提供了較為成熟的私有云整體解決方案,比較典型的是IBM的“藍云”計算平臺;使用開源解決方案[4],這種方案是利用開源系統構造企業或組織的私有云平臺,比較典型的是使用Eucalyptus和OpenStack等開源系統。3種構造方式的比較見表1。

表1 私有云計算平臺構建模式對比

2.3 開源私有云計算平臺優勢

在自行開發、商業解決方案和開源解決方案3種私有云的構建模式中,開源方案具有如下多個優勢。

(1)使用成本低

用戶只需要購買硬件設備和網絡設備,無需為開源軟件的使用付費。即使用戶需要開源軟件開發商提供服務,其需要付出的費用也相對比較低廉。例如,Ubuntu幫助用戶構建基于OpenStack的私有云平臺的服務費用是9 000美元,相關工作在5天內完成[5]。

(2)開放源代碼

開放源代碼,有利于研究人員對系統內部的實現機制進行深入研究。開源軟件使用Apache或其他授權協議,用戶能夠獲得系統的源代碼,并且可以通過社區、討論組等多種形式,與開發人員和其他用戶深入探討各種技術問題。

(3)平臺可擴展性強

由于現有的云計算技術尚在快速發展中,沒有形成統一的技術標準和規范,一旦選擇了一種商業解決方案,就很難轉換到其他平臺。而開源云平臺在設計時一般會保持對主流云計算技術(如亞馬遜EC2、S3等)的兼容性,同時提供轉換工具,有效地避免了廠商鎖定問題,增強了系統的可擴展性。

3 開源云計算項目現狀

3.1 主流開源云計算項目介紹

目前已經有多個云計算平臺的開源實現,主要的開源云計算項目有 Eucalyptus、OpenStack、CloudStack 和OpenNebula等,基本介紹如下。

(1)Eucalyptus

Eucalyptus[6]是加州大學圣芭芭拉分校計算機科學系Rich Wolski領導的項目組完成的開源軟件項目,該項目開發和應用較早,目前占有最大的市場份額。其組件無需修改即可使用,可以運行在沒做修改的GNU Linux內核上。Eucalyptus提供了與Amazon云計算平臺EC2和S3接口的兼容性,可以使客戶應用方便地從私有云平臺遷移到公共云平臺。

(2)OpenStack

OpenStack[7]是美國國家航空航天局(NASA)和Rackspace合作研發的開源云計算平臺項目,整合了NASA的Nebula Platform和Rackspace的Cloud Files Platform技術。OpenStack得到了多個商業公司和開源組織的支持,被認為是未來開源云計算平臺最具有潛力的技術,從Ubuntu 11.04版本開始,已經把OpenStack作為內置集成的云計算技術。

(3)CloudStack

CloudStack[8]起源于2008年成立的VMOps公司,2010年改名為Cloud.com,分為社區版本和商業版本。2011年7月思杰系統(Citrix System)公司收購了 Cloud.com,把以前維護的商業分支全部合并到了開源分支,并把該軟件加入Apache軟件基金會,成為了一個完全開源的項目。目前全球已經有多個大規模應用實例,如Zynga、GoDaddy等。

(4)OpenNebula

OpenNebula[9]起源于 2005年 Ignacio M Llorente和 Rubén S Montero創立的一個研究項目,于2008年7月發布了第一個公開版本。OpenNebula是一個虛擬化企業數據中心和云基礎設施建設和管理的行業開源解決方案,具有開放性、模塊化和可擴展的架構,目前已成為歐盟云計算項目RESERVOIR中虛擬執行環境管理器VEEM的核心組件。

3.2 開源云計算項目對比

Eucalyptus、OpenStack、CloudStack 和 OpenNebula這 4個主流的開源云計算項目各有特點,表2從多個方面對這4個項目進行了對比,其中社區活躍程度的數據來源于蔣清野博客[10]。

在主流的開源云計算項目中,OpenStack目前已經獲得英特爾、惠普、戴爾、Ubuntu、思科等多個重要公司和開源組織的支持,是目前最熱門的開源云計算項目,因此本文選擇OpenStack構造私有云平臺。

表2 主流開源云計算項目對比

4 OpenStack平臺架構

4.1 OpenStack服務架構

OpenStack 中 有 Compute、Storage、Image、Identity 和Dashboard 5個子項目,其服務架構如圖1所示。

其中,Compute、Storage、Image是核心的 3個子項目,提供計算、對象存儲和鏡像管理服務,其他的子項目包括提供身份認證的Identity、基于Web的管理控制臺Dashboard等。OpenStack需要通過虛擬化技術使用基礎硬件平臺,客戶應用系統可以通過OpenStack提供的接口(API)訪問各個云服務實例。

圖1 OpenStack服務架構

4.2 OpenStack主要實現

OpenStack云計算平臺管理系統目前有 Nova、Swift、Glance、Keystone和Horizon 5個主要的具體實現。Nova是Compute的具體實現,主要功能是計算資源管理和云平臺控制服務管理,運行和管理虛擬服務器實例等;Swift是Object Storage的具體實現,提供分布式云存儲服務,是一個可擴展的對象存儲系統;Glance是Image Service的具體實現,提供虛擬機鏡像的發現、注冊、獲取服務;Keystone是Identity的具體實現,提供統一的身份認證服務;Horizon是Dashboard的具體實現,提供通過Web用戶界面管理云計算平臺的方式。Nova、Glance、Keystone的安裝和使用都需要使用數據庫,可以采用開源的MySQL、PostgreSQL或SQLite等數據庫系統。

Nova和Swift是核心的兩類服務實現。Nova組件是云平臺的計算模塊,提供多種服務,包括API服務(nova-api)、消息隊列、計算服務(nova-compute)、網絡控制(nova-network)、卷服務(nova-volume)和調度管理(nova-scheduler)等;Swift組件提供云存儲服務,適合存儲大量、長期、需要備份的數據。Swift通過 “賬戶—容器—對象”(account-containerobject)的形式提供對象存儲服務,一個賬戶下可有多個容器,每個容器中可存儲多個對象。環服務是Swift最重要的組件,用于記錄存儲對象與物理位置間的映射關系。

5 基于OpenStack的私有云平臺構建

5.1 總體說明

本文選擇OpenStack來構造私有云平臺實例,并采用Ubuntu、KVM等開源軟件作為平臺的基礎操作系統和虛擬化工具。私有云平臺使用的主要開源軟件說明見表 3。

本文討論的私有云平臺實例主要應用在科研實驗室環境中,服務器采用x86架構,硬件設備初始的投入成本較低,并可以根據需要動態擴展各種資源。私有云平臺的初始硬件配置見表4。

表3 構造私有云平臺的主要開源軟件

表4 私有云平臺的初始硬件配置

5.2 基礎環境的配置

一個典型的私有云計算平臺至少采用兩臺服務器,本文將其稱為服務器Ⅰ和服務器Ⅱ。服務器Ⅰ上安裝Nova、Glance、Swift、Keystone和 Horizon 全部組件,作為云平臺的控制節點和存儲節點;服務器Ⅱ僅安裝Nova組件,作為云平臺的計算節點。在平臺性能不能滿足需要的情況下,可以動態擴展計算和存儲等資源。每臺服務器均配置2塊吉比特以太網卡,第一塊網卡eth0設置為外部可訪問的IP地址,第二塊網卡eth1設置為云平臺各節點內部通信的IP地址。服務器Ⅰ和服務器Ⅱ的配置說明見表5。

表5 服務器Ⅰ和服務器Ⅱ的配置說明

服務器Ⅰ和服務器Ⅱ首先需要安裝基礎操作系統(Base OS),本平臺使用 Ubuntu Server 12.04的 64 bit版本。安裝過程包括系統分區、設置初始用戶、配置網卡的IP地址等過程,在選擇系統組件時僅需要選擇Openssh-server。在Ubuntu安裝完成后,需要使用NTP(network time protocol)同步服務器時間,即在服務器 I安裝NTP服務器,其他服務通過該服務器進行同步。

由于OpenStack的Nova和Glance等組件需要使用關系數據庫,本平臺在基礎操作系統中安裝MySQL 5.5數據庫,并使用下列SQL腳本構造OpenStack數據庫:

CREATE DATABASE nova;

CREATE USER novadbadmin;

GRANTALLPRIVILEGESONnova.*TO'novadbadmin'@'%';

SET PASSWORD FOR'novadbadmin'@'%'=PASSWORD('novasecret');

CREATE DATABASE glance;

CREATE USER glancedbadmin;

GRANTALLPRIVILEGESONglance.*TO'glancedbadmin'@'%';

SET PASSWORD FOR 'glancedbadmin'@'% '=PASSWORD('glancesecret');

CREATE DATABASE keystone;

CREATE USER keystonedbadmin;

GRANT ALL PRIVILEGES ON keystone.*TO'keystoned badmin'@'%';

SETPASSWORDFOR'keystonedbadmin'@'%'=PASSWORD('keystonesecret');

5.3 OpenStack各組件的安裝配置

OpenStack 一般按照 Keystone、Glance、Nova、Swift 和Dashboard順序進行安裝和配置,服務器I依次安裝以上全部組件,服務器Ⅱ只需要安裝Nova組件。

(1)安裝和配置Keystone組件

該組件為OpenStack提供認證、授權、用戶管理和角色管理等服務。在使用apt-get命令安裝并連接數據庫成功后,需要創建租戶(tenant)、用戶(user)和角色(role),關鍵代碼如下:

keystone tenant-create-name tenant_name

keystone user-create-name user_name-pass user_password-email user_email

keystone role-create-name role_name

然后將租戶、用戶和角色關聯起來,關鍵代碼如下:keystone user-role-add-user$USER_ID-role$ROLE_ID-tenant_id$TENANT_ID

需要注意的是,$USER_ID、$ROLE_ID和$TENANT_ID必須使用OpenStack分配的ID號碼,該號碼可以使用keystone user-list、keystone tenant-list和 keystone role-list命令查詢。

接下來是創建服務目錄和端點(endpoint)信息,關鍵代碼如下:

keystone service-create-name service_name-type service_type-description'Description of the service'

圖2 Nova服務狀態

keystone endpoint-create-region region_name-service_id service_id-publicurlpublic_url-adminurladmin_url-internalurl internal_url

全部配置成功后,Keystone組件安裝完成。

(2)安裝和配置Glance組件

Glance提供虛擬機鏡像管理服務,其安裝配置比較簡單,首先使用apt-get命令下載安裝,然后配置租/用戶和密碼信息、連接MySQL數據庫并配置環境變量,主要是修改/etc/glance/目 錄 下 的 g lance-api-paste.ini、glance-registrypaste.ini和glance-api.conf 3個文件。在配置成功Glance服務后,通過使用Keystone的授權機制,可以將虛擬機鏡像上傳到私有云計算平臺中。

(3)安裝和配置Nova組件

Nova組件是計算模塊,提供多種相關服務。首先使用apt-get命令安裝,然后修改/etc/nova/nova.conf配置信息,創建物理卷和卷組信息,改變/etc/nova目錄和/etc/nova/nova.conf文件的權限,并通過/etc/nova/api-paste.ini配置租/用戶和密碼信息,連接MySQL數據庫。在這些操作完成后,需要為虛擬機實例設置待分配的IP地址段,關鍵代碼如下:

sudo nova-manage network create private-fixed_range_v4=192.168.4.32/27-num_networks=1-bridge=br100-bridge_interface=eth1-network_size=32

在導出環境變量并重啟Nova服務后,可以使用sudo nova-manage service list查看Nova服務狀態,如圖2所示。

(4)安裝和配置 S wift組件

該組件提供云存儲服務,其配置過程比較復雜。首先使用apt-get命令安裝,然后設置Swift存儲后端(backend)。存儲后端即可以使用已經存在的分區/卷,也可以創建回送文件(loopback file)系統。本平臺在服務器Ⅰ分區時已經給Swift預留了約500 GB的磁盤空間,因此直接使用該分區。使用XFS對該分區進行格式化,然后掛載該分區,并根據需要創建一些節點。

然后配置文件分布工具Rsync,Rsync能夠維護對象副本,需要被Swift的多個服務使用。再配置Swift組件信息,需要修改paste.deploy和/etc/swift/swift.conf等文件。下一步是配置Swift的代理服務,代理服務提供看守功能,用來響應客戶請求,并負責其他組件間的相互通信過程,配置時需要修改/etc/swift/proxyserver.conf文件。

接下來需要配置賬號服務、容器服務和對象服務,主要是修改/etc/swift目錄下的account-server.conf、containerserver.conf、object-server.conf 3個配置文件信息。最后配置Swift的環服務,所有的配置完成后,即可使用私有云存儲服務。

(5)安裝 D ashboard 組件

該組件提供Web形式的管理界面,其安裝配置比較簡單,直接使用apt-get命令安裝,然后在瀏覽器中輸入服務器I的IP地址即可訪問Dashboard服務。

5.4 配置虛擬化環境

Nova組件本身不提供虛擬化的能力,而是通過libvirt API與虛擬機進行交互,支持Xen、KVM、VMware、UML(user mode Linux)、LXC和QEMU等虛擬化技術。這些技術中,Xen和KVM是最主流的開源虛擬化項目。Xen使用半虛擬化技術,能夠在不支持硬件虛擬化的服務器上運行,其架構比較復雜。KVM是輕量級的虛擬化管理程序模塊,目前已經被集成到Linux內核中,只支持全虛擬化技術,需要服務器支持硬件虛擬化技術。本文討論的私有云計算平臺服務器的CPU為Intel Xeon E3-1230,支持Intel VT硬件虛擬化技術,因此選擇KVM虛擬化技術。

首先安裝KVM,這一過程比較簡單[11]。然后制作操作系統鏡像文件,這些鏡像既可以從網絡中下載,也可以自行制作。由于不同的應用環境需要默認安裝的應用軟件各不相同,所以一般需要自行制作鏡像。以Ubuntu為例,自行制作鏡像首先需要創建img文件,關鍵代碼如下:

kvm-img create-f qcow2 server.img 10G

然后利用KVM虛擬光驅加載操作系統ISO文件,完成虛擬機中操作系統的安裝。在鏡像制作完成后,通過Glance命令上傳到私有云平臺中,關鍵代碼如下:

glance add name=""is_public=true container_format=ovf disk_format=qcow2<.img

在鏡像上傳成功后,就可以在私有云計算平臺中創建虛擬機實例。創建過程主要步驟包括創建授權、加載鏡像、連接和使用鏡像等。

5.5 管理OpenStack服務

在需要的服務配置完成后,可以通過Dashboard對OpenSatck的各項服務進行在線監控。OpenStack服務狀態的Web監控如圖3所示。

圖3 OpenStack服務狀態的Web監控(Dashboard)

Dashboard同時提供了對OpenStack各服務在線管理的功能,主要包括管理虛擬機實例、管理操作系統鏡像、管理默認硬件配置文件、管理用戶、管理卷等,其圖形化操作界面比命令行模式更加友好。

6 開源私有云平臺運行實例

6.1 云計算軟件測試平臺說明

在筆者參與的研究項目中,目前已經利用OpenStack、KVM等開源軟件構造了私有云計算平臺,該平臺用于進行云計算軟件測試項目。用戶通過瀏覽器登錄和使用云測試項目管理系統,完成申請與執行測試項目、配置虛擬測試環境(用術語“硬件矩陣”和“軟件矩陣”表示)、分配和使用虛擬測試服務器等操作,系統的業務流程如圖4所示。

測試用戶可選擇合適的測試環境,申請需要的CPU、內存和磁盤等硬件資源和應用服務器、數據庫等軟件資源,通過云平臺實現快速部署。用戶對云測試平臺計算、存儲和鏡像等資源的調用需要使用Keystone組件的認證服務,需要長期保存和使用的測試數據需要使用Swift組件的云存儲服務。云測試平臺提供了Java、.net和PHP 3種開發技術的云測試環境,3種云測試環境的詳細說明見表6。

圖4 云計算軟件測試項目管理系統業務流程

表6 3種云測試環境說明

6.2 云測試執行實例

筆者使用了私有云平臺的虛擬測試服務器進行了某信息采集軟件客戶端的功能測試,硬件配置選擇1CPU、512 MB內存和2 GB硬盤空間,軟件環境選擇了Java的Web軟件測試環境。創建測試項目的系統界面如圖5所示。

圖5 創建測試項目的系統界面

虛擬測試服務器的創建分為自動創建和手工創建兩種方式。如果測試矩陣變量的默認取值可以滿足用戶需要,用戶配置完參數后系統通過調用OpenStack的API自動開啟虛擬測試服務器。如果默認取值不符合用戶要求,用戶可以填寫新建矩陣需求表,由系統管理員根據實際情況進行手工添加。

用戶一般通過遠程連接對虛擬服務器進行管理。Linux平臺使用OpenSSH的命令行界面和VNC的圖形界面,Windows Server平臺使用Windows系統中的 “遠程桌面”工具。用戶遠程連接進入虛擬測試服務器后,就可以配置和使用該虛擬服務器,其使用方式和使用普通物理服務器一致。

7 結束語

利用開源軟件構造私有云計算平臺具有成本低、部署快、無特殊硬件限制等多個優勢,將在教學、科研和商業中得到更加廣泛的應用。OpenStack是最值得關注的開源云計算項目,但是目前其配置過程比較復雜。接下來的研究中,筆者將編寫自動化安裝腳本,以簡化OpenStack的部署和應用難度。同時深入研究OpenStack各組件的API,根據研究需要對OpenStack進行二次開發。

1 Berkeley.Above the clouds:a berkeley view of cloud computing.http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf,2011

2 陳康,鄭緯民.云計算:系統實例與研究現狀.軟件學報,2009,20(5):1337~1348

3 張帆,李磊,楊成胡等.基于Eucalyptus構建私有云計算平臺.電信科學,2011(11):57~61

4 秦潤鋒,樊勇兵,唐宏等.開源云計算管理平臺技術在電信運營商私有云建設中的應用研究.電信科學,2011(10):24~29

5 Ubuntu.A working private cloud for just$9,000.http://www.ubuntu.com/cloud,2012

6 Eucalyptus Systems.Eucalyptus cloud computing software.http://www.eucalyptus.com/,2012

7 OpenStack.Open source software for building private and public clouds.http://openstack.org/,2012

8 CloudStack.Open source cloud computing with cloud stack.http://www.cloudstack.org/,2012

9 OpenNebula.The cloud data center management solution.http://opennebula.org/,2012

10 蔣清野.CY12-Q2 OpenStack,OpenNebula,Eucalyptus,CloudStack社區活躍度比較.http://www.qyjoho.net/?s=活躍度&x=0&y=0,2012

11 秦學東.開源虛擬化—KVM的構建.現代圖書情報技術,2011(11):89~92

猜你喜歡
用戶服務
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
主站蜘蛛池模板: 久久青草热| 国产精品久久久免费视频| 国产无人区一区二区三区| 欧美一级黄色影院| 婷婷六月综合网| 国产一区在线观看无码| 2021国产v亚洲v天堂无码| 亚洲综合片| 国产门事件在线| 国产精品自在自线免费观看| 国产午夜小视频| 色网站在线免费观看| 99热国产在线精品99| 2021国产精品自产拍在线| a免费毛片在线播放| 精品国产免费第一区二区三区日韩| 免费中文字幕一级毛片| 亚洲精品色AV无码看| 人妻中文字幕无码久久一区| 欧美伊人色综合久久天天| 中文字幕第4页| 美女一级毛片无遮挡内谢| 国产精品美人久久久久久AV| 中文字幕 欧美日韩| 国产丝袜啪啪| 亚洲第一黄色网址| 岛国精品一区免费视频在线观看 | 伊人久久青草青青综合| 欧美成人午夜视频| 成人91在线| 91小视频在线| 91麻豆精品国产高清在线| 亚洲日韩图片专区第1页| 久一在线视频| 人人艹人人爽| 狠狠色香婷婷久久亚洲精品| 在线无码av一区二区三区| 欧美日韩国产一级| 四虎永久免费在线| 91日本在线观看亚洲精品| 天堂在线亚洲| 亚洲视频黄| 精久久久久无码区中文字幕| 日本在线亚洲| 在线播放国产一区| 黄色网址免费在线| 亚洲日韩精品无码专区| 国产97视频在线| 久久亚洲美女精品国产精品| 无码一区二区波多野结衣播放搜索| 中文字幕va| 国产成人盗摄精品| 欧美一区国产| 欧美精品黑人粗大| 色老二精品视频在线观看| 日韩精品成人在线| 成人av手机在线观看| 亚洲国产精品日韩欧美一区| 2021国产在线视频| 亚洲国产在一区二区三区| 久久一色本道亚洲| 欧美国产三级| 国产欧美日韩精品综合在线| 精品一区二区无码av| 中国美女**毛片录像在线| 国产性生交xxxxx免费| 国禁国产you女视频网站| 免费精品一区二区h| 萌白酱国产一区二区| 日本午夜影院| 一级全免费视频播放| 国产区免费精品视频| 国产成人免费高清AⅤ| 欧美中日韩在线| 国产麻豆91网在线看| 91精品aⅴ无码中文字字幕蜜桃 | 天堂岛国av无码免费无禁网站| 亚洲一级毛片在线播放| 亚洲国产中文欧美在线人成大黄瓜 | 国产99欧美精品久久精品久久| 一级在线毛片| 国产人妖视频一区在线观看|