Date: 27 7 月, 2022
介紹適用於 SIOS LifeKeeper 和 Microsoft Azure 的通用負載平衡器套件
在這篇博客中,我將討論通用負載平衡器應用程序恢復套件 (ARK)適用於 Linux 的 SIOS Lifekeeper,特別是如何在 Microsoft Azure 上配置它。 我將使用一個兩節點 NFS 集群,它們提供的 NFS 導出最終將通過負載平衡器訪問。
SIOS 創建了這個 ARK 以促進在 Azure 中運行的 LifeKeeper 集群中的客戶端重定向。
由於 Azure 不支持免費 ARP,因此客戶端無法直接連接到傳統的集群虛擬 IP 地址。 相反,客戶端必須連接到負載均衡器,負載均衡器將流量重定向到活動集群節點。 . Azure 實現了在第 4 層(TCP、UDP)上運行的負載均衡器解決方案,負載均衡器可以配置為具有私有或公共前端 IP,可以確定哪個節點處於活動狀態的運行狀況探測器,一系列後端 IP 地址(對於集群中的每個節點)和傳入/傳出網絡流量規則。
傳統上,健康探測將監視應用程序上的活動端口並確定該應用程序在哪個節點上處於活動狀態。SIOS 通用負載平衡器 ARK 配置為讓活動節點偵聽用戶定義的端口。 然後在 Azure 負載均衡器中將此端口配置為運行狀況探測端口。 這允許活動集群節點響應 TCP 健康檢查探測,從而啟用自動客戶端重定向。
Azure 中的安裝和配置簡單明了,詳細如下:
在 Azure 門戶中,選擇負載平衡創建一個負載均衡器,您將選擇要部署它的資源組以及名稱,我喜歡使用與我使用負載均衡器的集群類型一致的名稱,例如 IMA -NFS-LB 將位於兩個 IMA-NFS 節點的前面。
您可以確定這是公共 LB 還是私有 LB。 在這種情況下,我將一個私有負載平衡器配置到我的 NFS 服務器前面,以便僅在此資源組中使用。
一旦您確定了名稱、資源組等,您將被要求為負載均衡器分配名稱、虛擬網絡、子網和 IP。 IP 地址應該與您將在 LifeKeeper 中創建為虛擬 IP 地址的 IP 地址相同。
為負載均衡器輸入基本信息後,您需要定義要在後端配置哪些機器來為負載均衡器提供服務,在我的情況下,這個後端池將由我使用的兩個節點組成我的 NFS 服務器。
您將需要一個負載平衡規則,這是負載平衡器確定將哪些流量路由到活動節點的方式。 – 當您配置通用應用程序以支持負載平衡器時,此處配置的端口號將在 SPS-L 中使用。 在此示例中,我們使用“HA 端口”,它將所有流量路由到活動節點。 如果您想限制要路由的流量,您可以指定特定的應用程序端口。
前端 IP 應該是負載均衡器 IP,後端池應該是您配置為負載均衡器使用的資源的節點。 確保選中“HA Ports”按鈕並啟用“Floated IP”。 可以禁用“TCP 重置”。
創建運行狀況探測時,請確保記下您在此處配置的端口,因為我們在 SIOS 保護套件中創建通用應用程序時將使用該端口。 您可以使用“間隔”和“不健康閾值”的標準值。 如果您有應用程序特定的要求,這些可以在以後更改。
現在負載平衡規則應該是完整的,帶有一個運行狀況探測。 選擇“添加”一旦我們選擇“添加”,Azure 將開始部署負載均衡器,這可能需要幾分鐘,一旦完成,配置就會轉到 SIOS 保護套件。
注意:一旦後端機器在負載均衡器後面配置,它們將失去對互聯網網關的訪問權限,因此系統更新等操作將無法正常工作。 您可以從後端資源組中刪除機器以再次允許 Internet 訪問。
使用 SIOS 保護套件進行配置
在本博客中,我配置了三個 NFS 導出以使用 SPS-L 進行保護,這三個導出配置為使用與 Azure 負載均衡器的前端 IP 相同的 IP。 我正在使用 Datakeeper 複製存儲在導出中的數據。
第一步是獲取腳本,最簡單的方法是使用 wget,但您也可以下載整個包並使用 winscp 或類似工具將 rpm 直接上傳到節點。 您需要在 Lifekeeper 集群的所有節點上安裝 Hotfix。
完整的恢復套件可在此處獲得: http://ftp.us.sios.com/pickup/LifeKeeper_Linux_Core_en_9.5.1/patches/Gen-LB-PL-7172-9.5.1可以使用 wget 在這裡找到這些部分: wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm.md5sum wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/Gen-LB-readme.txt下載後,根據 FTP 站點上記錄的值驗證 MD5 總和。
按如下方式安裝 RPM: rpm -ivh steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm 通過運行檢查安裝是否成功: rpm -qa | grep steeleye-lkHOTFIX-Gen-LB-PL-7172 如果您出於某種原因需要刪除 RPM,可以通過運行: rpm -e steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154 來完成.x86_64下面是顯示我已經配置的三個 NFS 導出的 GUI:我們需要在 SIOS 保護套件中做的是使用 SIOS 提供的修補程序腳本定義負載平衡器。
首先我們創建一個新的資源層次結構,我們從下拉列表中選擇 Generic Application定義位於 /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/ 中的 restore.pl 腳本定義位於 /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/ 中的 remove.pl 腳本定義位於 /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/ 中的 quickCheck 腳本沒有本地恢復腳本,因此請確保清除此輸入當詢問應用程序信息時,我們希望輸入與在 Health Probe 配置中配置的端口號相同的端口號,例如 54321我們將選擇在服務創建後將其投入使用。
資源標籤是我們將在 SPS-L GUI 中看到的名稱,我喜歡使用易於識別的名稱。
如果一切配置正確,您將看到“結束成功還原”,然後我們可以將其擴展到另一個節點,以便資源可以託管在任一節點上。
這顯示了擴展至兩個節點後完成的負載均衡器配置。
該集群的最後一步是為三個 NFS 導出創建子依賴項,這意味著所有帶有 Datakeeper 鏡像和 IP 的 NFS 導出都將依賴於負載均衡器。 如果活動節點上出現嚴重問題,則所有這些資源都將故障轉移到其他正常運行的節點。
上圖是 Lifekeeper GUI 中完整的層次結構。 下面顯示了擴展的 GUI 視圖,顯示 NFS 導出、IP、文件系統和 DataKeeper 複製卷作為負載均衡器資源的子級。
這只是您如何使用 SIOS LifeKeeper 的一個示例天藍色保護一個簡單的 NFS 集群。 同樣的概念適用於您需要保護的任何關鍵業務應用程序。 您只需利用 SIOS 提供的負載均衡器 ARK 來允許 Azure 負載均衡器(內部或外部)確定當前託管應用程序的節點。