集羣(cluster)和高可用性(HA)的概念

1.1 什麼是集羣     javascript

  簡單的說,集羣(cluster)就是一組計算機,它們做爲一個總體向用戶提供一組網絡資源。這些單個的計算機系統就是集羣的節點(node)。一個理想的集羣是,用戶歷來不會意識到集羣系統底層的節點,在他/她們看來,集羣是一個系統,而非多個計算機系統。而且集羣系統的管理員能夠隨意增長和刪改集羣系統的節點。java

  更詳細的說,集羣(一組協同工做的計算機)是充分利用計算資源的一個重要概念,由於它可以將工做負載從一個超載的系統(或節點)遷移到集羣中的另外一個系統上。其處理能力是與專用計算機(小型機,大型機)可相比,但其性價比高於專用計算機.常見的硬件有:結點,網絡,存儲.軟件有:機羣系統,節點系統,應用支撐軟件。   node

  Cluster集羣技術可以下定義:一組相互獨立的服務器在網絡中表現爲單一的系統,並以單一系統的模式加以管理。此單一系統爲客戶工做站提供高可靠性的服務。大多數模式下,集羣中全部的計算機擁有一個共同的名稱,集羣內任一系統上運行的服務可被全部的網絡客戶所使用。Cluster必須能夠協調管理各分離的組件的錯誤和失敗,並可透明地向Cluster中加入組件。一個Cluster包含多臺(至少二臺)擁有共享數據存儲空間的服務器。任何一臺服務器運行一個應用時,應用數據被存儲在共享的數據空間內。每臺服務器的操做系統和應用程序文件存儲在其各自的本地儲存空間上。Cluster內各節點服務器經過一內部局域網相互通信。當一臺節點服務器發生故障時,這臺服務器上所運行的應用程序將在另外一節點服務器上被自動接管。當一個應用服務發生故障時,應用服務將被從新啓動或被另外一臺服務器接管。當以上的任一故障發生時,客戶都將能很快鏈接到新的應用服務上。數據庫

1.2 集羣系統的主要優勢:     安全

(1)高可擴展性:     服務器

(2)高可用性HA:集羣中的一個節點失效,它的任務可傳遞給其餘節點。能夠有效防止單點失效。     網絡

(3)高性能:負載平衡集羣容許系統同時接入更多的用戶。  負載均衡

(4)高性價比:能夠採用廉價的符合工業標準的硬件構造高性能的系統。性能

 

2.1 集羣系統的分類     spa

雖然,根據集羣系統的不一樣特徵能夠有多種分類方法,可是通常把集羣系統分爲兩類:   

(1)、高可用(High Availability)集羣,簡稱HA集羣。    

  這類集羣致力於提供高度可靠的服務。就是利用集羣系統的容錯性對外提供7*24小時不間斷的服務,如高可用的文件服務器、數據庫服務等關鍵應用。

      負載均衡集羣:使任務能夠在集羣中儘量平均地分攤不一樣的計算機進行處理,充分利用集羣的處理能力,提升對任務的處理效率。    

  在實際應用中這幾種集羣類型可能會混合使用,以提供更加高效穩定的服務。如在一個使用的網絡流量負載均衡集羣中,就會包含高可用的網絡文件系統、高可用的網絡服務。    

(2)、性能計算(High Perfermance Computing)集羣,簡稱HPC集羣,也稱爲科學計算集羣。    

在這種集羣上運行的是專門開發的並行應用程序,它能夠把一個問題的數據分佈到多臺的計算機上,利用這些計算機的共同資源來完成計算任務,從而能夠解決單機不能勝任的工做(如問題規模太大,單機計算速度太慢)。    

這類集羣致力於提供單個計算機所不能提供的強大的計算能力。如天氣預報、石油勘探與油藏模擬、分子模擬、生物計算等。

3.1 什麼是高可用性 (HA)    

計算機系統的可用性(availability)是經過系統的可靠性(reliability)和可維護性(maintainability)來度量的。工程上一般用平均無端障時間(MTTF)來度量系統的可靠性,用平均維修時間(MTTR)來度量系統的可維護性。因而可用性被定義爲:MTTF/(MTTF+MTTR)*100%

負載均衡服務器的高可用性 爲了屏蔽負載均衡服務器的失效,須要創建一個備份機。主服務器和備份機上都運行High Availability監控程序,經過傳送諸如「I am alive」這樣的信息來監控對方的運行情況。當備份機不能在必定的時間內收到這樣的信息時,它就接管主服務器的服務IP並繼續提供服務;當備份管理器又從主管理器收到「I am alive」這樣的信息是,它就釋放服務IP地址,這樣的主管理器就開開始再次進行集羣管理的工做了。爲在主服務器失效的狀況下系統能正常工做,咱們在主、備份機之間實現負載集羣系統配置信息的同步與備份,保持兩者系統的基本一致。

HA的容錯備援運做過程    

自動偵測(Auto-Detect)階段 由主機上的軟件經過冗餘偵測線,經由複雜的監聽程序。邏輯判斷,來相互偵測對方運行的狀況,所檢查的項目有:主機硬件(CPU和周邊)、主機網絡、主機操做系統、數據庫引擎及其它應用程序、主機與磁盤陣列連線。爲確保偵測的正確性,而防止錯誤的判斷,可設定安全偵測時間,包括偵測時間間隔,偵測次數以調整安全係數,而且由主機的冗餘通訊連線,將所聚集的訊息記錄下來,以供維護參考。    

自動切換(Auto-Switch)階段 某一主機若是確認對方故障,則正常主機除繼續進行原來的任務,還將依據各類容錯備援模式接管預先設定的備援做業程序,並進行後續的程序及服務。    

自動恢復(Auto-Recovery)階段 在正常主機代替故障主機工做後,故障主機可離線進行修復工做。在故障主機修復後,透過冗餘通信線與原正常主機連線,自動切換回修復完成的主機上。整個回覆過程完成由EDI-HA自動完成,亦可依據預先配置,選擇回覆動做爲半自動或不回覆。

3.二、HA三種工做方式:

(1)、主從方式 (非對稱方式)

工做原理:主機工做,備機處於監控準備情況;當主機宕機時,備機接管主機的一切工做,待主機恢復正常後,按使用者的設定以自動或手動方式將服務切換到主機上運行,數據的一致性經過共享存儲系統解決。

(2)、雙機雙工方式(互備互援)

工做原理:兩臺主機同時運行各自的服務工做且相互監測狀況,當任一臺主機宕機時,另外一臺主機當即接管它的一切工做,保證工做實時,應用服務系統的關鍵數據存放在共享存儲系統中。

(3)、集羣工做方式(多服務器互備方式)

工做原理:多臺主機一塊兒工做,各自運行一個或幾個服務,各爲服務定義一個或多個備用主機,當某個主機故障時,運行在其上的服務就能夠被其它主機接管。

當一我的找不到出路的時候,最好的辦法就是將當前能作好的事情作到極致,作到無人能及。
相關文章
相關標籤/搜索