大綱node
1、Heartbeat 的定義mysql
2、Heartbeat 的版本與組件linux
3、Heartbeat 的各版本之間的區別sql
4、Heartbeat 集羣的通常拓撲圖 apache
1、Heartbeat的定義服務器
Heartbeat 項目是 Linux-HA 工程的一個組成部分,也是目前開源HA項目中最成功的一個例子,Linux-HA的全稱是High-Availability Linux,這個開源項目的目標是:經過社區開發者的共同努力,提供一個加強linux可靠性(reliability)、可用性(availability)和可服務性(serviceability)(RAS)的羣集解決方案,它實現了一個高可用集羣系統。心跳服務和集羣通訊是高可用集羣的兩個關鍵組件,在 Heartbeat 項目裏,由 heartbeat 模塊實現了這兩個功能。架構
Linux-HA的官方網站:ide
2、Heartbeat的版本與組件
說明:Heartbeat有三個版本分別爲Heartbeat v1.x,Heartbeat v2.x,Heartbeat v3.x。Heartbeat v1.x和Heartbeat v2.x版本的組成結構十分簡單,全部模塊都集中在heartbeat中,到了v3版本後,整個heartbeat項目進行了拆分,分爲不一樣的項目來分別進行開發。
1.Heartbeat v1.x與v2.x的組件
heartbeat:節點間通訊檢測模塊
ha-logd:集羣事件日誌服務
CCM(Consensus Cluster Membership):集羣成員一致性管理模塊
LRM (Local Resource Manager):本地資源管理模塊
Stonith Daemon: 使出現問題的節點從集羣環境中脫離或重啓
CRM(Cluster resource management):集羣資源管理模塊
Cluster policy engine: 集羣策略引擎
Cluster transition engine:集羣轉移引擎(也叫策略執行引擎)
Heartbeat v1.x與Heartbeat v2.x區別:在Heartbeat v2.x中增長了一個新的集羣資源管理器crm,在Heartbeat v1.x中的集羣資源管理器是haresource,Heartbeat v2.x中爲了兼容v1.x保留了haresource,但同時又新增了一個功能更強大的crm資源管理器。crm管理方式有,一種是基於命令行crmsh,一種是基於圖形界面的hb_gui。
2.Heartbeat v3.x的組件
Heartbeat:將原來的消息通訊層獨立爲heartbeat項目,新的heartbeat只負責維護集羣各節點的信息以及它們以前通訊。
Cluster Glue:至關於一箇中間層,它用來將heartbeat和pacemaker關聯起來,主要包含2個部分,即爲LRM和STONITH。
Resource Agent:用來控制服務啓停,監控服務狀態的腳本集合,這些腳本將被LRM調用從而實現各類資源啓動、中止、監控等等。
Pacemaker:也就是Cluster Resource Manager(集羣資源管理器,簡稱CRM),用來管理整個HA的控制中心,客戶端經過pacemaker來配置管理監控整個集羣。
Pacemaker 提供了多種用戶管理接口,分別以下:
(1).基於命令的管理方式
crmsh
pcs
(2).基於圖形界面的管理方式
pygui
hawk
LCMC
pcs
官網詳細說明:http://clusterlabs.org/
Pacemaker內部組成及與各模塊之間關係,以下圖:
Heartbeat v3.x 內部組件之間的關係,以下圖
3、Heartbeat的各版本之間的區別
與v1.x風格相比,Heartbeat v2.x版本以後功能變化以下:
1.保留原有全部功能
2.自動監控資源
默認狀況下每2分鐘檢測資源運行狀況,若是發現資源不在,則嘗試啓動資源, 若是60s後還未啓動成功,則資源切換向另節點。時間能夠修改。
3.能夠對各資源組實現獨立監控
好比apache運行在node1上,mysql運行在node2上,Heartbeat可同時實現兩臺主機的服務監控
4.同時監控系統負載
能夠自動將資源切換到負載低的node上
5.新增crm資源管理器
crm管理器可讓heartbeat基於圖形界面管理,即hb_gui
與v2.x風格相比,Heartbeat 3最主要變化是功能拆分,Heartbeat官方最後一個STABLE release 2.x 版本是2.1.4,Heartbeat 3官方正式發佈的首個版本是3.0.2,Heartbeat 3與Heartbeat2.x的最大差異在於,Heartbeat3.x按模塊把的原來Heartbeat2.x拆分爲多個子項目,可是HA實現原理與Heartbeat2.x基本相同,配置也基本一致。
4、Heartbeat集羣的通常拓撲圖
1.主/從架構拓撲
說明:主/從(active/passive)主/從方式即指的是一臺服務器處於某種業務的激活狀態,另外一臺服務器處於該業務的備用狀態;
2.主/主架構拓撲
說明:主/主(active/active)雙主機方式一種指兩種不一樣業務分別在兩臺服務器上互爲主從狀態,另外一種指兩個主節點同時爲一種業務服務,共享同一數據文件;