云平臺(tái)高可用數(shù)據(jù)庫(kù)服務(wù)高可用3“十校聯(lián)賽”一等獎(jiǎng)_第1頁(yè)
云平臺(tái)高可用數(shù)據(jù)庫(kù)服務(wù)高可用3“十校聯(lián)賽”一等獎(jiǎng)_第2頁(yè)
云平臺(tái)高可用數(shù)據(jù)庫(kù)服務(wù)高可用3“十校聯(lián)賽”一等獎(jiǎng)_第3頁(yè)
云平臺(tái)高可用數(shù)據(jù)庫(kù)服務(wù)高可用3“十校聯(lián)賽”一等獎(jiǎng)_第4頁(yè)
云平臺(tái)高可用數(shù)據(jù)庫(kù)服務(wù)高可用3“十校聯(lián)賽”一等獎(jiǎng)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)庫(kù)服務(wù)高可用32高可用架構(gòu)優(yōu)化將雙節(jié)點(diǎn)數(shù)據(jù)庫(kù)擴(kuò)展到多節(jié)點(diǎn)數(shù)據(jù)庫(kù),或者多節(jié)點(diǎn)數(shù)據(jù)庫(kù)集群??梢愿鶕?jù)自己的需要選擇一主兩從、一主多從或者多主多從的集群。由于半同步復(fù)制,存在接收到一個(gè)從機(jī)的成功應(yīng)答即認(rèn)為半同步復(fù)制成功的特性,所以多從半同步復(fù)制的可靠性要優(yōu)于單從半同步復(fù)制的可靠性。并且多節(jié)點(diǎn)同時(shí)宕機(jī)的幾率也要小于單節(jié)點(diǎn)宕機(jī)的幾率,所以多節(jié)點(diǎn)架構(gòu)在一定程度上可以認(rèn)為高可用性是好于雙節(jié)點(diǎn)架構(gòu)。但是由于數(shù)據(jù)庫(kù)數(shù)量較多,所以需要數(shù)據(jù)庫(kù)管理軟件來(lái)保證數(shù)據(jù)庫(kù)的可維護(hù)性。可以選擇MMM、MHA或者各個(gè)版本的proxy等等。3常見(jiàn)方案1.MHA+多節(jié)點(diǎn)集群優(yōu)點(diǎn):可以進(jìn)行故障的自動(dòng)檢測(cè)和轉(zhuǎn)移;可擴(kuò)展性較好,可以根據(jù)需要擴(kuò)展MySQL的節(jié)點(diǎn)數(shù)量和結(jié)構(gòu);相比于雙節(jié)點(diǎn)的MySQL復(fù)制,三節(jié)點(diǎn)/多節(jié)點(diǎn)的MySQL發(fā)生不可用的概率更低缺點(diǎn):至少需要三節(jié)點(diǎn),相對(duì)于雙節(jié)點(diǎn)需要更多的資源;邏輯較為復(fù)雜,發(fā)生故障后排查問(wèn)題,定位問(wèn)題更加困難;數(shù)據(jù)一致性仍然靠原生半同步復(fù)制保證,仍然存在數(shù)據(jù)不一致的風(fēng)險(xiǎn);可能因?yàn)榫W(wǎng)絡(luò)分區(qū)發(fā)生腦裂現(xiàn)象;2.zookeeper+proxy優(yōu)點(diǎn):較好的保證了整個(gè)系統(tǒng)的高可用性,包括proxy、MySQL;擴(kuò)展性較好,可以擴(kuò)展為大規(guī)模集群;缺點(diǎn):數(shù)據(jù)一致性仍然依賴(lài)于原生的mysql半同步復(fù)制;引入zk,整個(gè)系統(tǒng)的邏輯變得更加復(fù)雜;4共享存儲(chǔ)1.SAN共享儲(chǔ)存SAN的概念是允許存儲(chǔ)設(shè)備和處理器(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與LAN相比)連接,通過(guò)這種連接實(shí)現(xiàn)數(shù)據(jù)的集中式存儲(chǔ)。優(yōu)點(diǎn):兩節(jié)點(diǎn)即可,部署簡(jiǎn)單,切換邏輯簡(jiǎn)單;很好的保證數(shù)據(jù)的強(qiáng)一致性;不會(huì)因?yàn)镸ySQL的邏輯錯(cuò)誤發(fā)生數(shù)據(jù)不一致的情況;缺點(diǎn):需要考慮共享存儲(chǔ)的高可用;價(jià)格昂貴;2.DRBD磁盤(pán)復(fù)制優(yōu)點(diǎn):兩節(jié)點(diǎn)即可,部署簡(jiǎn)單,切換邏輯簡(jiǎn)單;相比于SAN儲(chǔ)存網(wǎng)絡(luò),價(jià)格低廉;保證數(shù)據(jù)的強(qiáng)一致性;缺點(diǎn):對(duì)io性能影響較大;從庫(kù)不提供讀操作;5分布式協(xié)議1.MySQLclusterMySQLcluster是官方集群的部署方案,通過(guò)使用NDB存儲(chǔ)引擎實(shí)時(shí)備份冗余數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)庫(kù)的高可用性和數(shù)據(jù)一致性。優(yōu)點(diǎn):全部使用官方組件,不依賴(lài)于第三方軟件;可以實(shí)現(xiàn)數(shù)據(jù)的強(qiáng)一致性;缺點(diǎn):國(guó)內(nèi)使用的較少;配置較復(fù)雜,需要使用NDB儲(chǔ)存引擎,與MySQL常規(guī)引擎存在一定差異;至少三節(jié)點(diǎn);2.Galera基于Galera的MySQL高可用集群,是多主數(shù)據(jù)同步的MySQL集群解決方案,使用簡(jiǎn)單,沒(méi)有單點(diǎn)故障,可用性高。優(yōu)點(diǎn):多主寫(xiě)入,無(wú)延遲復(fù)制,能保證數(shù)據(jù)強(qiáng)一致性;有成熟的社區(qū),有互聯(lián)網(wǎng)公司在大規(guī)模的使用;自動(dòng)故障轉(zhuǎn)移,自動(dòng)添加、剔除節(jié)點(diǎn);缺點(diǎn):需要為原生MySQL節(jié)點(diǎn)打wsrep補(bǔ)丁只支持innodb儲(chǔ)存引擎至少三節(jié)點(diǎn);6小結(jié)隨著人們對(duì)數(shù)據(jù)一致性的要求不斷的提高,越來(lái)越多的方法被嘗試用來(lái)解決分布式數(shù)據(jù)一致性的問(wèn)題,如MySQL自身的優(yōu)化、MySQL集群架構(gòu)的優(yōu)化、Paxos、Raft、2PC算法的引入等等。而使用分布式算法用來(lái)解決MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)一致性的問(wèn)題的方法,也越來(lái)越被人們所接受,一系列成熟的產(chǎn)品如PhxSQL、MariaDBGaleraCluster、PerconaXtraDBCluster等越來(lái)越多的被大規(guī)模使用。隨著官方MySQLGroupReplication的GA,使用分布式協(xié)議來(lái)解決數(shù)據(jù)一致性問(wèn)題已經(jīng)成為了主流的方向。期望越來(lái)越多優(yōu)秀的解決方案被提出,MySQL高可用問(wèn)題可以被更好的解決。7分布式協(xié)議8Keepalvied的工作原理

