UCS(統(tǒng)一計(jì)算系統(tǒng))是Cisco提供的計(jì)算和網(wǎng)絡(luò)一體化解決方案,它具有無(wú)狀態(tài)計(jì)算(硬件級(jí)虛擬化),一跳自愈網(wǎng)絡(luò),虛擬化增強(qiáng)和集中管理等特點(diǎn)。本文重點(diǎn)介紹UCS特有技術(shù)對(duì)Oracle RAC部署的優(yōu)化。
Oracle RAC (真正應(yīng)用集群) 是 Oracle 數(shù)據(jù)庫(kù)的一個(gè)選件, 在 Oracle 9i 中首次引入, 它提供了數(shù)據(jù)庫(kù)橫向擴(kuò)展scale-out)的完善解決方案,為在企業(yè)網(wǎng)格計(jì)算體系中提供數(shù)據(jù)庫(kù)服務(wù)提供了基礎(chǔ)。Oracle RAC技術(shù)支持低成本的硬件平臺(tái),在保障優(yōu)質(zhì)的數(shù)據(jù)庫(kù)服務(wù)同時(shí),達(dá)到并超過(guò)昂貴的大型SMP服務(wù)器所能提供的高可靠性和可擴(kuò)展性。Oracle RAC現(xiàn)已發(fā)展成一項(xiàng)成熟的技術(shù),其用戶過(guò)萬(wàn),遍及各個(gè)行業(yè),涉及各類應(yīng)用程序。Oracle RAC 以其優(yōu)異的彈性調(diào)整能力為可伸縮的云計(jì)算環(huán)境提供支持,使得用戶可以利用低成本的硬件來(lái)降低整體成本。
高可靠性
Oracle RAC提供對(duì)稱共享數(shù)據(jù)庫(kù)服務(wù),多個(gè)節(jié)點(diǎn)可同時(shí)對(duì)外提供服務(wù)。如果 RAC 數(shù)據(jù)庫(kù)中的一個(gè)節(jié)點(diǎn)出現(xiàn)故障,其余節(jié)點(diǎn)將繼續(xù)保持工作狀態(tài),同時(shí)集群會(huì)自動(dòng)進(jìn)行故障切換和恢復(fù)。利用快速應(yīng)用程序通知,快速連接故障切換和透明應(yīng)用程序故障切換這三個(gè)功能,應(yīng)用程序可以很方便地屏蔽底層故障,實(shí)現(xiàn)零故障切換,確保用戶業(yè)務(wù)連續(xù)性,減少計(jì)劃外停機(jī)時(shí)間。
網(wǎng)絡(luò)自愈是UCS獨(dú)有的特點(diǎn)。Oracle RAC各節(jié)點(diǎn)間的集群通信,全局?jǐn)?shù)據(jù)交互,存儲(chǔ)管理均通過(guò)網(wǎng)絡(luò)完成,因此,穩(wěn)定的網(wǎng)絡(luò)連接對(duì)于RAC的穩(wěn)定性是致關(guān)重要的。在傳統(tǒng)服務(wù)器環(huán)境下,用戶需要配置6塊網(wǎng)卡,采用操作系統(tǒng)雙網(wǎng)卡綁定的方式分別支持RAC的Priv,VIP,PUB網(wǎng)段,這種方式配置復(fù)雜,且響應(yīng)時(shí)間長(zhǎng)(通常操作系統(tǒng)是30秒time-out)。而對(duì)于UCS來(lái)說(shuō),集成了硬件級(jí)的網(wǎng)絡(luò)故障自動(dòng)切換,當(dāng)出現(xiàn)任何網(wǎng)絡(luò)的故障均可自行修復(fù),提供了RAC節(jié)點(diǎn)間的可靠連接保障,避免了不必要的集群重組風(fēng)險(xiǎn)。同時(shí),通過(guò)網(wǎng)卡虛擬化,多通路復(fù)用等技術(shù),有效減少了RAC環(huán)境下網(wǎng)卡/交換端口數(shù)量,降低單位成本。
無(wú)狀態(tài)計(jì)算是UCS的創(chuàng)新技術(shù),它實(shí)現(xiàn)了以計(jì)算節(jié)點(diǎn)為粒度的硬件級(jí)虛擬化,使得應(yīng)用部署和物理節(jié)點(diǎn)實(shí)現(xiàn)的真正意義上的解耦,大幅提升資源復(fù)用和故障設(shè)備快速修復(fù)能力。在Oracle RAC環(huán)境下,當(dāng)某一節(jié)點(diǎn)出現(xiàn)設(shè)備層面故障,其它節(jié)點(diǎn)會(huì)接管該節(jié)點(diǎn)的業(yè)務(wù),但此時(shí)會(huì)降低原有設(shè)計(jì)的高可靠性,并導(dǎo)致部分節(jié)點(diǎn)的性能壓力。而傳統(tǒng)RAC故障節(jié)點(diǎn)的修復(fù)需要服務(wù)器,網(wǎng)絡(luò),存儲(chǔ),操作系統(tǒng),數(shù)據(jù)庫(kù)等多方面的專家參與,導(dǎo)致系統(tǒng)修復(fù)時(shí)間長(zhǎng),使系統(tǒng)長(zhǎng)期暴露在潛在的風(fēng)險(xiǎn)中。而在思科UCS平臺(tái)上,故障節(jié)點(diǎn)的修復(fù)僅需要服務(wù)器管理員參與,大大縮短了修復(fù)時(shí)間窗口,降低了維護(hù)成本。這種保護(hù)方式,不受傳統(tǒng)HA集群范圍的限制,能夠輕松實(shí)現(xiàn)設(shè)備層N:1的高可靠性保護(hù)。對(duì)于新設(shè)備替換,無(wú)狀態(tài)計(jì)算能力也能夠幫助用戶實(shí)現(xiàn)RAC環(huán)境下的逐步輪替,降低計(jì)劃內(nèi)停機(jī)時(shí)間,實(shí)現(xiàn)平滑過(guò)渡。
可擴(kuò)展性
傳統(tǒng)上,當(dāng)服務(wù)器容量不足時(shí),我們會(huì)使用更大的新服務(wù)器來(lái)替換它。但服務(wù)器容量越大,其價(jià)格也愈加昂貴,同時(shí)受操作系統(tǒng)自身協(xié)調(diào)能力影響,性能無(wú)法隨CPU增加而線形擴(kuò)展。對(duì)于使用 RAC 的數(shù)據(jù)庫(kù)而言,還有其他增加容量的方法。原先運(yùn)行于大型服務(wù)器上的應(yīng)用程序可遷移到小型x86服務(wù)器集群中運(yùn)行,通過(guò)多節(jié)點(diǎn)聚合的方式滿足性能要求, Oracle RAC 可向集群中添加服務(wù)器時(shí)并不需要停機(jī),且在啟動(dòng)新節(jié)點(diǎn)(實(shí)例)后,應(yīng)用程序就可立即利用這些增加的計(jì)算和內(nèi)存資源,不需要DBA手動(dòng)調(diào)整。
低網(wǎng)絡(luò)延時(shí)和高帶寬是思科UCS的固有優(yōu)勢(shì)。Oracle RAC環(huán)境中,所有跨節(jié)點(diǎn)的信息交換均需要通過(guò)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn),因此低延時(shí)、高帶寬網(wǎng)絡(luò)是Oracle RAC橫向擴(kuò)展能力的關(guān)鍵因素。思科UCS采用計(jì)算和網(wǎng)絡(luò)一體化設(shè)計(jì),其網(wǎng)絡(luò)延時(shí)是傳統(tǒng)千兆網(wǎng)絡(luò)的十分之一,而帶寬是其十倍以上,保障了RAC跨節(jié)點(diǎn)的信息交換,更有效地避免節(jié)點(diǎn)間鎖沖突,提升了Oracle RAC的性能擴(kuò)展能力。
一跳網(wǎng)格是UCS的獨(dú)特架構(gòu),它使得任意兩節(jié)點(diǎn)間的網(wǎng)絡(luò)消耗均為對(duì)等并最低。這個(gè)特性使得RAC部署及擴(kuò)展時(shí)不需要考慮物理位置帶來(lái)的影響,對(duì)于具有迭代效應(yīng)的應(yīng)用(一個(gè)結(jié)果需要多次查詢)尤其有幫助。
彈性計(jì)算服務(wù)
Oracle 真正應(yīng)用集群體系結(jié)構(gòu)可以自動(dòng)適應(yīng)快速變化的業(yè)務(wù)要求和由此帶來(lái)的負(fù)載變化。應(yīng)用可通過(guò)客戶端使用服務(wù)名連接到數(shù)據(jù)庫(kù)。Oracle 可在集群中的多個(gè)節(jié)點(diǎn)中自動(dòng)進(jìn)行用戶負(fù)載均衡。用戶可以根據(jù)需要訂閱所有或部分節(jié)點(diǎn)的數(shù)據(jù)庫(kù)服務(wù)。這樣 DBA 就可以靈活地設(shè)定某應(yīng)用使用多少數(shù)據(jù)庫(kù)資源。當(dāng)應(yīng)用需求上升時(shí),管理員可以很方便地增添處理能力。
UCS無(wú)狀態(tài)計(jì)算帶來(lái)的另外一個(gè)優(yōu)勢(shì)就是提升了硬件資源復(fù)用能力,并能夠很方便的將物理資源加入到不同的應(yīng)用系統(tǒng)集群中,實(shí)現(xiàn)了應(yīng)用需求和計(jì)算資源供給的無(wú)縫對(duì)接。當(dāng)企業(yè)用戶在做Oracle RAC規(guī)劃和部署時(shí),通常要考慮到三年的業(yè)務(wù)增長(zhǎng),都會(huì)部署較多的冗余計(jì)算資源,這會(huì)是很大的資源浪費(fèi)。而在UCS平臺(tái)上,我們可以按規(guī)劃部署多個(gè)節(jié)點(diǎn),而冗余的節(jié)點(diǎn)可以只是以邏輯的形式存放在網(wǎng)絡(luò)側(cè),當(dāng)有應(yīng)用壓力時(shí),可以按需加載到任意閑置節(jié)點(diǎn),在線增加處理能力。這一能力,可以幫助我們非常便捷地實(shí)現(xiàn)大型彈性計(jì)算平臺(tái),對(duì)多個(gè)業(yè)務(wù)系統(tǒng)提供計(jì)算能力支撐,對(duì)需要快速擴(kuò)展的系統(tǒng),可以通過(guò)橫向擴(kuò)展方式快速增加資源,對(duì)于收縮的系統(tǒng),可以快速回收資源。對(duì)有不確定業(yè)務(wù)峰值的系統(tǒng),可通過(guò)統(tǒng)一協(xié)調(diào)冗余資源滿足峰值需求。
數(shù)據(jù)庫(kù)部署配套軟硬件
優(yōu)勢(shì)對(duì)比
典型案例分析:
1.某高校學(xué)籍管理系統(tǒng),支持4萬(wàn)學(xué)生學(xué)籍及相關(guān)信息管理。
后端數(shù)據(jù)庫(kù)推薦:兩臺(tái)B200M3 2xE2620, 48G內(nèi)存;主備切換學(xué)籍管理并不是很大的數(shù)據(jù)庫(kù),且實(shí)時(shí)性要求并不高,因此可以采用較低端配置,core:memory為1:4這樣能夠保障大多數(shù)常用數(shù)據(jù)常駐在內(nèi)存里,提升效率–類似系統(tǒng)查詢比例遠(yuǎn)比寫入比例高。
2.某醫(yī)院門診系統(tǒng),支持每天12萬(wàn)門診量。
后端數(shù)據(jù)庫(kù)推薦:兩臺(tái)B440 M2 2xE4830, 64G 內(nèi)存; RAC門診系統(tǒng)的可靠性要求非常高,因此推薦采用RAC并行數(shù)據(jù)庫(kù),即使出現(xiàn)一個(gè)節(jié)點(diǎn)的連續(xù)故障,也能夠保障系統(tǒng)滿負(fù)荷運(yùn)行,結(jié)合UCS無(wú)狀態(tài)計(jì)算能力,能夠?qū)崿F(xiàn)故障節(jié)點(diǎn)快速修復(fù)。門診系統(tǒng)每個(gè)處理的關(guān)聯(lián)性并不大,因此橫向擴(kuò)展能力非常好,不會(huì)因?yàn)楣?jié)點(diǎn)過(guò)多帶來(lái)負(fù)面影響。門診系統(tǒng)寫操作相對(duì)密集,因此對(duì)存儲(chǔ)的緩存有一定要求。
3.某企業(yè)用戶的人事系統(tǒng),采用Oracle E-Business HRMS模塊,100并發(fā)用戶,2000系統(tǒng)用戶。
SAVBU提供Oracle系統(tǒng)的sizing服務(wù),在SAVBU下載相應(yīng)的調(diào)查問(wèn)卷,發(fā)送給ciscowithoracle@cisco.com
http://savtg.cisco.com/enterprise-applications/oracle#Sizing Questionairre
第一次填調(diào)查問(wèn)卷是很麻煩的一件事,但清楚的描述用戶需求是準(zhǔn)確評(píng)估的重要保障,因此,請(qǐng)SE務(wù)必花時(shí)間填寫清楚。總的來(lái)說(shuō),100 HR并發(fā)用戶并不是很大的系統(tǒng)。
4.某省級(jí)政府綜合業(yè)務(wù)系統(tǒng),業(yè)務(wù)類型包括查詢,新增,修改及部分批處理業(yè)務(wù),12TB實(shí)際數(shù)據(jù)量。支持4萬(wàn)用戶,1.5萬(wàn)在線用戶,2000并發(fā)用戶。
后端數(shù)據(jù)庫(kù)推薦:四臺(tái)B440 M2, 4xE7 4870, 128G內(nèi)存; RAC核心系統(tǒng),必須通過(guò)RAC多節(jié)點(diǎn)技術(shù)實(shí)現(xiàn)高穩(wěn)定性和橫向性能擴(kuò)展,即使出現(xiàn)一半硬件故障,也能夠保障滿負(fù)荷業(yè)務(wù)運(yùn)行,采用萬(wàn)兆低延時(shí)網(wǎng)絡(luò)保障橫向擴(kuò)展能力。采用高主頻處理器,應(yīng)對(duì)部分批處理業(yè)務(wù)–如果沒(méi)有很好的數(shù)據(jù)分區(qū)規(guī)劃,批處理易產(chǎn)生較大的跨節(jié)點(diǎn)數(shù)據(jù)沖突,高性能的節(jié)點(diǎn)能夠避免這樣的情況,并保障批處理業(yè)務(wù)的處理速度。