集群和分布式課件_第1頁(yè)
集群和分布式課件_第2頁(yè)
集群和分布式課件_第3頁(yè)
集群和分布式課件_第4頁(yè)
集群和分布式課件_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、集群和分布式一、區(qū)別分布式是以縮短單個(gè)任務(wù)的執(zhí)行時(shí)間來(lái)提升效率的,而集群則是通過(guò)提高單位時(shí)間內(nèi)執(zhí)行的任務(wù)數(shù)來(lái)提升效率。 如果一個(gè)任務(wù)由10個(gè)子任務(wù)組成,每個(gè)子任務(wù)單獨(dú)執(zhí)行需1小時(shí),則在一臺(tái)服務(wù)器上執(zhí)行改任務(wù)需10小時(shí)。采用分布式方案,提供10臺(tái)服務(wù)器,每臺(tái)服務(wù)器只負(fù)責(zé)處理一個(gè)子任務(wù),不考慮子任務(wù)間的依賴關(guān)系,執(zhí)行完這個(gè)任務(wù)只需一個(gè)小時(shí)。(這種工作模式的一個(gè)典型代表就是Hadoop的Map/Reduce分布式計(jì)算模型)而采用集群方案,同樣提供10臺(tái)服務(wù)器,每臺(tái)服務(wù)器都能獨(dú)立處理這個(gè)任務(wù)。假設(shè)有10個(gè)任務(wù)同時(shí)到達(dá),10個(gè)服務(wù)器將同時(shí)工作,10小時(shí),10個(gè)任務(wù)同時(shí)完成,這樣,整身來(lái)看,還是平均1小時(shí)

2、完成一個(gè)任務(wù)?。ㄗ⒁膺@里的任務(wù)和子任務(wù)的區(qū)別) Ps1:分布式:一個(gè)業(yè)務(wù)分拆多個(gè)子業(yè)務(wù),部署在不同的服務(wù)器上 集群:同一個(gè)業(yè)務(wù),部署在多個(gè)服務(wù)器上 Ps2: 集群是個(gè)物理形態(tài),分布式是個(gè)工作方式二、集群概念1.兩大關(guān)鍵特性 集群是一組協(xié)同工作的服務(wù)實(shí)體,用以提供比單一服務(wù)實(shí)體更具擴(kuò)展性與可用性的服務(wù)平臺(tái)。在客戶端看來(lái),一個(gè)集群就象是一個(gè)服務(wù)實(shí)體,但事實(shí)上集群由一組服務(wù)實(shí)體組成。與單一服務(wù)實(shí)體相比較,集群提供了以下兩個(gè)關(guān)鍵特性:可擴(kuò)展性集群的性能不限于單一的服務(wù)實(shí)體,新的服務(wù)實(shí)體可以動(dòng)態(tài)地加入到集群,從而增強(qiáng)集群的性能。高可用性集群通過(guò)服務(wù)實(shí)體冗余使客戶端免于輕易遇到out of service

3、的警告。在集群中,同樣的服務(wù)可以由多個(gè)服務(wù)實(shí)體提供。如果一個(gè)服務(wù)實(shí)體失敗了,另一個(gè)服務(wù)實(shí)體會(huì)接管失敗的服務(wù)實(shí)體。集群提供的從一個(gè)出 錯(cuò)的服務(wù)實(shí)體恢復(fù)到另一個(gè)服務(wù)實(shí)體的功能增強(qiáng)了應(yīng)用的可用性。二、集群概念2. 兩大能力 為了具有可擴(kuò)展性和高可用性特點(diǎn),集群的必須具備以下兩大能力:負(fù)載均衡負(fù)載均衡能把任務(wù)比較均衡地分布到集群環(huán)境下的計(jì)算和網(wǎng)絡(luò)資源。錯(cuò)誤恢復(fù)由于某種原因,執(zhí)行某個(gè)任務(wù)的資源出現(xiàn)故障,另一服務(wù)實(shí)體中執(zhí)行同一任務(wù)的資源接著完成任務(wù)。這種由于一個(gè)實(shí)體中的資源不能工作,另一個(gè)實(shí)體中的資源透明的繼續(xù)完成任務(wù)的過(guò)程叫錯(cuò)誤恢復(fù)。 負(fù)載均衡和錯(cuò)誤恢復(fù)都要求各服務(wù)實(shí)體中有執(zhí)行同一任務(wù)的資源存在,而且對(duì)

4、于同一任務(wù)的各個(gè)資源來(lái)說(shuō),執(zhí)行任務(wù)所需的信息視圖(信息上下文)必須是一樣的。二、集群概念3.兩大技術(shù)集群地址集群由多個(gè)服務(wù)實(shí)體組成,集群客戶端通過(guò)訪問(wèn)集群的集群地址獲取集群內(nèi)部各服務(wù)實(shí)體的功能。具有單一集群地址(也叫單一影像)是集群的一個(gè)基 本特征。維護(hù)集群地址的設(shè)置被稱為負(fù)載均衡器。負(fù)載均衡器內(nèi)部負(fù)責(zé)管理各個(gè)服務(wù)實(shí)體的加入和退出,外部負(fù)責(zé)集群地址向內(nèi)部服務(wù)實(shí)體地址的轉(zhuǎn)換。有的負(fù)載均 衡器實(shí)現(xiàn)真正的負(fù)載均衡算法,有的只支持任務(wù)的轉(zhuǎn)換。只實(shí)現(xiàn)任務(wù)轉(zhuǎn)換的負(fù)載均衡器適用于支持ACTIVE-STANDBY的集群環(huán)境,在那里,集群中只有 一個(gè)服務(wù)實(shí)體工作,當(dāng)正在工作的服務(wù)實(shí)體發(fā)生故障時(shí),負(fù)載均衡器把后來(lái)

