一 . 什么是 HACMP ( High Availability Cluster Multi-Processing )
1.1 高可用性
在當今的復雜環境中,為應用程序提供連續的服務是成功的 IT 實現的重要組成部分。高可用性屏蔽或消除計劃內和計劃外的系統和應用程序停機時間,是幫助為應用程序客戶端提供連續服務的組件之一。這是通過消除硬件和軟件 單點故障( single points of failure , SPOF ) 來實現的。
高可用性解決方案將確保任何解決方案組件(無論是硬件、軟件還是系統管理)的故障不會導致應用程序及其數據對用戶不可用。
高可用性解決方案應該通過適當的設計、規劃、硬件選擇、軟件配置和精心控制的變更管理規程來消除單點故障 (SPOF) 。
1.2 停機時間
停機時間是應用程序不能為其客戶端提供服務的時間范圍。可以將停機時間劃分為:
1.2.1 計劃內停機:
1) 硬件升級
2) 維修
3) 軟件更新 / 升級
4) 備份(離線備份)
5) 測試(需要定期測試以實現集群驗證。)
6) 開發
1.2.2 計劃外停機:
1) 管理員錯誤
2) 應用程序故障
3) 硬件故障
4) 環境災難
用于 AIX 的 IBM 高可用性解決方案 High Availability Cluster Multi Processing 基于久經考驗的 IBM 集群技術,并包括兩個組件:
1) 高可用性:通過使用重復和 / 或共享資源來確保應用程序可供使用的過程。
2) 集群多處理:運行在相同節點上并具有共享或并發數據訪問的多個應用程序。
基于 HACMP 的高可用性解決方案提供了自動化的故障檢測、診斷、應用程序恢復和節點重新集成。使用適當的應用程序, HACMP 還可以為并行處理應用程序提供并發數據訪問,從而提供卓越的水平可伸縮性。
圖 1 顯示了一個典型的 HACMP 環境。
1.3 歷史和發展
IBM High Availability Cluster Multi-Processing 可追溯到 20 世紀 90 年代初。
HACMP 的開發始于 1990 年,目的是為運行在 RS/6000 服務器上的應用程序提供高可用性解決方案。
我們不提供有關每個早期版本的信息,因為那些版本在本書編寫之際已不再被支持或不再使用,我們僅提供有關最近版本的重點介紹。
1.3.1 HACMP V4.2.2
與 HACMP Classic (HAS) 一起,此版本引入了增強的可伸縮性版本( enhanced scalability version , ES ), ES 是基于并行系統支持計劃( Parallel Systems Support Program , PSSP )所產生的可靠的可伸縮集群技術( Reliable Scalable Clustering Technology , RST )拓撲、組和事件管理服務。
1.3.2 HACMP V4.3.X
除了其它方面以外,此版本還引入了對 HACMP/ES 的 32 節點支持、 C-SPOC 增強功能、 ATM 網絡支持、 HACMP 任務指南(用于簡化集群配置的 GUI )、多個事件前和事件后腳本、 FDDI MAC 地址接管、監視和管理支持增強功能、逐個節點的遷移,以及 AIX 快速連接支持。
1.3.3 HACMP V4.4.X
此版本中的新項目包括與 Tivoli? 的集成、應用程序監視、無退回的級聯 (cascading with out fallback) 、 C-SPOC 增強功能、改進的遷移支持、 HA-NFS 功能集成,以及軟拷貝文檔( HTML 和 PDF )。
1.3.4 HACMP V4.5
在此版本中, AIX 5L 是必需的,并且存在自動化的配置發現功能、每個網絡適配器上的多個服務標簽(通過使用 IP 別名)、持久 IP 地址支持、 64 位功能的 API ,以及監視和從卷組定額喪失中恢復。
1.3.5 HACMP V5.1
這是引入了重大變更的版本,涵蓋從配置簡化和性能增強到更改 HACMP 術語的范圍。
HACMP V5.1 中的部分重要新功能包括:
1) SMIT “標準”和“擴展”配置路徑(過程)
2) 自動化的配置發現
3) 自定義資源組
4) 基于通過磁盤的心跳檢測的非 IP 網絡
5) 快速磁盤接管
6) 卷組的強制啟用( varyon )
7) 通過 IP 別名的心跳檢測
8) HACMP Classic (HAS) 已被丟棄;現在僅存在基于 IBM 可靠的可伸縮集群技術的 HACMP/ES
9) 改進的安全性,通過使用集群通信守護進程(消除了對使用標準 AIX “ r ”命令的需要,從而消除了對 /.rhosts 文件的需要)來實現
10) 改進的集群自定義和同步性能
11) HACMP 術語的規范化
12) 配置和維護的簡化
13) 在線規劃工作表增強功能
14) 卷組的強制啟用
15) 自定義資源組
16) 接管節點上的服務 IP 地址 / 標簽的心跳信號監視
17) 通過 IP 別名的心跳檢測
18) 通過磁盤的心跳檢測
19) 各種 C-SPOC 增強功能
20) GPFS 集成
21) 集群驗證增強功能
22) 改進的資源組管理
1.3.6 HACMP V5.2
從 2004 年 7 月開始,新的 HACMP V5.2 添加了管理、配置簡化、自動化和性能方面的更多改進功能。
下面是 HACMP V5.2 中的改進功能摘要:
1) 兩節點配置助手,同時帶有 SMIT 菜單和 Java ? 接口
2) (另外還有 SMIT “標準”和“擴展”配置路徑)。
3) 文件收集。
4) 用戶密碼管理。
5) 不再使用傳統資源組,自定義資源組已將其取代。
6) 自動化的測試過程。
7) 自動集群驗證。
8) 改進的在線規劃工作表( Online Planning Worksheets , OLPW )現在可以從現有的 HACMP 集群導入配置。
9) 事件管理( Event management , EM )已由資源監視和控制( resource monitoring and a control , RMC )子系統( AIX 中的標準組件)所取代。
10) 增強的安全性。
11) 資源組依賴性。
12) 自我修復的集群。
1.4 高可用性概念
關鍵環境中的任何 IT 解決方案的目標都是提供連續的服務和數據保護。
高可用性只是實現連續操作目標的一個構件。高可用性基于硬件、軟件(操作系統及其組件)、應用程序和網絡組件的可用性。
若要實現高可用性解決方案,您需要:
1) 冗余服務器
2) 冗余網絡
3) 冗余網絡適配器
4) 監視
5) 故障檢測
6) 故障診斷
7) 自動化的故障轉移
8) 自動化的重新集成
HACMP 的主要目標是消除單點故障 (SPOF) 。
表 1 單點故障
集群對象 |
消除單點故障的方法 |
節點(服務器) |
多個節點 |
電源 |
多個電路和 / 或電源 |
網絡適配器 |
冗余網絡適配器 |
網絡 |
用于連接節點的多個網絡 |
TCP/IP 子系統 |
非 IP 網絡以便為 TCP/IP 提供后備 |
磁盤適配器 |
冗余磁盤適配器 |
磁盤 |
冗余硬件和磁盤鏡像或 RAID 技術 |
應用程序 |
配置應用程序監視和備份節點,以獲取應用程序引擎和數據 |
表 1 中的“集群對象”列中列出的每個項目是一個物理或邏輯組件,如果該組件發生故障,則會導致應用程序無法為客戶端提供服務。
1.5 高可用性與容錯的對比
可以將用于硬件和軟件故障檢測及處理的系統定義為兩個組:
1) 容錯系統
2) 高可用性系統
1.5.1 容錯系統
提供容錯功能的系統旨在幾乎無中斷地操作,而不管可能發生的故障如何(也許由于自然災害導致的完全站點故障除外)。在此類系統中,至少為所有的軟件或硬件組件配置了重復組件。
因而, CPU 、內存和磁盤具有特殊的設計,即使在一個子組件發生故障時也可以提供連續的服務。
此類系統非常昂貴,并且極其專門化。實現容錯解決方案需要大量的精力和所有系統組件的高度自定義。
在不能接受任何停機時間的場合(生命保障等等),容錯設備和解決方案是必需的。
1.5.2 高可用性系統
為高可用性而配置的系統是以如下方式配置的硬件和軟件組件的組合:即確保在發生故障時,能夠使用最短的可接受停機時間實現自動化的恢復。
在此類系統中,相關軟件將檢測環境中的問題,然后將應用程序傳輸到另一臺計算機,從而接管原始計算機(節點)的身份。
因而, 消除環境中的所有單點故障 (SPOF) 是非常重要的 。例如,如果計算機只有一個網絡連接,則應該在同一個節點中提供第二個網絡接口,以便在提供服務的主適配器發生故障時接管工作。
另一個重要問題是鏡像數據,并將數據放在可從集群中的任何一臺計算機訪問的共享磁盤區域,從而保護數據。
高可用性集群多處理( High Availability Cluster Multi-Processing , HACMP )軟件提供了用于在高度可用的系統中集成應用程序的框架和一組工具。
要在 HACMP 集群中集成的應用程序需要相當多的自定義,此自定義不是在應用程序級別進行,而是在 HACMP 和 AIX 平臺級別進行。
HACMP 是一個靈活的平臺,允許運行在 AIX 平臺上的通用應用程序實現集成,從而以合理的成本提供高度可用的系統。
1.6 高可用性解決方案
與其他解決方案相比較,高可用性 (HA) 解決方案可以提供許多優點。表 2 描述了一些 HA 解決方案及其特征。
解決方案 |
獨立系統 |
增強的
|
高可用性集群 |
容錯系統 |
停機時間 |
兩天 |
兩小時 |
視情況而定(通常三分鐘) |
永不停機 |
數據可用性 |
上次的完全備份 |
上一個事務 |
上一個事務 |
無數據損失 |
高可用性解決方案提供了以下優點:
1) 標準的組件
2) 可與現有的硬件一起使用
3) 適用于幾乎任何應用程序
4) 可使用廣泛的磁盤和網絡類型
5) 以合理成本實現卓越的可用性
針對 IBM Eserver pSeries 的 IBM 高可用性解決方案提供了一些獨特的優點。此類優點包括:
1) 經證實的解決方案(超過 14 年的產品開發歷史)
2) 靈活性(在獨立 AIX 系統上運行的幾乎任何應用程序都可以使用 HACMP 來保護)
3) 使用“現成的”硬件組件
4) 經證實的客戶支持承諾
5)
提供高可用性解決方案的注意事項包括:
1) 全面的設計和詳細的規劃
2) 消除單點故障
3) 選擇適當的硬件
4) 正確的實現(不要走“捷徑”)
5) 訓練有素的系統管理實踐
6) 有文檔記錄的操作過程
7) 詳盡的測試
二 . HACMP 概念
2.1 HACMP 基本概念
HACMP 的基本概念可按如下方式進行分類:
( 1 )集群拓撲 :
包含基本集群成員節點、網絡、通信接口、通信設備和通信適配器。
( 2 )集群資源
將要使其高度可用的實體(例如,文件系統、原始設備、服務 IP 標簽和應用程序)。資源在資源組( resource group , RG )中分組在一起, HACMP 將資源組作為單個實體來保持其高度可用。
資源組可從單個節點使用,或在并發應用程序的情況下,可以同時從多個節點使用。
( 3 )故障轉移
表示資源組響應活動節點上的故障而從該活動節點轉移到另一個節點(備份節點)。
( 4 )退回
表示資源組在先前的節點變得可用時從備份節點轉移到先前的節點。此轉移通常是為了響應先前發生故障的節點的重新集成。
2.2 HACMP 術語
要理解 HACMP 的正確功能和用途,必須知道一些重要的術語:
( 1 )集群 (Cluster)
獨立系統(節點)或 LPAR 的松散耦合的集合,組織到一個網絡中以便共享資源和彼此通信。
HACMP 定義了操作系統之間的關系,其中當某個集群節點無法提供服務時,對等的集群節點將提供該節點所提供的服務。
在任何集群組件發生故障的情況下,這些單獨的節點共同維持一個或多個應用程序的功能。
( 2 )節點 (Node)
運行 AIX 和 HACMP 的 IBM Eserver pSeries 計算機(或 LPAR ),被定義為集群的一部分。每個節點都有一個資源集合(磁盤、文件系統、 IP 地址和應用程序),在節點發生故障的情況下,可以將該資源集合轉移到集群中的另一個節點。
( 3 )資源 (Resource)
資源是集群配置的邏輯組件,可從一個節點移動到另一個節點。提供高度可用的應用程序或服務所必需的所有邏輯資源在資源組 (RG) 中分組在一起。
在節點發生故障的情況下,資源組中的組件一起從一個節點移動到另一個節點。集群可能具有多個資源組,從而允許高效地使用集群節點(從而實現 HACMP 中的“多處理”)。
( 4 )接管 (Takeover)
接管是指在集群內的節點之間轉移資源的操作。如果一個節點由于硬件問題或 AIX 崩潰而發生故障,其資源應用程序將移動到另一個節點。
( 5 )客戶端 (Client)
客戶端是能夠通過局域網訪問運行在集群節點上的應用程序的系統??蛻舳诉\行客戶端應用程序,連接到運行應用程序的服務器(節點)。
三 . HACMP/XD (擴展距離)
High Availability Cluster Multi-Processing for AIX (HACMP) 基本軟件產品處理部分連續操作問題。它處理單個站點的計算聯合體中的計算機、適配器或局域網的故障恢復。
圖 2 顯示了典型的 HACMP/XD 高可用性地理集群( High Availability Geographic Cluster , HAGEO )。
若要在發生重大災難(站點故障)的情況下保護應用程序,將需要附加的軟件。 HAGEO 提供了:
( 1 )配置具有地理分離站點的集群的能力。
HAGEO 將 HACMP 擴展到包括兩個地理位置上的遠程數據中心或站點。此擴展可以防止個別站點成為集群中的單點故障。
地理鏡像過程為每個站點提供了基本數據的更新副本。
任一個站點都可以運行關鍵應用程序,從而確保在故障或災難導致一個站點失效的情況下,任務關鍵型計算資源在地理上分離的另一個站點上連續可用。
( 2 )自動的故障檢測和通知。
HAGEO 與 HACMP 合作提供了站點或地理網絡故障的自動檢測。它啟動恢復過程,并將有關檢測到的所有故障及其所執行的響應操作的信息通知系統管理員。
( 3 )自動化故障轉移
HAGEO 包括事件腳本,以處理站點或地理網絡故障的恢復。這些腳本與標準 HACMP 事件腳本集成在一起。
可以通過添加事件前或事件后腳本來自定義配置的行為,就像對 HACMP 所做的那樣。
( 4 )快速的災難恢復。
HAGEO 還在可操作的站點提供了數據和應用程序的快速恢復。地理鏡像過程確保在災難降臨時,數據已經在第二個站點可用。
恢復時間通常要花幾分鐘,其中不包括應用程序恢復時間。
( 5 )站點恢復期間的自動數據重新同步
HAGEO 作為站點恢復過程不可或缺的一部分處理每個站點上的鏡像的重新同步。重新加入的站點上的節點將自動使用在該站點發生故障時接收的數據進行更新。
( 6 )可靠的數據完整性和一致性。
HAGEO 的地理鏡像和地理消息組件確保在站點發生故障時,幸存站點的數據與故障站點的數據保持一致。
當故障站點重新集成到集群中時, HAGEO 使用來自可操作站點的最新數據來更新該站點,從而再次確保數據一致性。
( 7 )靈活、可伸縮的配置。
HAGEO 軟件支持廣泛的配置,允許您按自己的需要配置獨特的災難恢復解決方案。
HAGEO 集群中最多可以有八個節點,每個站點的節點數量各不相同。
HAGEO 與文件系統和數據庫無關,因為地理鏡像設備的行為與它所支持的磁盤設備的行為相同。由于鏡像是透明的,配置為使用地理鏡像的應用程序不必進行任何方式的修改。
3.1 HACMP/XD : HAGEO 組件
該軟件具有三個重要功能:
( 1 ) GeoMirror :
包括一個邏輯設備和在第二個站點上執行鏡像的偽設備驅動程序;數據在一個站點輸入。 TCP/IP 用作鏡像數據的傳輸協議。
GeoMirror 可以在異步或同步模式下使用,具體取決于站點之間的通信帶寬,以及應用程序事務量(將決定更改的數據量)。
( 2 ) GeoMessage :
在兩個站點的 GeoMirror 設備之間提供可靠的數據和消息傳輸。
( 3 )地理拓撲:
提供用于將地理鏡像功能與 HACMP 功能集成的邏輯,以提供自動的故障檢測和從影響整個站點的事件中恢復。
( 4 )從災難中恢復
當災難導致站點故障時,幸存站點的節點上的集群管理器將快速檢測情況,并采取操作以保持地理鏡像的應用程序可用。
同樣,如果集群由于全局地理網絡故障而被分割,則配置為非主控 (non-dominant) 的站點上的集群管理器將關閉自身,以便避免數據偏差。
3.2 HACMP/XD : HAGEO 基本配置
可以按照 HACMP 基本軟件所支持的任何一種配置來配置 HAGEO 集群。這些配置包括備用( standby )、單邊接管( one-sided takeover )、相互接管( mutual
takeover )和并發訪問( concurrent access )配置。
( 1 )備用配置
備用配置是一種傳統冗余硬件配置,其中集群中的一個或多個節點保持空閑,直到某個服務器節點發生故障。
在 HAGEO 中,這轉變為使用一個空閑站點。該站點并非完全空閑,因為它還參與了地理鏡像過程。但是該站點的節點不執行應用程序工作。
( 2 )接管配置
在接管配置中,所有節點都在執行處理;不存在空閑節點。
配置包括:
1) 站點內(本地)接管
2) 遠程單邊接管
3) 遠程相互接管
( 3 )并發配置
在并發訪問配置中,一個站點的所有節點可以同時訪問并發卷組,并擁有相同的磁盤資源。
另一個站點以相同的方式進行設置。
如果某個節點離開站點,資源的可用性不會受到影響,因為其他節點已啟用并發卷組。
如果某個站點發生故障,另一個站點可以提供該站點上的節點所提供的并發訪問。并發應用程序可由集群中的所有節點訪問。
HACMP Cluster Lock Manager 必須在集群中的所有節點上運行。 并非所有數據庫都可用于涉及到跨地理位置的節點的并發訪問。
3.3 HACMP/XD PPRC 集成功能
在兩個站點都使用了 IBM Enterprise Storage Server? 并且對等遠程復制( Peer to Peer Remote Copy , PPRC )功能提供了存儲卷鏡像的環境中,同時在 HACMP V4.5 PTF5 和 HACMP V5.1 中引入的此功能可以提供自動化的站點故障轉移和應用程序數據的遠程副本激活。
在主站點發生故障的情況下,數據應該在輔助站點可供使用(通過 PPRC 進行復制)。必須激活輔助站點中的數據副本才能將其用于處理。
HACMP/XD PPRC 集成功能在主站點發生故障時提供自動化的副本拆分,在主站點變得可用時提供自動化的重新集成。
From :
HACMP 認證學習系列,第 1 部分:入門
http://www.ibm.com/developerworks/cn/aix/redbooks/HACMP-1/index.html
------------------------------------------------------------------------------
Blog : http://blog.csdn.net/tianlesoftware
網上資源: http://tianlesoftware.download.csdn.net
相關視頻: http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1 群: 62697716( 滿 ); DBA2 群: 62697977( 滿 )
DBA3 群: 62697850 DBA 超級群: 63306533;
聊天 群: 40132017
-- 加群需要在備注說明 Oracle 表空間和數據文件的關系,否則拒絕申請
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