Keepalived起初是為L(zhǎng)VS設(shè)計(jì)的,由于Keeplalived可以實(shí)現(xiàn)對(duì)集群節(jié)點(diǎn)的狀態(tài)檢測(cè),而IPVS可以實(shí)現(xiàn)負(fù)載均衡功能,因此,Keepalived借助于第三方模塊IPVS就可以很方便地搭建一套負(fù)載均衡系統(tǒng),在這里有個(gè)誤區(qū),由于Keepalived可以和IPVS一起很好的工作,很多學(xué)員都以為Keepalived就是一個(gè)負(fù)載均衡軟件,這種理解是錯(cuò)誤,在Keepalived當(dāng)中IPVS模塊是可配置的,如果需要負(fù)載均衡功能,可以在編譯Keepalived時(shí)開(kāi)打負(fù)載均衡功能,也可以通過(guò)編譯參數(shù)關(guān)閉。NetLINK模塊主要用于實(shí)現(xiàn)一些高級(jí)路由框架和一些相關(guān)參數(shù)的網(wǎng)絡(luò)功能,完成用戶(hù)空間層NetlinkReflector模塊發(fā)來(lái)的各種網(wǎng)絡(luò)請(qǐng)求。用戶(hù)空間層,是建立在內(nèi)核空間層之上的,用戶(hù)空間層,主要有4個(gè)部分:SchedulerI/OMultiplexer是一個(gè)I/O復(fù)用分發(fā)調(diào)度器,它負(fù)載安排Keepalived所有內(nèi)部的任務(wù)請(qǐng)求,MemoryMngt是一個(gè)內(nèi)存管理機(jī)制,這個(gè)框架提供了訪(fǎng)問(wèn)內(nèi)存的一些通用方法ControlPlane是keepalived的控制版面,可以實(shí)現(xiàn)對(duì)配置文件編譯和解析Corecomponets這部分主要保護(hù)呢了5個(gè)部分Watchdog:是計(jì)算機(jī)可靠領(lǐng)域中極為簡(jiǎn)單又非常有效的檢測(cè)工具,Keepalived正是通過(guò)它監(jiān)控Checkers和VRRP進(jìn)程的。Checkers:這是Keepalived最基礎(chǔ)的功能,也是最主要的功能,可以實(shí)現(xiàn)對(duì)服務(wù)器運(yùn)行狀態(tài)檢測(cè)和故障隔離。VRRPStack:這時(shí)keepalived后來(lái)引用VRRP功能,可以實(shí)現(xiàn)HA集群中失敗切換功能。IPVSwrapper:這個(gè)是IPVS功能的一個(gè)實(shí)現(xiàn),IPVSwarrper模塊將可以設(shè)置好的IPVS規(guī)則發(fā)送的內(nèi)核空間并且提供給IPVS模塊,最終實(shí)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論