5、的任務(wù)轉(zhuǎn)向另外一個(gè)服務(wù)實(shí)體。內(nèi)部通信為了能協(xié)同工作、實(shí)現(xiàn)負(fù)載均衡和錯(cuò)誤恢復(fù),集群各實(shí)體間必須時(shí)常通信,比如負(fù)載均衡器對(duì)服務(wù)實(shí)體心跳測(cè)試信息、服務(wù)實(shí)體間任務(wù)執(zhí)行上下文信息的通信。 具有同一個(gè)集群地址使得客戶端能訪問(wèn)集群提供的計(jì)算服務(wù),一個(gè)集群地址下隱藏了各個(gè)服務(wù)實(shí)體的內(nèi)部地址,使得客戶要求的計(jì)算服務(wù)能在各個(gè)服務(wù)實(shí)體之間分布。內(nèi)部通信是集群能正常運(yùn)轉(zhuǎn)的基礎(chǔ),它使得集群具有均衡負(fù)載和錯(cuò)誤恢復(fù)的能力。三、集群分類Linux集群主要分成三大類( 高可用集群, 負(fù)載均衡集群,科學(xué)計(jì)算集群)高可用集群( High Availability Cluster)負(fù)載均衡集群(Load Balance Cluste

6、r)科學(xué)計(jì)算集群(High Performance Computing Cluster)三、集群分類具體包括:Linux High Availability 高可用集群 (普通兩節(jié)點(diǎn)雙機(jī)熱備,多節(jié)點(diǎn)HA集群,RAC, shared, share-nothing集群等)Linux Load Balance 負(fù)載均衡集群 (LVS等,F5硬件設(shè)備.)Linux High Performance Computing 高性能科學(xué)計(jì)算集群 (Beowulf 類集群.)分布式存儲(chǔ)其他類linux集群 (如Openmosix, rendering farm 等.)四、詳細(xì)介紹1. 高可用集群(High Av

7、ailability Cluster)常見的就是2個(gè)節(jié)點(diǎn)做成的HA集群,有很多通俗的不科學(xué)的名稱,比如雙機(jī)熱備, 雙機(jī)互備, 雙機(jī).高可用集群解決的是保障用戶的應(yīng)用程序持續(xù)對(duì)外提供服務(wù)的能力。 (請(qǐng)注意高可用集群既不是用來(lái)保護(hù)業(yè)務(wù)數(shù)據(jù)的,保護(hù)的是用戶的業(yè)務(wù)程序?qū)ν獠婚g斷提供服務(wù),把因軟件/硬件/人為造成的故障對(duì)業(yè)務(wù)的影響降低到最小程度)。四、詳細(xì)介紹2. 負(fù)載均衡集群(Load Balance Cluster)負(fù)載均衡系統(tǒng):集群中所有的節(jié)點(diǎn)都處于活動(dòng)狀態(tài),它們分?jǐn)傁到y(tǒng)的工作負(fù)載。一般Web服務(wù)器集群、數(shù)據(jù)庫(kù)集群和應(yīng)用服務(wù)器集群都屬于這種類型。負(fù)載均衡集群一般用于相應(yīng)網(wǎng)絡(luò)請(qǐng)求的網(wǎng)頁(yè)服務(wù)器,數(shù)據(jù)庫(kù)

8、服務(wù)器。這種集群可以在接到請(qǐng)求時(shí),檢查接受請(qǐng)求較少,不繁忙的服務(wù)器,并把請(qǐng)求轉(zhuǎn)到這些服務(wù)器上。從檢查其他服務(wù)器狀態(tài)這一點(diǎn)上看,負(fù)載均衡和容錯(cuò)集群很接近,不同之處是數(shù)量上更多。四、詳細(xì)介紹3. 科學(xué)計(jì)算集群(High Performance Computing Cluster)高性能計(jì)算(High Perfermance Computing)集群,簡(jiǎn)稱HPC集群。這類集群致力于提供單個(gè)計(jì)算機(jī)所不能提供的強(qiáng)大的計(jì)算能力。五、分布式(集群)與集群的聯(lián)系與區(qū)別分布式是指將不同的業(yè)務(wù)分布在不同的地方。而集群指的是將幾臺(tái)服務(wù)器集中在一起,實(shí)現(xiàn)同一業(yè)務(wù)。分布式中的每一個(gè)節(jié)點(diǎn),都可以做集群。而集群并不一定就是

