梁 勇,張攀翔,陳秋華
(中國(guó)移動(dòng)通信集團(tuán)公司廣東分公司 廣州510623)
傳統(tǒng)電信企業(yè)的系統(tǒng)建設(shè)過(guò)程中,由于需求變化快速、系統(tǒng)數(shù)量巨大,系統(tǒng)建設(shè)往往按照各自應(yīng)用需求來(lái)評(píng)估、采購(gòu)、建設(shè)、維護(hù)各個(gè)應(yīng)用獨(dú)立的主機(jī)、存儲(chǔ)、網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)、應(yīng)用服務(wù)器等資源,從而導(dǎo)致了豎井式或煙囪式的多套獨(dú)立的系統(tǒng),這種建設(shè)方式帶來(lái)了大量的問(wèn)題。
·項(xiàng)目建設(shè)周期漫長(zhǎng),難以快速滿(mǎn)足市場(chǎng)需求。
·購(gòu)買(mǎi)了大量不需要的處理能力。系統(tǒng)前期很難準(zhǔn)確估算業(yè)務(wù)量和需要采用怎樣的數(shù)據(jù)庫(kù)資源支撐,導(dǎo)致某些系統(tǒng)的數(shù)據(jù)庫(kù)長(zhǎng)期處于非??臻e的狀態(tài),浪費(fèi)了投資。
·缺乏集中管理和安全性保護(hù)。由于每個(gè)系統(tǒng)獨(dú)立建設(shè),每個(gè)系統(tǒng)的可用性、安全性都依賴(lài)于SI單獨(dú)實(shí)現(xiàn),規(guī)劃復(fù)雜,實(shí)施難度大,導(dǎo)致較大的系統(tǒng)管理和安全性漏洞。
·難以隨著業(yè)務(wù)需求的變化調(diào)整數(shù)據(jù)庫(kù)資源,存在平時(shí)大量資源利用率普遍偏低和業(yè)務(wù)高峰值時(shí)資源不足的矛盾。例如,在中國(guó)移動(dòng)通信集團(tuán)公司某分公司負(fù)責(zé)建設(shè)和運(yùn)維的增值業(yè)務(wù)中,有數(shù)十個(gè)獨(dú)立的數(shù)據(jù)庫(kù)平臺(tái),“139說(shuō)客”的核心數(shù)據(jù)庫(kù)服務(wù)器的平均CPU負(fù)荷長(zhǎng)期在60%以上,而峰值可以長(zhǎng)達(dá)24 h超過(guò)90%,帶來(lái)了很大的系統(tǒng)運(yùn)行質(zhì)量的隱患,也可能由于負(fù)荷高影響了業(yè)務(wù)響應(yīng)時(shí)間,導(dǎo)致客戶(hù)感受的受損。反之,也有不少數(shù)據(jù)庫(kù)主機(jī)長(zhǎng)期平均負(fù)荷在5%以下,甚至持續(xù)看不到任何負(fù)載,造成了投資上的浪費(fèi)。
因此,亟需打破原來(lái)這種煙囪式的建設(shè)方式,隨著云計(jì)算技術(shù)的逐漸成熟和完善,通過(guò)云計(jì)算技術(shù)實(shí)現(xiàn)系統(tǒng)資源的共享、動(dòng)態(tài)調(diào)整和按需分配,成為電信企業(yè)未來(lái)主要的探索方向。計(jì)算基礎(chǔ)設(shè)施的發(fā)展如圖1所示。
從電信企業(yè)系統(tǒng)運(yùn)行情況來(lái)看,其核心的服務(wù)器和存儲(chǔ)資源的50%以上是作為數(shù)據(jù)庫(kù)平臺(tái)部署的,所以如何實(shí)現(xiàn)電信級(jí)對(duì)數(shù)據(jù)庫(kù)云平臺(tái)的靈活部署,既可以實(shí)現(xiàn)“大分小”式,又可以實(shí)現(xiàn)“小合大”式的應(yīng)用部署,對(duì)電信企業(yè)運(yùn)營(yíng)商而言極為重要。
圖1 計(jì)算基礎(chǔ)設(shè)施的發(fā)展
NIST對(duì)云計(jì)算的定義:云計(jì)算模型能以按需方式,通過(guò)網(wǎng)絡(luò)方便地訪(fǎng)問(wèn)云系統(tǒng)的可配置計(jì)算資源共享池(如網(wǎng)絡(luò)、服務(wù)器、存儲(chǔ)、應(yīng)用程序和服務(wù)),同時(shí)以最少的管理開(kāi)銷(xiāo)及與供應(yīng)商的交互,迅速配置提供或釋放資源。
云計(jì)算是網(wǎng)格計(jì)算 (grid computing)、分布式計(jì)算(distributed computing)、并行計(jì)算(parallel computing)、效用計(jì)算(utility computing)、網(wǎng)絡(luò)存儲(chǔ)技術(shù)(network storage technology)、虛擬化(virtualization)、負(fù)載均衡(load balance)等傳統(tǒng)計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)發(fā)展融合的產(chǎn)物。
云計(jì)算是以服務(wù)的形式提供IT化能力。云計(jì)算所提供的服務(wù)形式可以分為IaaS(infrastructure as a service)、PaaS(platform as a service)、SaaS(software as a service),如圖2所示。
圖2 云計(jì)算的3種服務(wù)模式
IaaS主要關(guān)注基礎(chǔ)設(shè)施(即硬件)虛擬化、資源共享、資源調(diào)配等硬件服務(wù)能力的提供,如果面向系統(tǒng)建設(shè)考慮,仍然需要進(jìn)一步部署相應(yīng)的平臺(tái)軟件(數(shù)據(jù)庫(kù)、中間件等)和應(yīng)用軟件,所以IaaS層提供的云服務(wù)管理粒度只在硬件層面,對(duì)平臺(tái)軟件和應(yīng)用軟件的部署和管理幾乎沒(méi)有涉及。
在提供云服務(wù)的過(guò)程中,硬件作為基礎(chǔ)設(shè)施層,仍然需要承載平臺(tái)和應(yīng)用軟件能力,所以大部分企業(yè)更多地關(guān)注業(yè)務(wù)層面的平臺(tái)軟件方面的服務(wù)化,即PaaS層服務(wù)能力。IOUG對(duì)企業(yè)客戶(hù)云計(jì)算服務(wù)的關(guān)注調(diào)查如圖3所示。
PaaS層主要關(guān)注提供平臺(tái)軟件的服務(wù)能力 (如數(shù)據(jù)庫(kù)、中間件等),所以實(shí)現(xiàn)PaaS層服務(wù)模式,可以有兩種技術(shù)選擇:一種是基于IaaS層提供的硬件基礎(chǔ)設(shè)施,再通過(guò)PaaS管理平臺(tái)來(lái)部署和管理平臺(tái)軟件服務(wù);另一種是直接通過(guò)一體化的解決方案來(lái)實(shí)現(xiàn)軟、硬件的統(tǒng)一管理、部署、資源分配和回收。前一種方式存在管理的復(fù)雜性、兼容性問(wèn)題,甚至還可能存在嚴(yán)重的性能瓶頸和整體運(yùn)行風(fēng)險(xiǎn)的問(wèn)題。如中國(guó)移動(dòng)通信集團(tuán)公司廣東分公司(以下簡(jiǎn)稱(chēng)廣東移動(dòng))在基于x86服務(wù)器上通過(guò)虛擬化技術(shù)來(lái)實(shí)現(xiàn)IaaS層資源池,再部署Oracle數(shù)據(jù)庫(kù)和業(yè)務(wù)應(yīng)用,通過(guò)實(shí)際測(cè)試發(fā)現(xiàn),性能損耗超過(guò)40%,而且還存在Oracle RAC數(shù)據(jù)庫(kù)沒(méi)有在VMWare平臺(tái)得到廠商官方支持的問(wèn)題,一旦遇到系統(tǒng)問(wèn)題,診斷、解決時(shí)都存在很大的潛在運(yùn)行風(fēng)險(xiǎn)。
圖3 IOUG對(duì)企業(yè)客戶(hù)云計(jì)算服務(wù)的關(guān)注調(diào)查
通過(guò)軟硬件一體化PaaS層云服務(wù),形成共享資源池,同時(shí)提供平臺(tái)級(jí)軟件能力,然后按照各個(gè)應(yīng)用需求在PaaS資源池中申請(qǐng)硬件資源、獲得軟件服務(wù)的方式,不斷部署不同的業(yè)務(wù)應(yīng)用,實(shí)現(xiàn)系統(tǒng)的集中化整合。這樣可以有效節(jié)省計(jì)算和存儲(chǔ)資源、機(jī)房空間、耗電和配套設(shè)施、人力維護(hù)成本,提高系統(tǒng)的可靠性、擴(kuò)展能力、計(jì)算能力,避免出現(xiàn)業(yè)務(wù)要求和系統(tǒng)支撐能力不匹配的問(wèn)題。
根據(jù)以上分析,從效率、管理、集成、兼容性角度來(lái)看,實(shí)現(xiàn)數(shù)據(jù)庫(kù)云平臺(tái)的最佳方式是軟、硬件一體化PaaS平臺(tái)解決方案,而PaaS云一體化解決方案需要從4個(gè)主要方面考慮。
·構(gòu)建可不斷堆疊、可線(xiàn)性擴(kuò)展、分布式的服務(wù)器資源池;
·構(gòu)建可不斷堆疊、可線(xiàn)性擴(kuò)展、分布式的存儲(chǔ)資源池;
·構(gòu)建服務(wù)器與服務(wù)器之間、服務(wù)器與存儲(chǔ)之間的高速互聯(lián)網(wǎng)絡(luò);
·構(gòu)建軟硬一體化、統(tǒng)一的云管理和云治理平臺(tái)。
由于在電信系統(tǒng)中,數(shù)據(jù)庫(kù)呈現(xiàn)多元化和混合型特點(diǎn)。既有大量的小規(guī)模數(shù)據(jù)庫(kù),如增值業(yè)務(wù)系統(tǒng)、政企客戶(hù)系統(tǒng)等,也有很多超大規(guī)模數(shù)據(jù)庫(kù),如計(jì)費(fèi)、CRM、話(huà)務(wù)網(wǎng)管等;既有OLTP為主的系統(tǒng),如CRM、呼叫中心等,也有很多以O(shè)LAP型為主的系統(tǒng),如數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)集市等,還有很多OLTP和OLAP混合型系統(tǒng),如結(jié)算、賬務(wù)、網(wǎng)管等,既有以本地區(qū)為主導(dǎo)的系統(tǒng),又有全國(guó)型集中化的系統(tǒng)。所以對(duì)數(shù)據(jù)庫(kù)云平臺(tái)的要求也呈現(xiàn)出一定的電信級(jí)要求。
·靈活的資源分配和管理能力,可以同時(shí)支持“大分小”和“小合大”兩類(lèi)要求。
·混合型數(shù)據(jù)庫(kù)架構(gòu),既可以支持“數(shù)據(jù)庫(kù)集群”型的OLTP交易,又可以支持 “數(shù)據(jù)庫(kù)集群”型的OLAP處理。
·極高的處理性能,保證數(shù)據(jù)庫(kù)云平臺(tái)可以支撐大量數(shù)據(jù)庫(kù)應(yīng)用。
·極高的擴(kuò)展能力,保證數(shù)據(jù)庫(kù)云平臺(tái)可以不斷地線(xiàn)性擴(kuò)展。
·極高的可靠性,保證業(yè)務(wù)的連續(xù)性。
·高性?xún)r(jià)比、低能耗。
·完善、統(tǒng)一、可視化的管理能力。
滿(mǎn)足電信級(jí)數(shù)據(jù)庫(kù)PaaS云平臺(tái)要求的理想架構(gòu),需要軟件和硬件的有機(jī)結(jié)合來(lái)構(gòu)成,每個(gè)組成部分既需要硬件能力,也需要軟件特性配合來(lái)實(shí)現(xiàn)整體目標(biāo)。
3.1.1 計(jì)算資源池
從硬件來(lái)看,這一部分是運(yùn)行數(shù)據(jù)庫(kù)的主要部分,需要實(shí)現(xiàn)低成本化堆疊、分布式網(wǎng)格計(jì)算能力,所以需要多服務(wù)器、多CPU協(xié)同、網(wǎng)格集群化的運(yùn)行環(huán)境。為了實(shí)現(xiàn)這個(gè)目標(biāo),利用低成本的x86架構(gòu)的多服務(wù)器堆疊,配合共享磁盤(pán)架構(gòu)數(shù)據(jù)庫(kù)集群是最理想的架構(gòu),因?yàn)槎嗯_(tái)x86架構(gòu)可以提供低成本、快速的擴(kuò)展能力,但與小型機(jī)相比,x86架構(gòu)的可靠性不夠,可以通過(guò)共享磁盤(pán)架構(gòu)的數(shù)據(jù)庫(kù)集群來(lái)提高整體運(yùn)行的可靠性,同時(shí)能夠發(fā)揮多服務(wù)器的分布式并行處理能力。
從軟件來(lái)看,計(jì)算資源池要求能夠?qū)Y源進(jìn)行靈活的分配和管理,既可以將一個(gè)服務(wù)器的部分資源分配給一個(gè)特定應(yīng)用,即“大分小”,也可以將多個(gè)服務(wù)器資源整合成為一個(gè)應(yīng)用,即“小合大”。同時(shí)還能夠在資源池內(nèi)部和外部按照需要?jiǎng)討B(tài)調(diào)整原有分配的資源關(guān)系,比如隨需增加或減少一個(gè)應(yīng)用服務(wù)所占的CPU、內(nèi)存等。
3.1.2 存儲(chǔ)資源池
從硬件來(lái)看,作為數(shù)據(jù)庫(kù)的存儲(chǔ)部分,具備低成本、分布式并行特點(diǎn),可以通過(guò)多個(gè)小的存儲(chǔ)單元堆疊方式不斷地進(jìn)行線(xiàn)性擴(kuò)展,構(gòu)成大規(guī)模存儲(chǔ)資源池;同時(shí)作為數(shù)據(jù)庫(kù)存儲(chǔ),需要具備大容量的多級(jí)緩存機(jī)制,使得數(shù)據(jù)庫(kù)中的熱點(diǎn)數(shù)據(jù)可以通過(guò)緩存來(lái)提高處理性能;另外隨著數(shù)據(jù)量的不斷增加,存儲(chǔ)單元需要具備足夠的CPU和計(jì)算能力,參與到數(shù)據(jù)的預(yù)處理過(guò)程中來(lái),以減輕數(shù)據(jù)庫(kù)服務(wù)器所需處理的數(shù)據(jù)量。
從軟件來(lái)看,由于電信企業(yè)數(shù)據(jù)規(guī)模的不斷增加,特別是網(wǎng)絡(luò)運(yùn)維應(yīng)用包含大量的網(wǎng)元數(shù)據(jù),需要存儲(chǔ)具備較高的數(shù)據(jù)壓縮比,以節(jié)省存儲(chǔ)空間,另外存儲(chǔ)側(cè)可以通過(guò)并行化的方式對(duì)數(shù)據(jù)進(jìn)行預(yù)分揀和預(yù)過(guò)濾,提高數(shù)據(jù)的處理效率。
3.1.3 網(wǎng)絡(luò)互聯(lián)
圖4 網(wǎng)絡(luò)互聯(lián)技術(shù)
在數(shù)據(jù)庫(kù)云平臺(tái)方面,需要采用大量的主機(jī)集群及存儲(chǔ)集群,為了讓這些集群能夠發(fā)揮最佳的效果,必須使用效率最高的內(nèi)部網(wǎng)絡(luò)把它們連接起來(lái),目前比較成熟的網(wǎng)絡(luò)技術(shù)主要有萬(wàn)兆以太網(wǎng)以及Infiniteband,如圖4所示。這兩種技術(shù)都可以提供高速的內(nèi)部連接,用來(lái)實(shí)現(xiàn)主機(jī)之間的集群連接、存儲(chǔ)單元之間的互聯(lián)以及主機(jī)到存儲(chǔ)單元之間的數(shù)據(jù)連接。
從目前實(shí)踐來(lái)看,要符合電信級(jí)數(shù)據(jù)庫(kù)PaaS云平臺(tái)的要求,Oracle的Exadata數(shù)據(jù)庫(kù)云服務(wù)器是一個(gè)理想選擇。
3.2.1 分布式服務(wù)器資源池
Exadata數(shù)據(jù)庫(kù)云服務(wù)器可以通過(guò)整合多服務(wù)器的計(jì)算資源,形成一個(gè)巨大的資源池,許多不同的數(shù)據(jù)庫(kù)可運(yùn)行于同一Exadata數(shù)據(jù)庫(kù)機(jī)器上。
DB服務(wù)器通過(guò)共享配置方式使不同數(shù)據(jù)庫(kù)應(yīng)用運(yùn)行在指定的資源范圍內(nèi),可以通過(guò)Service的方式實(shí)現(xiàn)數(shù)據(jù)庫(kù)服務(wù)的虛擬化,應(yīng)用以Service的方式連接并運(yùn)行于一個(gè)或多個(gè)動(dòng)態(tài)的數(shù)據(jù)庫(kù)節(jié)點(diǎn)上,可以動(dòng)態(tài)地增長(zhǎng)、回收和移動(dòng)。通過(guò)Service虛擬化可以實(shí)現(xiàn)“大分小”和“小合大”的虛擬化應(yīng)用。
·大型數(shù)據(jù)庫(kù)可通過(guò)RAC技術(shù)跨越多個(gè)物理節(jié)點(diǎn);
·多個(gè)小型數(shù)據(jù)庫(kù)可以通過(guò)共享運(yùn)行于同一個(gè)物理節(jié)點(diǎn)。
對(duì)于多個(gè)數(shù)據(jù)庫(kù)運(yùn)行于同一節(jié)點(diǎn)的情況,實(shí)例綁定(instance caging)技術(shù)提供可預(yù)知的CPU核心資源,可限制數(shù)據(jù)庫(kù)運(yùn)行于特定的處理器的子集上,如圖5所示。
通過(guò)數(shù)據(jù)庫(kù)虛擬化和整合多應(yīng)用數(shù)據(jù)庫(kù)于Exadata數(shù)據(jù)庫(kù)云平臺(tái),可以使得各個(gè)應(yīng)用數(shù)據(jù)庫(kù)的資源利用率得到有效的整合和提升,以節(jié)省更多的主機(jī)、存儲(chǔ)、機(jī)房、軟件License等資源。
如企業(yè)有3個(gè)主要應(yīng)用在數(shù)據(jù)庫(kù)云平臺(tái)運(yùn)行,3類(lèi)應(yīng)用分別以Sales App、ERP App和HR App表示,如圖6所示。數(shù)據(jù)庫(kù)云平臺(tái)可以分別給3類(lèi)應(yīng)用構(gòu)建服務(wù)器資源池(server pool)和空閑資源池(free pool),3 類(lèi)應(yīng)用分別通過(guò)相應(yīng)的數(shù)據(jù)庫(kù)服務(wù)接口連接Exadata數(shù)據(jù)庫(kù)云平臺(tái)。根據(jù)實(shí)際業(yè)務(wù)需求,銷(xiāo)售部門(mén)應(yīng)用需要持續(xù)地使用較多的數(shù)據(jù)庫(kù)云資源,數(shù)據(jù)請(qǐng)求需要優(yōu)先得到滿(mǎn)足。ERP類(lèi)應(yīng)用對(duì)數(shù)據(jù)庫(kù)云資源的需求彈性較大,隨商務(wù)周期可能會(huì)有所變動(dòng),同時(shí)數(shù)據(jù)請(qǐng)求的優(yōu)先級(jí)較銷(xiāo)售部門(mén)低。HR類(lèi)應(yīng)用對(duì)數(shù)據(jù)庫(kù)云資源需求相對(duì)固定,且所需的資源最少,數(shù)據(jù)請(qǐng)求的優(yōu)先級(jí)最低。Exadata數(shù)據(jù)庫(kù)云平臺(tái)可以按照每類(lèi)應(yīng)用對(duì)資源的需求進(jìn)行管理和動(dòng)態(tài)供應(yīng)。
在Exadata數(shù)據(jù)庫(kù)云服務(wù)器中,不同應(yīng)用數(shù)據(jù)庫(kù)部署在多個(gè)數(shù)據(jù)庫(kù)服務(wù)器集群中,當(dāng)應(yīng)用負(fù)載和請(qǐng)求增長(zhǎng)時(shí),原有計(jì)算資源不足以滿(mǎn)足要求,服務(wù)質(zhì)量會(huì)下降(預(yù)定義策略),數(shù)據(jù)庫(kù)服務(wù)可以在數(shù)據(jù)庫(kù)云平臺(tái)中動(dòng)態(tài)擴(kuò)展到資源空閑的服務(wù)器中運(yùn)行,提高該服務(wù)的服務(wù)質(zhì)量。
3.2.2 分布式存儲(chǔ)資源池
Exadata數(shù)據(jù)庫(kù)云服務(wù)器本身就集成了ASM (自動(dòng)存儲(chǔ)管理)的存儲(chǔ)管理功能,用來(lái)實(shí)現(xiàn)存儲(chǔ)的虛擬化、高擴(kuò)展、高可靠的特點(diǎn)。
通過(guò)Oracle ASM進(jìn)行存儲(chǔ)虛擬化后,不但可以實(shí)現(xiàn)存儲(chǔ)的性能水平擴(kuò)展,而且可以實(shí)現(xiàn)存儲(chǔ)的高可用、自管理能力。加入ASM管理的存儲(chǔ)可以劃分為不同的磁盤(pán)組,當(dāng)數(shù)據(jù)存儲(chǔ)在磁盤(pán)組中時(shí),數(shù)據(jù)會(huì)均勻分布到磁盤(pán)組的各個(gè)存儲(chǔ)單元,實(shí)現(xiàn)數(shù)據(jù)均勻分布,當(dāng)磁盤(pán)組中增加或減少存儲(chǔ)單元數(shù)量時(shí),數(shù)據(jù)會(huì)被動(dòng)態(tài)地重新分布,避免出現(xiàn)任何的熱點(diǎn)磁盤(pán)。
圖5 實(shí)例綁定技術(shù)
圖6 數(shù)據(jù)庫(kù)云平臺(tái)的3類(lèi)應(yīng)用
圖7 智能存儲(chǔ)技術(shù)的處理
Exadata將數(shù)據(jù)庫(kù)計(jì)算分成計(jì)算密集型處理和存儲(chǔ)密集型處理,分別在DB服務(wù)器和存儲(chǔ)服務(wù)器完成。采用智能存儲(chǔ)技術(shù)(Smart Scan),實(shí)現(xiàn)了存儲(chǔ)層完全并發(fā)式、智能化的預(yù)處理,提高了數(shù)據(jù)的處理效率,并降低了DB服務(wù)器的處理負(fù)擔(dān),如圖7所示。
3.2.3 高性能互聯(lián)網(wǎng)絡(luò)
Oracle Exadata Storage在服務(wù)器和存儲(chǔ)之間使用了Infiniband互連。Exadata單元具有高可用性的雙端口4倍數(shù)據(jù)速率(QDR)Infiniband連接。每個(gè)Infiniband連接提供了40 GB的帶寬,高于傳統(tǒng)存儲(chǔ)或服務(wù)器網(wǎng)絡(luò)許多倍。而且Oracle的互連協(xié)議使用直接內(nèi)存訪(fǎng)問(wèn)(DMA),直接將數(shù)據(jù)從線(xiàn)纜轉(zhuǎn)移到數(shù)據(jù)庫(kù)緩存,沒(méi)有額外的數(shù)據(jù)拷貝,以確保極低的CPU開(kāi)銷(xiāo)。Infiniband網(wǎng)絡(luò)具有 LAN網(wǎng)絡(luò)的靈活性和SAN的高效性,使用 InfiniBand網(wǎng)絡(luò)后,Oracle可確保網(wǎng)絡(luò)不會(huì)成為性能瓶頸,其也為 Oracle數(shù)據(jù)庫(kù)真正應(yīng)用集群節(jié)點(diǎn)提供了高性能集群互連。
3.2.4 集中化、統(tǒng)一的云平臺(tái)管理
Oracle Exadata與 Oracle企業(yè)管理器 (EM)網(wǎng)格控制進(jìn)行了集成,可輕松監(jiān)視Exadata環(huán)境。在現(xiàn)有的 EM系統(tǒng)中安裝 Exadata插件后,可以監(jiān)視Exadata Storage Server上的統(tǒng)計(jì)信息和活動(dòng),并將事件和警報(bào)發(fā)送給管理員。EM系統(tǒng)與Exadata集成的優(yōu)勢(shì)介紹如下。
·監(jiān)視 Oracle Exadata存儲(chǔ);
·收集存儲(chǔ)配置和性能信息;
·根據(jù)閾值設(shè)置發(fā)出報(bào)警和警告;
·在歷史數(shù)據(jù)的基礎(chǔ)上提供豐富的現(xiàn)成量度和報(bào)表。
所有的功能用戶(hù)均期望可以配合使用 Oracle企業(yè)管理器和Exadata。用戶(hù)可以使用 EM界面輕松地管理Exadata環(huán)境和其他以往結(jié)合企業(yè)管理器使用的 Oracle數(shù)據(jù)庫(kù)環(huán)境。DBA可以使用熟悉的 EM界面來(lái)查看報(bào)表以確定 Exadata系統(tǒng)的狀況并管理Exadata存儲(chǔ)的配置。
從本質(zhì)上來(lái)說(shuō),云計(jì)算并不是一種技術(shù)的革命,而是一種管理模式的革命。云計(jì)算的技術(shù)基礎(chǔ),不論是服務(wù)器虛擬化、存儲(chǔ)虛擬化,還是平臺(tái)軟件級(jí)別的集群和資源控制,都是已經(jīng)存在了若干年的技術(shù)。從技術(shù)手段上來(lái)說(shuō),這些技術(shù)手段短則出現(xiàn)了10年,長(zhǎng)的在30年前就已經(jīng)存在了 (如服務(wù)器虛擬化)。但是云計(jì)算之所以能對(duì)IT的建設(shè)和運(yùn)維帶來(lái)新的創(chuàng)新,關(guān)鍵在于對(duì)整個(gè)IT架構(gòu)的日常管理和運(yùn)維帶來(lái)的革命性變更。將所有的資源虛擬化后,伴隨著動(dòng)態(tài)可調(diào)的能力,大大加快了新應(yīng)用建設(shè)在平臺(tái)層的建設(shè)速度,而且能按照實(shí)際的運(yùn)行情況進(jìn)行動(dòng)態(tài)調(diào)整。
但是這種管理模式革命性的變更,也帶來(lái)了對(duì)應(yīng)用/系統(tǒng)管理維護(hù)的新需求。傳統(tǒng)方式中,在大多數(shù)的實(shí)際情況下,應(yīng)用軟件的開(kāi)發(fā)商SI不僅僅是對(duì)自己的應(yīng)用提供運(yùn)維,而且也對(duì)其應(yīng)用之下的平臺(tái)軟件/硬件進(jìn)行主要的運(yùn)維操作,并根據(jù)實(shí)際運(yùn)行的情況,對(duì)用戶(hù)提出基礎(chǔ)架構(gòu)擴(kuò)容和調(diào)整的需求。在采用 PaaS提供數(shù)據(jù)庫(kù)云的方式下,之前的SI全部負(fù)責(zé)的方式必然不可行。因?yàn)镾I不再負(fù)責(zé)包括基礎(chǔ)硬件和數(shù)據(jù)庫(kù)軟件的數(shù)據(jù)庫(kù)平臺(tái)的運(yùn)維,而只是一個(gè)數(shù)據(jù)庫(kù)作為服務(wù)的消費(fèi)者,必須要有第三方負(fù)責(zé)相應(yīng)云平臺(tái)的運(yùn)維。同時(shí),由于實(shí)際的情況,SI往往會(huì)提出自己的數(shù)據(jù)庫(kù)服務(wù)需要的資源變更請(qǐng)求,對(duì)于這些資源變更請(qǐng)求的評(píng)估和批準(zhǔn),當(dāng)然也應(yīng)該由SI之外的人員/組織予以完成。簡(jiǎn)單總結(jié)一下,在采用數(shù)據(jù)庫(kù)云平臺(tái)后,原來(lái)的SI和最終用戶(hù)的關(guān)系會(huì)演變成如下4方面的關(guān)系,如圖8所示。
首先引入的是SI的數(shù)據(jù)庫(kù)云平臺(tái)維護(hù)者,負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)云平臺(tái)的日常監(jiān)控、安全管理等工作。而且需要由數(shù)據(jù)庫(kù)云平臺(tái)管理者負(fù)責(zé)對(duì)開(kāi)發(fā)商提出的資源變更需求進(jìn)行決策,判斷是否應(yīng)當(dāng)進(jìn)行資源調(diào)整。數(shù)據(jù)庫(kù)云平臺(tái)的管理者也需要根據(jù)實(shí)際業(yè)務(wù)的情況和云平臺(tái)維護(hù)者給出的系統(tǒng)報(bào)告,主動(dòng)地進(jìn)行資源調(diào)整,以確保系統(tǒng)的資源利用率和各個(gè)應(yīng)用的服務(wù)質(zhì)量。
這樣的管理模式變革,對(duì)數(shù)據(jù)庫(kù)云平臺(tái)也提出了相應(yīng)的技術(shù)要求。例如,必須有完整的監(jiān)控手段,監(jiān)控各個(gè)應(yīng)用資源的使用情況,而且不僅僅是監(jiān)控,還需要提供更高層次的診斷和優(yōu)化工具,避免由于SI開(kāi)發(fā)應(yīng)用的低效率而導(dǎo)致的資源浪費(fèi),避免誰(shuí)的應(yīng)用越爛,誰(shuí)就能分配更多資源的不良情況。
對(duì)于數(shù)據(jù)庫(kù)云平臺(tái)的維護(hù)者來(lái)說(shuō),也需要更高的技能提升,能在多租戶(hù)的情況下,從數(shù)據(jù)庫(kù)的運(yùn)維上升到數(shù)據(jù)庫(kù)云的運(yùn)維。對(duì)平臺(tái)維護(hù)者來(lái)說(shuō),也是一個(gè)全新的課題。
基于廣東移動(dòng)網(wǎng)絡(luò)運(yùn)維部門(mén)數(shù)據(jù)庫(kù)系統(tǒng)多而雜的特點(diǎn),在數(shù)據(jù)庫(kù)云平臺(tái)部署過(guò)程中,對(duì)云平臺(tái)的管理和運(yùn)維也相應(yīng)總結(jié)了一套實(shí)用的管理流程,其主要涵蓋了從部署云資源池、應(yīng)用申請(qǐng)?jiān)破脚_(tái)資源需求、評(píng)估和審批資源,到部署應(yīng)用服務(wù)和所對(duì)應(yīng)的計(jì)算和存儲(chǔ)資源、服務(wù)資源SLA管理和按需資源調(diào)度,再到最終應(yīng)用退出和資源回收的一套完整過(guò)程。下面簡(jiǎn)單舉例說(shuō)明部分管理流程要點(diǎn),如圖9所示。
圖8 原來(lái)的SI和最終用戶(hù)的關(guān)系
圖9 部分管理流程要點(diǎn)
4.2.1 創(chuàng)建資源服務(wù)池
首先基于Exadata構(gòu)建廣東移動(dòng)網(wǎng)絡(luò)運(yùn)維的多個(gè)數(shù)據(jù)庫(kù)資源池,分為OLTP型應(yīng)用資源池、OLAP型應(yīng)用資源池、空閑資源池等,如圖10所示,將部分服務(wù)器劃分在各個(gè)對(duì)應(yīng)的資源池內(nèi)。
圖10 數(shù)據(jù)庫(kù)資源池分類(lèi)
4.2.2 評(píng)估原有生產(chǎn)系統(tǒng)業(yè)務(wù)特點(diǎn)
對(duì)原有各個(gè)生產(chǎn)系統(tǒng)進(jìn)行調(diào)研和評(píng)估,評(píng)估原有系統(tǒng)的硬件配置和系統(tǒng)容量,如圖11所示。對(duì)應(yīng)用特點(diǎn)進(jìn)行評(píng)估,評(píng)估業(yè)務(wù)特點(diǎn)和處理峰值。評(píng)估業(yè)務(wù)系統(tǒng)遷移到Exadata數(shù)據(jù)庫(kù)云平臺(tái)后,對(duì)所需的存儲(chǔ)和計(jì)算能力需求以及對(duì)應(yīng)用的重要程度進(jìn)行評(píng)估分類(lèi),以便在數(shù)據(jù)庫(kù)云平臺(tái)中進(jìn)行資源控制和服務(wù)級(jí)別管理。
4.2.3 創(chuàng)建業(yè)務(wù)服務(wù)并配置對(duì)應(yīng)分配的資源
將各個(gè)業(yè)務(wù)應(yīng)用創(chuàng)建成數(shù)據(jù)庫(kù)應(yīng)用服務(wù),在所對(duì)應(yīng)的資源池內(nèi)進(jìn)行部署,并按照各個(gè)數(shù)據(jù)庫(kù)應(yīng)用服務(wù)的評(píng)估所需的資源進(jìn)行初始資源劃分,如圖12所示。并按照各個(gè)應(yīng)用服務(wù)服務(wù)的生產(chǎn)規(guī)律性周期頻度,進(jìn)行規(guī)律性資源計(jì)劃定義。
經(jīng)過(guò)實(shí)際測(cè)試,基于現(xiàn)網(wǎng)真實(shí)數(shù)據(jù)和應(yīng)用,測(cè)試Exadata數(shù)據(jù)庫(kù)云平臺(tái)的多類(lèi)應(yīng)用(OLTP+OLAP),性能提升從44倍到6 750倍。原來(lái)數(shù)小時(shí)的大作業(yè)類(lèi)似于OLAP,目前只需要幾秒鐘完成,基本都提高了上千倍。原來(lái)大量循環(huán)+游標(biāo)類(lèi)似于OLTP的存儲(chǔ)過(guò)程也有44倍和127倍的提高,見(jiàn)表1。
對(duì)于Exadata的數(shù)據(jù)庫(kù)云平臺(tái)擴(kuò)展能力測(cè)試,告警SQL5(CPU 高負(fù)載 SQL,SQL達(dá) 34 KB)從 1/4配(執(zhí)行時(shí)間0:01:08)擴(kuò)展到1/2配(執(zhí)行時(shí)間0:00:31)時(shí),可以明顯發(fā)現(xiàn)執(zhí)行時(shí)間線(xiàn)性減少(從68 s到31 s),如圖13所示。
經(jīng)過(guò)測(cè)試,用現(xiàn)網(wǎng)生產(chǎn)數(shù)據(jù)在Exadata數(shù)據(jù)庫(kù)云平臺(tái)中壓縮存儲(chǔ),Exadata對(duì)兩個(gè)大表的壓縮率分別可達(dá)到7倍和10倍,見(jiàn)表2。
配置兩個(gè)數(shù)據(jù)庫(kù)服務(wù)Service1、Service2,可以在數(shù)據(jù)庫(kù)云服務(wù)虛擬池內(nèi)實(shí)現(xiàn)服務(wù)的動(dòng)態(tài)擴(kuò)展、回收和遷移。
建立ora.gmsp服務(wù)池,管理dm01db01、dm01db02兩個(gè)服務(wù)器的資源。Srvctl add srvpool–g ora.gmsp–l 0-u-1–i 0–n dm01db01,dm01db02也可以在Oracle企業(yè)管理器界面中添加服務(wù)器池。
圖11 原有生產(chǎn)系統(tǒng)評(píng)估示例
圖12 初始資源劃分
表1 實(shí)際測(cè)試結(jié)果
圖13 數(shù)據(jù)庫(kù)云平臺(tái)擴(kuò)展能力測(cè)試
表2 壓縮比測(cè)試結(jié)果
添加dbfsdg_mount資源具體操作方法如下。
·在Oracle企業(yè)管理器界面中服務(wù)器集群dm01-cluster上的資源管理處添加資源。
·資源名:dbfsdg_mount。
·資源類(lèi)型:local_resource。
·操作程序:代理文件和操作腳本。
在數(shù)據(jù)庫(kù)云平臺(tái)內(nèi),可以按照業(yè)務(wù)優(yōu)先級(jí)配置系統(tǒng)資源供給。能夠配置的資源包括業(yè)務(wù)的CPU、內(nèi)存、并發(fā)會(huì)話(huà)數(shù)以及I/O優(yōu)先級(jí)和吞吐量。
通過(guò)在Oracle企業(yè)管理器界面中定義資源計(jì)劃,可以基于多種條件將不同的會(huì)話(huà)劃分到多個(gè)資源組中,對(duì)不同的資源組分配不同的CPU資源,分配CPU資源可以基于CPU百分比,定義多個(gè)優(yōu)先級(jí)進(jìn)行分配。
5.5.1 對(duì)CPU的分配
在系統(tǒng)中定義了 OLTP_GROUP、OLAP_GROUP和OTHER_GROUP 3個(gè)資源組,根據(jù)需求,為不同的資源組分配不同的CPU比例。
·OLAP_GROUP:60%。
·OLTP_GROUP:20%。
·OTHER_GROUP:20%。
通過(guò)分配,可以保證資源組中的會(huì)話(huà)獲得所需的CPU資源,高優(yōu)先級(jí)的會(huì)話(huà)獲得更多的資源。
5.5.2 對(duì)最大活動(dòng)會(huì)話(huà)數(shù)的分配
通 過(guò) 定 義 OLTP_GROUP、OLAP_GROUP和OTHER_GROUP 3個(gè)資源組,對(duì)資源組中的用戶(hù)限制最大活動(dòng)會(huì)話(huà)數(shù)。
·OLAP_GROUP:300。
·OLTP_GROUP:50。
·OTHER_GROUP:100。
資源組中的用戶(hù)的并發(fā)會(huì)話(huà)不能超過(guò)設(shè)定的上限,超過(guò)上限的會(huì)話(huà)創(chuàng)建請(qǐng)求會(huì)被放置在隊(duì)列中。
5.5.3 對(duì)I/O資源的分配
通過(guò)定義 OLTP_GROUP、OLAP_GROUP和OTHER_GROUP 3個(gè)資源組,對(duì)可使用的I/O帶寬和每秒鐘的I/O次數(shù)進(jìn)行限制,保證高優(yōu)先級(jí)的用戶(hù)獲得更快的I/O響應(yīng)。
·OLAP_GROUP:每秒最高I/O帶寬使用10 000 MB,I/O次數(shù)上限為100 000次。
圖14 集中化管理和監(jiān)控?cái)?shù)據(jù)界面
·OLTP_GROUP:每秒最高I/O帶寬使用 100 MB,I/O次數(shù)不受限制。
·OTHER_GROUP:每秒最高I/O帶寬使用1 000 MB,I/O次數(shù)不受限制。
通過(guò)云管理平臺(tái)監(jiān)控系統(tǒng)運(yùn)行情況,可查看主機(jī)、存儲(chǔ)、網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)等基本信息,查看日志和告警信息等。
登錄Oracle企業(yè)管理器的管理界面,在目標(biāo)主機(jī)中找到Exadata的主機(jī),打開(kāi)主機(jī)后在性能選項(xiàng)卡中可以看到 CPU、內(nèi)存、磁盤(pán)I/O的使用率曲線(xiàn),如圖14所示。
云計(jì)算給電信企業(yè)帶來(lái)了技術(shù)的創(chuàng)新,也帶來(lái)了管理的變革、支撐形式的挑戰(zhàn)和業(yè)務(wù)運(yùn)營(yíng)的機(jī)遇。隨著數(shù)據(jù)庫(kù)云平臺(tái)的逐漸成熟和落地,會(huì)看到更加靈活、快捷的應(yīng)用的部署;更加低能耗、低成本的運(yùn)營(yíng);更加簡(jiǎn)單的維護(hù)和管理;更加容易實(shí)現(xiàn)的大規(guī)模系統(tǒng)建設(shè)甚至全國(guó)性集中化系統(tǒng)的建設(shè),由此而帶來(lái)的是企業(yè)規(guī)模式效益、全網(wǎng)化的營(yíng)銷(xiāo)和服務(wù)、統(tǒng)一和集中化的管理等價(jià)值,對(duì)電信企業(yè)的轉(zhuǎn)型起到關(guān)鍵的作用。所以進(jìn)一步深入探索和實(shí)現(xiàn)低成本、大規(guī)模數(shù)據(jù)庫(kù)云計(jì)算技術(shù),特別是與之配合的管理和運(yùn)維問(wèn)題,是下一步深化數(shù)據(jù)庫(kù)云計(jì)算技術(shù)的關(guān)鍵任務(wù)。