彭康華
廣東工程職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,廣東 廣州 510520
互聯(lián)網(wǎng)+時代,企業(yè)信息化亟待對IT 資源全面實施和整合,并能夠做到即需即用和按需分配,對安全性能提出新要求。私有云(Private Clouds)因建立于企業(yè)內(nèi)部,故其安全性得到更好的保證,并能得到更高的服務(wù)質(zhì)量?,F(xiàn)階段,虛擬化技術(shù)的廣泛使用,更為云平臺提供便利,企業(yè)往往利用云平臺的搭建,使自身的IT 建構(gòu)模式得以改進(jìn),拋棄傳統(tǒng)的模式,提升IT 基礎(chǔ)架構(gòu)效率。
網(wǎng)絡(luò)數(shù)據(jù)中心操作系統(tǒng)(DCOS)作為輕量級 PaaS云解決方案,通過其規(guī)模大、功能全,并能跨數(shù)據(jù)中心,因此,成為新的一代容器云平臺。其特點(diǎn)是對業(yè)務(wù)需求能做到動態(tài)響應(yīng),提高運(yùn)維效率,減少運(yùn)維費(fèi)用,優(yōu)化配置 IT 服務(wù)與各項性能。在企業(yè)搭建 PaaS云,需實現(xiàn)容器技術(shù)等一系列新技術(shù),對企業(yè)的運(yùn)維要求大大提高,徹底改變了傳統(tǒng)的運(yùn)維方式和工具,使得新的運(yùn)維流程、工具和人更加成為核心,主動優(yōu)化、服務(wù)導(dǎo)向運(yùn)維模式更加的明顯和重要。
本文以企業(yè)為載體,對企業(yè)進(jìn)行私有云平臺規(guī)劃及設(shè)計,以研究私有云平臺的建設(shè)對企業(yè)帶來的效率提高和管理提升。以生命周期法實現(xiàn)企業(yè)私有云數(shù)據(jù)中心的系統(tǒng)需求分析,對DCOS 進(jìn)行功能設(shè)計、接口設(shè)計及模塊層次結(jié)構(gòu)設(shè)計,重點(diǎn)就系統(tǒng)應(yīng)用管理功能、資源管理功能、告警和監(jiān)控功能及平臺管理與權(quán)限功能進(jìn)行設(shè)計。對AMP 監(jiān)控運(yùn)維項目的系統(tǒng)管理功能模塊、配置管理功能模塊、監(jiān)控告警功能模塊進(jìn)行系統(tǒng)設(shè)計,包括功能描述、數(shù)據(jù)庫設(shè)計、流程邏輯設(shè)計等,建立適合企業(yè)的私有云平臺。
企業(yè)私有云平臺含DCOS項目系統(tǒng)及AMP 監(jiān)控運(yùn)維項目,本DCOS云平臺為輕量級DCOS解決方案,目的是解決功能全、規(guī)模大、跨數(shù)據(jù)中心新容器平臺的需求。云平臺需要以本項目的業(yè)務(wù)需求及投資策略為基礎(chǔ),對現(xiàn)有和相關(guān)資源設(shè)備進(jìn)行動態(tài)調(diào)整,提升資源的利用率,并能提高企業(yè)工作效率,解放企業(yè)運(yùn)維人員。并需實現(xiàn)低運(yùn)維成本、高運(yùn)維質(zhì)量,使資源設(shè)備及各項服務(wù)最大優(yōu)化。同時,AMP 監(jiān)控運(yùn)維平臺需實現(xiàn)高擴(kuò)展性及IT平臺自動化運(yùn)維,提供AMP的各種插件,做到對基礎(chǔ)設(shè)施及各項應(yīng)用的管理及監(jiān)控。
根據(jù)企業(yè)的實際,對私有云數(shù)據(jù)系統(tǒng)展開需求分析,提出平臺的建設(shè)目標(biāo),設(shè)計原則及軟件需求描述,提出平臺系統(tǒng)的功能需求,包括云管理平臺,自動化運(yùn)維需求、代碼庫管理、鏡像倉庫等。
本文重點(diǎn)研究的兩部分包括DCOS云平臺及AMP 監(jiān)控運(yùn)維平臺,本DCOS云平臺為輕量級 PaaS解決方案,具備支持微服務(wù)架構(gòu)集群管理,有利于形成功能全、規(guī)模大、跨數(shù)據(jù)的容器平臺,實現(xiàn)友好資源設(shè)備管理功能,為高并發(fā)下性能實現(xiàn)及安全穩(wěn)定執(zhí)行提供保障。
(1)自動化部署
DCOS云平臺在部署新服務(wù)操作中,依據(jù)自動化部署模塊應(yīng)能集中對數(shù)據(jù)中心自動安裝部署,實現(xiàn)自動“分發(fā)”服務(wù)到整個集群。
(2)彈性伸縮
平臺對CPU、內(nèi)存等關(guān)鍵設(shè)備的使用率等容量指標(biāo)負(fù)載監(jiān)控,依據(jù)系統(tǒng)設(shè)定的策略和閾值,實現(xiàn)彈性伸縮,調(diào)整設(shè)備資源和服務(wù)。當(dāng)業(yè)務(wù)高峰到來時,自動增加資源投入,在業(yè)務(wù)低谷時,減少資源投入以壓縮成本。
(3)自動化調(diào)度,故障自愈
一旦平臺部分節(jié)點(diǎn)出現(xiàn)問題,DCOS云平臺應(yīng)能實現(xiàn)自動化容災(zāi)切換,自動上線和替換到其他可用節(jié)點(diǎn),同時,相關(guān)數(shù)據(jù)能同步遷移到新容器內(nèi),即實現(xiàn)故障自愈功能。
(4)細(xì)粒度的資源分配
DCOS云平臺調(diào)度資源形式為容器,其細(xì)粒度達(dá)到0.1個CPU,1M 內(nèi)存,因為資源分配細(xì)粒度精確,故可以充分提升資源的使用率。
DCOS云平臺解決方案如圖1所示。
云管理平臺:
(1)管理平臺
管理平臺層面上各個功能組件,包括:管理面板,持續(xù)集成,資源配置等。
(2)應(yīng)用層
應(yīng)用層管理和搭配各個業(yè)務(wù) APP Container。
(3)服務(wù)層
服務(wù)層組成包括平臺管理(含用戶、角色、權(quán)限和菜單管理),服務(wù)功能(含應(yīng)用平臺、服務(wù)和容器功能),鏡像功能(倉庫功能、版本模塊、歸屬功能),安全模塊(角色模塊、權(quán)限模塊)。
(4)資源管理
資源調(diào)度、分配、高可用管理,包括物理服務(wù)器,虛擬服務(wù)器,容器資源,基礎(chǔ)資源等。含各種基礎(chǔ)資源管理:一是物理機(jī)管理;二是虛擬機(jī)管理;三是容器資源管理。
(1)部署應(yīng)用
將應(yīng)用打包成 Docker,倉庫中提取鏡像,發(fā)布DCOS。
(2)組建集群
組建標(biāo)準(zhǔn)配置集群節(jié)點(diǎn),組建集成(CPU、內(nèi)存等)資源池。
(3)統(tǒng)一監(jiān)控
圖1 DCOS云平臺解決方案Fig.1 DCOS Cloud Platform Solution
面向硬件、虛擬化、中間件、數(shù)據(jù)庫、應(yīng)用提供統(tǒng)一監(jiān)控。監(jiān)控總體資源使用情況;監(jiān)控虛擬服務(wù)器資源使用情況;監(jiān)控應(yīng)用資源消耗情況(包括中間件、數(shù)據(jù)庫);監(jiān)控容器資源消耗情況。
(4)橫向擴(kuò)展
監(jiān)控監(jiān)測到應(yīng)用并發(fā)超限,自動擴(kuò)張實例數(shù)量??芍付ㄟ\(yùn)行容器的數(shù)量范圍;可指定容器數(shù)量擴(kuò)縮的觸發(fā)條件;可指定擴(kuò)縮的頻率、每次變更的容器數(shù)量。
(5)自動恢復(fù)
平臺監(jiān)測底層服務(wù)器故障,自動在健康服務(wù)器上恢復(fù)丟失的業(yè)務(wù)實例。
(6)代碼庫管理
支持 SVN、GitHub、GitLab3 種代碼庫。
(7)鏡像倉庫
部署管理Docker鏡像倉庫,管理應(yīng)用鏡像分類、版本及項目歸屬。
圖2 DCOS 管控平臺程序結(jié)構(gòu)圖Fig.2 Program Structure Diagram of DCOS Control Platform
圖3 應(yīng)用管理功能模塊主要流程Fig.3 Main Processes of Application Management Function Module
圖4 資源功能模塊操作Fig.4 Resource Function Module Operation
以云數(shù)據(jù)中心需求分析為依據(jù),以云平臺開發(fā)關(guān)鍵技術(shù)為基礎(chǔ),進(jìn)行企業(yè)私有云 DCOS 設(shè)計,包括網(wǎng)絡(luò)體系及功能設(shè)計、接口設(shè)計、各個應(yīng)用功能設(shè)計(包括應(yīng)用管理功能、資源管理功能、告警監(jiān)控功能、平臺管理與權(quán)限功能模塊)、數(shù)據(jù)庫設(shè)計及界面優(yōu)化設(shè)計等。
對AMP 監(jiān)控運(yùn)維系統(tǒng)設(shè)計,分為系統(tǒng)管理設(shè)計(含用戶組管理、用戶管理、數(shù)據(jù)源管理、菜單管理、界面管理、組件管理及域管理等),配置功能設(shè)計(模板/主機(jī)、業(yè)務(wù)組、代理主機(jī)、機(jī)器類型、預(yù)警扣分管理功能等),以及監(jiān)控告警設(shè)計、數(shù)據(jù)庫設(shè)計、界面設(shè)計等。并提供了AMP 提供 DCOS 平臺相關(guān)接口設(shè)計。
數(shù)據(jù)中心操作系統(tǒng)(DCOS)是為整個數(shù)據(jù)中心提供分布式調(diào)度與協(xié)調(diào)功能,實現(xiàn)數(shù)據(jù)中心級彈性伸縮能力的軟件堆棧,它將所有數(shù)據(jù)中心的資源當(dāng)做一臺計算機(jī)來調(diào)度。本平臺以開源技術(shù) Mesos、Marathon、Docker、HAProxy 為引擎,在其上開發(fā)了DCOS 控制臺、資源管理模塊、鑒權(quán)模塊、彈性擴(kuò)縮容調(diào)度模塊、監(jiān)控管理模塊、持續(xù)集成平臺。
DCOS的功能框架如下:
(1)DCOS 總覽;
(2)資源功能模塊:主機(jī)控制、集群功能、鏡像倉庫等;
(3)監(jiān)控功能模塊:監(jiān)控數(shù)據(jù)采集、日志功能、告警功能等;
(4)彈性擴(kuò)縮容調(diào)度模塊:基于CPU使用率、內(nèi)存使用率、服務(wù)并發(fā)數(shù)等容量數(shù)據(jù),通過定制的調(diào)度算法實現(xiàn)服務(wù)的自動彈性擴(kuò)縮容;
(5)鑒權(quán)模塊:用戶管理、用戶組管理、權(quán)限策略管理和統(tǒng)一認(rèn)證接口;
(6)持續(xù)集成平臺:鏡像構(gòu)建、集成測試、流程管理和上線管理。
DCOS 平臺模塊層次結(jié)構(gòu)設(shè)計如圖3-1所示。
從應(yīng)用緯度、資源緯度、健康緯度三個方面來描述整個DCOS 平臺及其組件、在平臺上的容器的基本信息和狀態(tài)信息。應(yīng)用緯度為統(tǒng)計現(xiàn)在已建的應(yīng)用、服務(wù)、容器數(shù)量信息并進(jìn)行資源預(yù)估。資源緯度為統(tǒng)計現(xiàn)有的主機(jī)資源及其性能信息。健康緯度為監(jiān)控現(xiàn)有DCOS 相關(guān)平臺組件的運(yùn)行狀態(tài)。
應(yīng)用管理功能模塊主要流程如圖2所示。
資源功能模塊操作如圖3所示。
在系統(tǒng)設(shè)計和軟件、硬件需求基礎(chǔ)上,對私有云平臺進(jìn)行集成,進(jìn)行了部署與實現(xiàn)。對AMP 提供DCOS 平臺接口進(jìn)行討論,給出了部署前準(zhǔn)備工作,包括網(wǎng)絡(luò)環(huán)境檢查、YUM 源配置、NTP 配置、防火墻配置等,接著對DCOS 平臺進(jìn)行安裝部署、對AMP 平臺安裝部署,以實現(xiàn)私有云的相關(guān)功能。
數(shù)據(jù)庫軟件采用 mysql 5.7,系統(tǒng)建立的數(shù)據(jù)庫名稱為dmp。設(shè)計的范圍包括系統(tǒng)的基本表、關(guān)聯(lián)表。數(shù)據(jù)庫模型設(shè)計工具使用 powerdesigner 16。mysql 數(shù)據(jù)庫支持 source file 方式的數(shù)據(jù)導(dǎo)入方式,dump的數(shù)據(jù)導(dǎo)出方式。
(1)數(shù)據(jù)庫用戶創(chuàng)建
創(chuàng)建數(shù)據(jù)庫用戶的sql 腳本,代碼如下:
create user 'root'@localhost identified by 'Shsnc_db_001';
(2)數(shù)據(jù)庫例程創(chuàng)建
創(chuàng)建數(shù)據(jù)庫的sql 腳本,代碼如下:
create database dmp default character set utf8 collate utf8_bin;
(3)角色授權(quán)
角色授權(quán)的sql 腳本,代碼如下:
grant select, insert on dmp.* to 'test'@localhost;
(1)數(shù)字字典設(shè)計
表的命名設(shè)計,以所屬功能相關(guān)的英文功能的縮寫為前綴:
sys_* 為系統(tǒng)模塊的庫表;app_* 為業(yè)務(wù)管理模塊的庫表;AMP_* 為對接 AMP 系統(tǒng)模塊的庫表;ect_* 為告警相關(guān)的庫表;jen_* 為持續(xù)構(gòu)建模塊的庫表; res_* 為資源管理模塊的庫表。
(2)安全保密設(shè)計
通過角色權(quán)限分配限定操作者的權(quán)限。
其數(shù)據(jù)表構(gòu)成如表4-1所示,因為涉及表格及字段較多,因此,挑選主要表格及字段來描述。
本文關(guān)注和應(yīng)用于企業(yè)規(guī)劃的私有云的搭建,以企業(yè)現(xiàn)有的IT 基礎(chǔ)設(shè)備為基礎(chǔ),使用企業(yè)系統(tǒng)規(guī)劃法建立企業(yè)的私有云平臺,優(yōu)化配置已有的IT環(huán)境,使得企業(yè)實現(xiàn)長遠(yuǎn)的可持續(xù)發(fā)展,通過企業(yè)私有云的搭建,為企業(yè)構(gòu)建一個動態(tài)的IT 資源配置中心,較好的支撐迅速擴(kuò)張的業(yè)務(wù)需求,提升企業(yè)運(yùn)作效率,為企業(yè)可持續(xù)發(fā)展提供保障。通過私有云平臺建設(shè),能夠解決企業(yè)的一系列問題,達(dá)到以下效果和目的:
(1)減少硬件投入費(fèi)用
建設(shè)云平臺可將硬件成本費(fèi)用降低一個數(shù)量級,具體減少費(fèi)用額度因企業(yè)需求差異而不同。但減少硬件成本費(fèi)用確是真真實實存在的,同時可以使得硬件利用率最大化。
(2)縮減軟件成本
云計算軟件成本縮減主要在軟件版權(quán)使用上,實施云技術(shù)后,企業(yè)無須為每一臺設(shè)備采購版權(quán),采購數(shù)量可以大大減少,其他設(shè)備可以通過共享來工作,因此,縮減軟件成本達(dá)到最大化。
(3)節(jié)省物理空間
由于硬件投入的減少,存放服務(wù)器、電腦等空間可以減少,這對于寸土寸金的現(xiàn)代都市,減少企業(yè)的物理空間將會節(jié)省更多的費(fèi)用,費(fèi)用的減少等于增加了企業(yè)利潤。
(4)實現(xiàn)實時監(jiān)控
云平臺的使用可以實現(xiàn)員工隨時隨地辦公,條件僅為一臺移動設(shè)備,使用手機(jī)等均可對各員工工作進(jìn)行檢查和監(jiān)控,全面掌握企業(yè)的最新狀況,提高企業(yè)工作效率最大化。
(5)企業(yè)更大的靈活性
云平臺具有更強(qiáng)靈活性,企業(yè)能根據(jù)自身業(yè)務(wù)量的大小來靈活調(diào)整,因此,業(yè)務(wù)的多少調(diào)整起來更靈活和簡單,使即需即用成為可能。
(6)縮減 IT 支持成本
因云平臺投入硬件數(shù)量減少,網(wǎng)絡(luò)及計算機(jī)系統(tǒng)配置簡化,進(jìn)一步降低運(yùn)維人數(shù)和強(qiáng)度要求,達(dá)到IT運(yùn)維和支撐投入變得最少。減少運(yùn)維人員支持費(fèi)用也相當(dāng)于提高企業(yè)利潤。
(7)增強(qiáng)企業(yè)安全
云平臺更好的保障企業(yè)的安全,因為好多企業(yè)無法確保每一臺電腦均在安全監(jiān)控下,而云計算機(jī)正是能解決這個問題,云計算能帶來企業(yè)更加完善、專業(yè)的服務(wù),保障企業(yè)數(shù)據(jù)及軟件安全。
表1 管理系統(tǒng)數(shù)據(jù)庫設(shè)計表Table1 Management System Database Design Table
本文以企業(yè)系統(tǒng)規(guī)劃法(BSP)為前提,對企業(yè)的云數(shù)據(jù)中心 DCOS和監(jiān)控運(yùn)維系統(tǒng) AMP 實施規(guī)劃、功能需求分析和設(shè)計。實際證明,BSP 方法對本文建設(shè)的私有云平臺規(guī)劃時是行之有效的,在此基礎(chǔ)上進(jìn)行功能描述、總體設(shè)計思路、數(shù)據(jù)庫設(shè)計、流程邏輯設(shè)計等。以知識型企業(yè)為建設(shè)應(yīng)用對象,實現(xiàn)了較為復(fù)雜的信息化及系統(tǒng)管理要求。通過建設(shè)云平臺來實現(xiàn)資源共享,減少硬件投入費(fèi)用,縮減軟件成本,節(jié)省物理空間,實現(xiàn)實時監(jiān)控,使企業(yè)更大的靈活性,縮減IT支持成本,增強(qiáng)企業(yè)安全。