中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

高可用集群概念及工作原理

發布時間:2020-07-20 14:54:59 來源:網絡 閱讀:2821 作者:ccs_Chan 欄目:建站服務器

 這篇文章我們主要了解高可用集群概念及工作原理,以及高可用集群的邏輯架構等。



 

 ll  本文導航 

  · 什么是高可用集群?

  · 高可用集群有哪些特點?

  · 高可用集群的邏輯架構

  · 高可用集群的解決方案

  · 高可用集群的工作模型

  

 ll  要求 

掌握高可用集群的基礎原理與邏輯架構。


  什么是高可用集群?

  所謂高可用集群,即當前服務器出現故障時,可以將該服務器中的服務、資源、IP等轉移到另外一臺服務器上,從而滿足業務的持續性;這兩臺或多臺服務器構成了服務器高可用集群。

  對于客戶端來說,集群就像是一臺服務器,因為集群運行的是同一種服務,即使其中有的服務器宕機或無法通信時,也不會對業務造成影響。

 

  高可用集群有哪些特點?

一、高可用服務

  集群最大的目的和作用就是實現服務的高可用性,其最終目的是保證業務不會因為線路、硬件、軟件故障而導致的服務不可用。

二、度量標準(服務可用性)

  由系統可靠性(Availability)和可維護性(maintainabilit)來度量

  計算方式:HA=MTTF(平均無故障事件)/(MTTF+MTTR(平均修復事件))*100%

  99%    全年服務中斷時間不超過4天

  99.9%    全年服務中斷時間不超過10個小時

  99.99%    全年服務中斷時間不超過1個小時

  99.999%    全年服務中斷時間不超過6分鐘

三、集群節點  

  集群存在所有主機都稱為節點,每HA集群最低要求需有2個節點;正常來說,節點數最好為奇數。在生產環境中,HA集群的節點數至少為3個,可以降低發生腦裂的概率。

四、集群服務與資源

  集群服務通常包括多個資源,多個資源組成某種集群服務。如mysql高可用服務,其資源包括vip、mysqld、共享存儲等。對于集群服務的管理,實際上就是對資源的管理。

五、腦裂、資源爭用、資源隔離

 腦裂:因某種特殊原因造成集群分裂成兩個小集群,而這兩個小集群互相不能正常通信,此時,就會發生鬧裂(Brain Split)現象。

  資源爭用:當一個集群中因特殊情況分裂成兩個小集群,且這兩個集群都不能通信時,這時可能會造成資源爭用的情況;分裂情況發生后,如果沒有及時的決策,那么可能會因為兩個小集群同時使用一個文件系統,而造成后端共享存儲中文件損壞,甚至造成整個文件系統的崩潰。顯然,這種情況是不允許發生的。

  資源隔離:主要為了解決資源爭用的問題。資源隔離分為節點級別隔離和資源級別隔離。所謂節點級別隔離指當集群發生分裂時,即發生腦裂現象后,通過STONITH機制將資源隔離,并通過仲裁機制將分裂的票數不足的集群退出集群。STONITH指通過硬件設備,使得退出的主機重啟或關機,或者通過交換機阻斷退出的集群向外通信和資源通信的能力。

    資源隔離的解決方案:

    1、當集群分裂成兩個小集群時會發生資源爭用的情況,為避免爭用后端存儲系統而造成災難性的系

    統崩潰,集群系統引入了投票機制,只有擁有半數以上合法票數的集群才能存活,否則就推出集群

    系統。

    2、當集群為偶數時,如果分裂,兩邊可能都掌握相等的票數;因此,集群系統不應該為偶數,如果

    是偶數則需要一個額外的ping節點參與投票。

    3、票數不足的集群退出集群服務后,為了保證它不會爭用資源需要STONITH機制來進行資源隔離。

    所以,為了防止腦裂,集群節點數一般為奇數,就算集群分裂,也不可能使得兩個集群的票數相等。

高可用集群概念及工作原理  


  高可用集群的邏輯架構 

高可用集群概念及工作原理


  高可用集群的解決方案 

一、基于【CentOS | RHEL】5:

  1、自帶: RHCS(cman+rgmanager)

  2、選用第三方:corosync+pacemaker, heartbeat(v1或v2), keepalived


二、基于【CentOS | RHEL】6:

  1、RHCS(cman+rgmanager)

  2、corosync+rgmanager

  3、cman+pacemaker

  4、heartbeat v3 + pacemaker:6.4之前

  5、keepalived:6.4之后


  高可用集群的工作模型 

  A/P:兩個節點,工作于主備模型;

  N-M: N>M,N個節點,M個服務,活動節點為N,備用節點為N-M;

  N-N:N個節點,N個服務;

  A/A:雙主模型:兩個節點都是活動的;


資源轉移的方式:

rgmanager:failover domain(故障切換域), priority(優先級)

failover domain: 故障轉移域,設定一個資源只能在哪些主機上面轉移 

priority: 設定,在一個轉移域中,哪些主機優先被轉移資源


pacemaker: 

資源黏性:如果兩個節點傾向性位置約束一致,資源對哪個節點粘性為正值,則留在哪個節點。 

資源約束(3種類型):

位置約束:資源更傾向于哪個節點上;

inf: 無窮大

n: 傾向于運行在某節點

-n: 傾向于離開某節點

-inf: 負無窮

排列約束:資源運行在同一節點的傾向性;

inf: 兩者永遠在一起 

-inf: 兩者永遠不再一起

順序約束:資源啟動次序及關閉次序;


例子:如何讓web service中的三個資源:vip、httpd及filesystem運行于同一節點上?

1、排列約束;說明三個在一起可能性inf

2、資源組(resource group);三個資源定義在一個組內,然后這個組決定在某一個節點上啟動

3、定義順序約束,保證啟動順序,vip–filesystem–httpd 


對稱性與非對稱性:

對稱性: 默認所有節點都能轉移資源。

非對稱性; 有些節點不能轉移資源。


如果節點不再成為集群節點成員時,如何處理運行于當前節點的資源:

stoped: 直接停止服務

ignore:忽略,以前運行什么服務現在還運行什么。 

freeze: 事先建立的連接,接續保持,不再接收新的請求。

suicide: kill掉服務。 


一個資源剛配置完成時,是否啟動?

target-role: 目標角色,可以為啟動,也可以為不啟動。


資源代理類型(RA):

heartbeat legacy: 傳統類型

LSB: /etc/rc.d/init.d/ 下面的服務腳本

OCF: 

STONITH: 專門用來實現資源隔離的


資源類型: 

primitive, native : 主資源,只能運行于一個節點。

group: 組資源

clone: 克隆資源,所有節點都運行的資源,首先是主資源。

通常為STONITH資源, Cluster filesystem, 分布式鎖

1) 最多運行的最大數。 總clone數

2) 每一個節點上最多運行幾個。 

master/slave: 主從資源內容,只能克隆兩份,主的能讀能寫,從的不能做任何操作





向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

郯城县| 平南县| 克什克腾旗| 自治县| 东阿县| 江都市| 日照市| 关岭| 平利县| 望都县| 藁城市| 巴林左旗| 彩票| 辽阳县| 高邑县| 泰安市| 东乌珠穆沁旗| 和顺县| 甘洛县| 泸溪县| 永仁县| 青河县| 闻喜县| 连城县| 云梦县| 邵阳市| 定远县| 扎兰屯市| 满洲里市| 阿坝| 化隆| 三门峡市| 沙洋县| 凤山县| 朔州市| 岚皋县| 福安市| 玛曲县| 洞口县| 尖扎县| 图们市|