甲骨論2012版oracle視頻教程-相克軍老師集群簡(jiǎn)介_第1頁
甲骨論2012版oracle視頻教程-相克軍老師集群簡(jiǎn)介_第2頁
甲骨論2012版oracle視頻教程-相克軍老師集群簡(jiǎn)介_第3頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

對(duì)于RAC來說,最重要的還是要理解內(nèi)部原理和體系結(jié)構(gòu)。安裝不是非常難的事情。排錯(cuò)和維護(hù)都離不開體系結(jié)構(gòu)以及內(nèi)部原理。集群分類1、高性能計(jì)算 計(jì)算任務(wù)分配到不同計(jì)算機(jī)節(jié)點(diǎn)來提高整體計(jì)算能力,主要應(yīng)用在科學(xué)計(jì)算領(lǐng)域。主要利用的是并行計(jì)算。2、負(fù)載均衡集群(LB) 把業(yè)務(wù)的負(fù)載流量盡可能的平均合理的分配到集群的各個(gè)節(jié)點(diǎn)上,每個(gè)節(jié)點(diǎn)都可以處理一部分負(fù)載,并且可以根據(jù)負(fù)載情況進(jìn)行動(dòng)態(tài)的平衡。負(fù)載均衡算法不是簡(jiǎn)單的平均,而是根據(jù)每個(gè)節(jié)點(diǎn)的可用資源或網(wǎng)絡(luò)的特殊情況來進(jìn)行優(yōu)化分配。因此分配+合理才是負(fù)載均衡的核心。3、高可用性(HA) 側(cè)重于提高系統(tǒng)的可用性,集成硬件和軟件的容錯(cuò)性來實(shí)現(xiàn)整體服務(wù)的高可用性。如果某個(gè)節(jié)點(diǎn)發(fā)生故障,另外的節(jié)點(diǎn)代替他。RAC是真正的LB和HA的復(fù)合體。從某種意義上說,只有最終應(yīng)用(數(shù)據(jù)庫)才能實(shí)現(xiàn)真正意義上的LB,而絕大多數(shù)的集群都是HA。集群環(huán)境的特殊問題1、并發(fā)控制集群環(huán)境中,存在共享存儲(chǔ)的問題。集群中各個(gè)節(jié)點(diǎn)對(duì)共享存儲(chǔ)是對(duì)等的,所有節(jié)點(diǎn)對(duì)數(shù)據(jù)有相同的訪問權(quán)限,因此需要某種機(jī)制來控制節(jié)點(diǎn)對(duì)數(shù)據(jù)的訪問。在RAC中,采用的是DLM(DistributeLockManagement)機(jī)制來進(jìn)行實(shí)例間的并發(fā)控制。2、健忘癥(Amnesia)如果集群環(huán)境的配置文件不是集中存放,每個(gè)節(jié)點(diǎn)都有一個(gè)本地副本,集群正常運(yùn)行的時(shí)候,用戶可以在任何節(jié)點(diǎn)修改集群的配置,并且這些更改都會(huì)自動(dòng)同步到其他節(jié)點(diǎn)。如果節(jié)點(diǎn)1因?yàn)檎5木S護(hù)需要關(guān)機(jī),節(jié)點(diǎn)2修改了配置,然后關(guān)閉節(jié)點(diǎn)2.啟動(dòng)節(jié)點(diǎn)1,因?yàn)橹肮?jié)點(diǎn)2做的配置修改沒有同步到節(jié)點(diǎn)1,所以將節(jié)點(diǎn)1啟動(dòng)以后,他仍然使用舊的配置文件,造成配置丟失。3、腦裂(splitbrain)集群中,節(jié)點(diǎn)之間需要通過某種機(jī)制(心跳)了解彼此的健康情況,以確保各個(gè)節(jié)點(diǎn)協(xié)調(diào)工作。假設(shè)只是心跳出現(xiàn)故障,各個(gè)節(jié)點(diǎn)還在正常的工作,每個(gè)節(jié)點(diǎn)都認(rèn)為其他節(jié)點(diǎn)宕機(jī),自己是整個(gè)集群的唯一健在者,因此需要獲得整個(gè)集群的“控制權(quán)”。存儲(chǔ)是共享的,這就意味著災(zāi)難,這種情況就是“腦裂”。投票算法可以解決這個(gè)問題每個(gè)節(jié)點(diǎn)會(huì)在投票區(qū)記錄自己的票數(shù)(自己收到了多少節(jié)點(diǎn)的心跳,一個(gè)心跳是一票),各個(gè)節(jié)點(diǎn)會(huì)讀取其與節(jié)點(diǎn)的票數(shù)。如果一個(gè)集群分成了兩個(gè)partition,一個(gè)partition是3個(gè)節(jié)點(diǎn),一個(gè)partition是2個(gè)節(jié)點(diǎn)。那么3個(gè)節(jié)點(diǎn)的partition里面所有的節(jié)點(diǎn)的票數(shù)都是3,兩個(gè)節(jié)點(diǎn)的partition里面所有節(jié)點(diǎn)的票數(shù)都是2.擁有兩個(gè)節(jié)點(diǎn)的partition會(huì)被踢出,自動(dòng)重啟。如果兩個(gè)partition的節(jié)點(diǎn)都相同,那么第一個(gè)控制投票區(qū)的partiton將會(huì)存活,另外一個(gè)partition將會(huì)被踢出而重啟,這種情況通常是master節(jié)點(diǎn)(一般是第一個(gè)啟動(dòng)的節(jié)點(diǎn))所在的partition將會(huì)存活。4、IO隔離(IOFencing)、集群出現(xiàn)故障,必須判斷哪個(gè)節(jié)點(diǎn)應(yīng)該獲得集群的控制權(quán),那些節(jié)點(diǎn)需要被踢出。這時(shí)投票需要解決的問題。僅僅將他們踢出還不足夠,因?yàn)樗麄兛赡苓€在繼續(xù)運(yùn)行(只是離開了這個(gè)集群),需要保證他們不再訪問共享數(shù)據(jù)。這就是IO隔離要解決的問題。IOFencing實(shí)現(xiàn)有硬件和軟件方式。各個(gè)集群廠商使用的方式不同,有些需要硬件的支持(主要是存儲(chǔ)設(shè)備是否支持某些協(xié)議)。OracleRAC使用的是軟件的方式,直接重啟故障節(jié)點(diǎn)。無論采用哪種方式,IOFencing的目的就是保證故障節(jié)點(diǎn)不能繼續(xù)訪問共享數(shù)據(jù)。有一些存儲(chǔ)設(shè)備支持SCSIReserve/Release命令,正常節(jié)點(diǎn)使用SCSIReserve命令鎖住存儲(chǔ)設(shè)備,故障節(jié)點(diǎn)發(fā)現(xiàn)存儲(chǔ)被鎖定,就知道自己已經(jīng)被踢出了cluster,自行重啟,這種機(jī)制叫做自殺機(jī)制(suicide)。例如Sun和Veritas的集群使用的就是這種機(jī)制。無論軟件還是硬件,大致原理就是:正常節(jié)點(diǎn)通過某種方式告知故障節(jié)點(diǎn),故障節(jié)點(diǎn)會(huì)進(jìn)行重啟。告知的方式有硬件和軟件之分,硬件更加安全一些。RAC集群2001年發(fā)布了Oracle9i,其中就有RAC。RAC是在OPS(Oracle6開始發(fā)布)的基礎(chǔ)上發(fā)展起來的,OPS是最初的集群產(chǎn)品,但是OPS的集群性能還是很差的,這和他的工作機(jī)制有關(guān)系。應(yīng)用程序Oracle集群管理軟件操作系統(tǒng)Linux應(yīng)用程序Oracle集群管理軟件操作系統(tǒng)LinuxPublic網(wǎng)絡(luò)Private網(wǎng)絡(luò)共享存儲(chǔ)節(jié)點(diǎn)節(jié)點(diǎn)存儲(chǔ)層RAC是一個(gè)多實(shí)例、單數(shù)據(jù)庫的系統(tǒng)。數(shù)據(jù)文件、聯(lián)機(jī)日志文件、控制文件等存儲(chǔ)在共享存儲(chǔ)上。經(jīng)常使用的存儲(chǔ):例如EMC、NETAPP、IBM、HP等。每個(gè)服務(wù)器通過HBA卡和光纖線連接到存儲(chǔ)上。實(shí)例指的是SGA和BackgroundProcess組成的運(yùn)行時(shí)環(huán)境,是一個(gè)動(dòng)態(tài)的概念,數(shù)據(jù)庫特指數(shù)據(jù)文件、控制文件、日志文件等這些物理上存在的文件。Oracle數(shù)據(jù)庫實(shí)例和數(shù)據(jù)庫是n:1的關(guān)系,單實(shí)例中,因?yàn)閮烧呤?:1的關(guān)系,兩者的區(qū)別沒有被提及。RAC環(huán)境中,會(huì)有多個(gè)實(shí)例,而數(shù)據(jù)庫只有一份,必須區(qū)分這兩個(gè)概念。網(wǎng)絡(luò)層在整個(gè)RAC環(huán)境中,實(shí)際上有三個(gè)網(wǎng)絡(luò)1、Public網(wǎng)卡接入的網(wǎng)絡(luò),對(duì)外提供查詢服務(wù)2、Private網(wǎng)卡組成的私有網(wǎng)絡(luò),用于RAC的心跳和CacheFusion3、存儲(chǔ)設(shè)備、光纖交換機(jī)、每個(gè)節(jié)點(diǎn)的HBA卡組成的存儲(chǔ)網(wǎng)絡(luò)前兩個(gè)上面?zhèn)鬏數(shù)氖荌P數(shù)據(jù)包最后一個(gè)傳輸?shù)氖荢CSI數(shù)據(jù)集群件層單機(jī)環(huán)境:Oracle運(yùn)行在OSKernel之上,OS負(fù)責(zé)管理硬件設(shè)備,并且提供硬件訪問接口。Oracle不會(huì)直接訪問硬件,而是通過OSKernel代替他來完成對(duì)硬件的調(diào)用請(qǐng)求。集群環(huán)境:存儲(chǔ)設(shè)備是共享的,OSKernel是針對(duì)單機(jī)設(shè)計(jì)的,只能控制單機(jī)上多個(gè)進(jìn)程對(duì)存儲(chǔ)的訪問,如果僅靠OSKernel無法控制多個(gè)節(jié)點(diǎn)對(duì)存儲(chǔ)的訪問。RAC中在OSKernel和Oracle之間加上了一層clusterware,他會(huì)在OSKernel之前截獲請(qǐng)求,然后和其他節(jié)點(diǎn)上的clusterware協(xié)商,最終完成上層的請(qǐng)求。Application(Oracle)OSKernelApplication(Oracle)ClusterWareOSKernelApplication(Oracle)ClusterWareOSKernel單機(jī)環(huán)境集群環(huán)境Clusterware軟件的實(shí)現(xiàn)Oracle10g之前,RAC需要的集群軟件依賴硬件廠商(IBM、HP、SUN都有自己集群軟件)、還有第三方廠商(例如Veritas)。在不同的平臺(tái)上實(shí)施RAC需要先安裝和配置廠商的集群軟件。而Oracle自己只提供了Linux和Windows平臺(tái)上的集群軟件,叫做OracleClusterManager。因此不利于統(tǒng)一解決方案,容易造成互相推諉的問題。Oracle10g以后,10.1版本開始,Oracle提供了一個(gè)“平臺(tái)中立”的集群產(chǎn)品(ClusterReadyService),Oracle不再依賴任何廠商的集群軟件。從10.2開始,這個(gè)產(chǎn)品更名為OracleClusterware,其他軟件也可以借助其API輕易的實(shí)現(xiàn)集群功能。應(yīng)用的集群功能有幾個(gè)特點(diǎn):這個(gè)軟件可以被集群軟件啟動(dòng)和關(guān)閉、這個(gè)軟件的狀態(tài)可以被集群監(jiān)控、這個(gè)軟件可以被集群切換到另外一個(gè)節(jié)點(diǎn)、這個(gè)軟件可以被集群提供負(fù)載均衡。Oracle即使提供了一站式的集群服務(wù),但是對(duì)于別的廠商的集群軟件產(chǎn)品還是繼續(xù)支持。只是在Linux平臺(tái)下,必須選用CRS。應(yīng)用層CRSResource,整個(gè)應(yīng)用層是由若干CRSResource組成的。一個(gè)Resource通常就是一個(gè)進(jìn)程、或者一組進(jìn)程組成的一個(gè)完整服務(wù)。集群環(huán)境之所以能提供高可用性,是因?yàn)榧很浖–RS)對(duì)運(yùn)行于其上的應(yīng)用進(jìn)行監(jiān)視,并在發(fā)生異常時(shí)進(jìn)行重啟、切換等干預(yù)手段。這些被CRS監(jiān)控的對(duì)象就叫做CRSResource。這些Resource是在安裝RAC的過程中自動(dòng)或者手工創(chuàng)建,并且注冊(cè)到CRS中,以元數(shù)據(jù)(metadata)的形式存在OCR磁盤上。這些元數(shù)據(jù)包括Resource的名稱、如何啟動(dòng)、停止、如何檢查健康狀況等配置信息。RAC的CRSResource包括GSD(GlobalServiceDaemon)、ONS(OracleNotificationServiceDaemon)、VIP、Database、Instance、Listener、Service。Oracle將這些Resource分成兩組:nodeapps和database-related

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論