9、分布式的。 舉例:就比如新浪網(wǎng),訪問(wèn)的人多了,他可以做一個(gè)群集,前面放一個(gè)響應(yīng)服務(wù)器,后面幾臺(tái)服務(wù)器完成同一業(yè)務(wù),如果有業(yè)務(wù)訪問(wèn)的時(shí)候,響應(yīng)服務(wù)器看哪臺(tái)服務(wù)器的負(fù)載不是很重,就將給哪一臺(tái)去完成。 而分布式,從窄意上理解,也跟集群差不多, 但是它的組織比較松散,不像集群,有一個(gè)組織性,一臺(tái)服務(wù)器垮了,其它的服務(wù)器可以頂上來(lái)。 分布式的每一個(gè)節(jié)點(diǎn),都完成不同的業(yè)務(wù),一個(gè)節(jié)點(diǎn)垮了,哪這個(gè)業(yè)務(wù)就不可訪問(wèn)了。六、nginx+tomcat集群配置七、注意:Nginx反向代理實(shí)現(xiàn)會(huì)話(session)保持的兩種方式一、ip_hash:ip_hash使用源地址哈希算法,將同一客戶端的請(qǐng)求總是發(fā)往同一個(gè)后端服務(wù)

10、器,除非該服務(wù)器不可用。ip_hash語(yǔ)法:upstream backend ip_hash; server ; server ; server down; server ; ip_hash簡(jiǎn)單易用,但有如下問(wèn)題:當(dāng)后端服務(wù)器宕機(jī)后,session會(huì)丟失;來(lái)自同一局域網(wǎng)的客戶端會(huì)被轉(zhuǎn)發(fā)到同一個(gè)后端服務(wù)器,可能導(dǎo)致負(fù)載失衡;不適用于CDN網(wǎng)絡(luò),不適用于前段還有代理的情況。注意:Nginx反向代理實(shí)現(xiàn)會(huì)話(session)保持的兩種方式二、sticky_cookie_insert:使用sticky_cookie_insert啟用會(huì)話親緣關(guān)系,這會(huì)導(dǎo)致來(lái)自同一客戶端的請(qǐng)求被傳遞到一組服務(wù)器在同一臺(tái)服

11、務(wù)器。與ip_hash不同之處在于,它不是基于IP來(lái)判斷客戶端的,而是基于cookie來(lái)判斷。因此可以避免上述ip_hash中來(lái)自同一局域網(wǎng)的客戶端和前段代理導(dǎo)致負(fù)載失衡的情況。語(yǔ)法:upstream backend server ; server ; sticky_cookie_insert srv_id expires=1h domain= path=/; 說(shuō)明:expires:設(shè)置瀏覽器中保持cookie的時(shí)間domain:定義cookie的域path:為cookie定義路徑八、Tomcat+redis(web后端session保持)+nginx配置九、補(bǔ)充:Nginx負(fù)載均衡一些基礎(chǔ)知

12、識(shí):nginx 的 upstream目前支持 4 種方式的分配1)、輪詢(默認(rèn)) 每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器down掉,能自動(dòng)剔除。2)、weight 指定輪詢幾率,weight和訪問(wèn)比率成正比,用于后端服務(wù)器性能不均的情況。2)、ip_hash 每個(gè)請(qǐng)求按訪問(wèn)ip的hash結(jié)果分配,這樣每個(gè)訪客固定訪問(wèn)一個(gè)后端服務(wù)器,可以解決session的問(wèn)題。3)、fair(第三方) 按后端服務(wù)器的響應(yīng)時(shí)間來(lái)分配請(qǐng)求,響應(yīng)時(shí)間短的優(yōu)先分配。4)、url_hash(第三方)九、補(bǔ)充:Nginx負(fù)載均衡一些基礎(chǔ)知識(shí):在http節(jié)點(diǎn)里添加:#定義負(fù)載均衡設(shè)備的 Ip及設(shè)備狀態(tài)

13、upstream myServer server :9090 down; server :8080 weight=2; server :6060; server :7070 backup;在需要使用負(fù)載的Server節(jié)點(diǎn)下添加proxy_passhttp:/myServer;upstream 每個(gè)設(shè)備的狀態(tài):down 表示單前的server暫時(shí)不參與負(fù)載weight 默認(rèn)為1.weight越大,負(fù)載的權(quán)重就越大。max_fails :允許請(qǐng)求失敗的次數(shù)默認(rèn)為1.當(dāng)超過(guò)最大次數(shù)時(shí),返回proxy_next_upstream 模塊定義的錯(cuò)誤fail_timeout:max_fails 次失敗后,暫停的時(shí)間。backup: 其它所有的非backup機(jī)器down或者忙的時(shí)候,請(qǐng)求backup機(jī)器。所以這臺(tái)機(jī)器壓力會(huì)最輕。十、關(guān)于WEB集群中文件服務(wù)器的討論在WEB集群中一般都要上傳和刪除圖片。小規(guī)模的時(shí)候,圖片放在本地,再通過(guò)同步方式來(lái)保持一致。常見的文件服務(wù)器:samba+web,ftp+web,nfs+web,rsync單向同步,分布

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論