[技術分享] HPE NonStop CLIM Failover 介紹(上)

作者/黃仕奇

作者簡介 作者擁有超過30年的資深IT服務經驗,現任凌群電腦NSK服務總處副總工程師。主要負責HPE NonStop證卷、期貨、信用卡、銀行客戶交易系統維運服務、軟體產品整合服務,專長為HPE NonStop系統整合以及專案管理。 前言 網路的穩定性以及可用性對於交易主機而言極其重要,舉凡交易、操作管理、系統監控均需要經由網路進行,當主機網路介面或設備發生異常時,影響之重可想而知。 HPE NonStop Cluster I/O Protocols (CIP) 子系統提供故障轉移(Failover)的功能,允許將與故障介面關聯的資源切換到另外一個接口,以便它們仍然可供外部網路使用。 當一個或多個Ethernet介面或整台CLIM發生故障時,CIP可以透過在同一台CLIM上的多個實體介面共用這些資源或遷移這些資源,來確保介面資源(例如:IP addresses、Routes、 Sockets and Tunnels)的可用性。或者到不同的CLIM上的另一個介面。 本篇將介紹 Bonded Interface 和 Failover-Pair的特性和優點,以及其功能進行討論。 HPE NonStop Cluster I/O protocol (CIP) 提供的 failover 種類
  • 在同一台 Cluster I/O Module (CLIM)中從一個網路介面(Ethernet Interface)到另一個網路介面的故障轉移,稱為 Bonded(也稱為Intra-CLIM) Failover。
  • 從一台 CLIM 的一個網路介面到另一台 CLIM 的一個網路介面的故障轉移稱為 Failover-Pair(也稱為 CLIM-to-CLIM 或 Inter-CLIM)Failover。
介面故障發生場景 一、Physical / Slave介面故障情況
  • 硬體故障:網路介面卡(NIC)故障或驅動程式故障。
  • Link Pulse遺失: (1)由於網路線從網路介面卡、網路集線器或交換器拔出而造成。 (2)網路集線器或交換器故障造成Link Pulse遺失。 (3)集線器或交換器內的某些故障也會造成Link Pulse遺失。
二、Bonded 介面故障情況
  • 當所有Bonded的Slave Interface全部發生故障時,Bonded Interface也會發生故障。
  • 當Physical / Slave介面故障情況所描述的原因而發生故障。
三、CLIM 故障情況
  • 硬體故障:任何CLIM硬體發生故障。
  • 軟體故障:任何CLIM軟體發生故障。
  • NonStop Server與CLIM之間的ServerNet / Infiniband連線完全遺失。
Bonded Failover介紹 一、概述: 可經由CLIM配置多個Slave Interface的Bonded Interface,來實現Bonded Failover。當CLIM還可以運作時,只要有任一個Slave Interface發生故障,則會發生Bonded Failover切換。 由於Slave Interface都在同一台CLIM內配置和處理,故當發生Bonded Failover切換時,所有的介面資源不會間斷,所有的Sockets和連線都會在Bonded Failover切換其間保留,故對應用程式沒有影響。 在同一個Bonded Interface中所有的Slave Interfaces共享相同的介面資源(IP Addresses and Routes),雖不需要共用相同的乙太網路屬性,例如:Speed、Duplex and Autonegotiation設定,卻需要在同一個Broadcast Domain。 二、Bonded Driver的行為和模式: Bonded Driver每100 ms監控?個Slave Interface的連結狀態。當偵測在連結故障/恢復後,停用/啟用Slave Interface的等待時間為200 ms。 一個實體介面只能配置一個Bonded Interface的Slave Interface。Bonded Failover架構示意圖如下:
三、Bonded Failover運作設定模式:
  • Active-Backup (1):同一時間只有一個Slave Interface會Active。
  • Balance-tlb (5):依據每個Slave Interface當前的負載(相對於速度計算)分配傳出流量。
  • Balance-alb (6):包括Balance-tlb加上IPv4流量的接收負載平衡(Receive Load Balancing;rlb)。
四、Active-Backup (Mode 1):
  • 該模式使用主備方式,只有一個Slave Interface在活動狀態,只有當活動的Slave Interface發生故障時,另一個Slave Interface才會變成活動狀態。
  • MAC Address分配: (1)Bonded Interface的MAC Address取決於在配置中的第一個Slave Interface。 (2)Bonded Interface啟動期間,MAC Address不會改變。Slave Interface切換也不會改變MAC Address。 (3)如果在啟動期間,第一個Slave Interface異常,則MAC會設定成以下一個Slave Interface的MAC。
五、Balance-tlb (mode 5):
  • Adaptive Transmit Load Balancing模式,依據每個Slave Interface當前的負載(相對於速度計算)分配傳出流量。傳入流量由活動的Slave Interface接收。如果活動的Slave Interface發生故障,則另一個Slave Interface將會接管發生故障的活動Slave Interface的MAC Address。
  • MAC Address分配: (1)Bonded Interface的MAC Address決取於第一個Link Pulse出現的Slave Interface。 範例:After Activation(eth4的Link Pulse先出現) eth4: MAC Address 00:1f:29:55:17:c2 eth5: MAC Address 00:1f:29:55:17:c1 Bond0: MAC Address 00:1f:29:55:17:c2(因為eth4的Link Pulse先出現,故Bond0的MAC Address配置成eht4的MAC Address)
    (2)當活動的Slave Interface(以上述為例活動的Slave Interface為eth4)故障時,會和下一個Slave Interface交換MAC Address。 範例:After Failure(eth4的Link Pulse遺失) eth4: MAC Address 00:1f:29:55:17:c1 eth5: MAC Address 00:1f:29:55:17:c2(因為活動的slave interface eth4故障,故eth5的MAC Address與eht4交換) Bond0: MAC Address 00:1f:29:55:17:c2(Bond Interface的MAC Address保留不變)
    (3)所有的Slave Interface都有一個唯一的MAC Address。
六、Balance-alb (mode 6)
  • Adaptive Load Balancing模式,包含Balance-tlb加上IPv4流量的接收負載平衡,接收負載平衡是透過APR Negotiation。
  • MAC Address分配: (1)MAC Address的分配方式與Balance-tlb模式相同。(待續)
參考資料
  • HPE NonStop Cluster I/O Protocol (CIP) Failover White Paper
  • HPE NonStop Cluster I/O Protocols (CIP) Configuration and Management Manual
  • HPE Cluster I/O Protocols (CIP) Configuration and Management Manual Technical Update