我個人一向熱愛將所有系統管理的操作全部自動化,一來可以累積先前的操作經驗將正確無誤的 SOP 濃縮成一行一行的程式碼 (批次檔或指令檔),另一方面也因為程式碼一板一眼,只要操作的情境是相符的就能大幅減少操作錯誤發生的機率,因此不管做什麼動作,只要是常用的我都會寫成批次檔協助完成。今天我就要來分享幾個我常用的 NLB 管理指令。
NLB 常用的工具只有兩個,一個是擁有 GUI 管理介面的 [網路負載平衡管理員] (nlbmgr.exe),另一個是命令提示字元下常用的 nlb.exe 或 wlbs.exe 工具程式 (註: nlb.exe 與 wlbs.exe 是完全一樣的程式)。
nlbmgr.exe 雖然支援 GUI 管理介面,但是在啟動的時候也可以加入一些啟動參數,相關參數說明可以使用以下指令查詢:
nlb.exe 就是比較常用的指令列工具了,以下是一些經常使用的參數與說明: ( 可使用 nlb /? 查詢 )
我們先假設你的 NLB 叢集相關資訊如下:
- 叢集 IP 位址:172.16.8.100
- 叢集節點 1 的主機名稱:WEB1 ( 172.16.8.1 )
- 叢集節點 2 的主機名稱:WEB2 ( 172.16.8.2 )
※ 查詢 NLB 叢集相關資訊 ※
1. 查詢 NLB 叢集所使用的 MAC 位址
2. 查詢 NLB 叢集相關參數
註:這些參數都是從機碼中讀出來的,完整說明請參考 Network Load Balancing Tools and Settings 文件
3. 查詢 NLB 叢集所有節點目前的狀態
4. 查詢 NLB 叢集特定節點目前的狀態
nlb query 172.16.8.100:WEB1
5. 查詢 NLB 叢集目前正在運作的參數值 / 可查詢出目前 NLB 叢集正在使用中連線數目!
這行指令的執行結果最後兩行會顯示出目前 NLB 叢集正在使用中連線數目
註1:這參數與 nlb display 的用途很像,差別在於使用 nlb params 讀出的資料是直接從 kernel 讀出來的,也就是當下正在運作的參數值 (Running Value)。
※ 設定 NLB 叢集 ※
1. 將 NLB 叢集中的特定節點停止 (stop)
nlb stop 172.16.8.100:WEB1
2. 將 NLB 叢集中的特定節點清空停止 (drainstop)
nlb drainstop 172.16.8.100:WEB1
3. 將 NLB 叢集中的特定節點啟動 (start)
nlb start 172.16.8.100:WEB1
4. 將 NLB 叢集中的特定節點暫停 (suspend)
nlb suspend 172.16.8.100:WEB1
5. 將 NLB 叢集中的特定節點繼續 (resume)
nlb resume 172.16.8.100:WEB1
相關連結