09-GIR配置
本章節下載: 09-GIR配置 (338.21 KB)
目 錄
GIR(Graceful Insertion and Removal,平滑插入和移除)提供了一種設備隔離方案,適用於設備進行維護或升級的場景。通過GIR模式切換功能,可以一次下發多個業務模塊的隔離命令,各業務模塊會先將流量切換至冗餘路徑,再將設備置於維護模式,此時處於維護模式下的設備與其它設備之間網絡隔離。當完成維護或者升級操作之後,用戶可通過手動或自動的方式將設備切回普通模式,恢複流量的正常轉發和處理。
GIR將設備的運行模式分為如下兩種:
· 普通模式:設備的正常工作狀態。設備處於該模式時,可正常轉發和處理流量。
· 維護模式:執行GIR模式切換操作後設備處於的狀態。該模式下設備無法正常轉發流量,流量被切換到其它設備,用戶可以對本設備進行維護或升級操作。
GIR通過模式切換命令,可以一鍵下發所需協議的隔離(或解除隔離)命令給對應的業務模塊,由對應業務協議模塊自動執行命令來實現流量的平滑切換,並且提供快照查看與比較功能,用來確認模式切換前後的配置差異。
通過執行gir system-mode maintenance命令,會下發相關的協議隔離命令給對應的業務模塊,由對應業務模塊自動執行隔離命令,實現設備的流量隔離。目前支持的協議有LACP協議、BGP協議、ISIS協議、OSPF協議和OSPFv3協議等。各業務模塊實現隔離的方式有isolate和shutdown兩種,具體的隔離實現請參考各業務模塊的手冊。
對設備進行維護或升級操作後,執行undo gir system-mode maintenance命令可以自動對設備進行協議恢複,讓設備正常轉發流量。
協議的隔離方式一般有isolate和shutdown兩種,以OSPF協議為例:
· 通過isolate enable命令開啟OSPF isolate功能後,OSPF將鏈路度量值調大,以便鄰居重新進行路徑優選。鄰居收到LSA完成路由計算後,將選擇更優的路徑轉發流量,不再將流量發往OSPF isolate設備。此時,設備的OSPF協議完全從當前組網中隔離出來,可以對該設備上的OSPF協議進行升級處理。對OSPF協議的維護結束後,使用undo isolate enable命令將鏈路度量值恢複為調整前的值,從而讓該設備的OSPF協議重新加入網絡。
· 通過shutdown process命令開啟OSPF shutdown功能後,OSPF進程將向鄰居發送1-way Hello報文。鄰居收到1-way Hello報文後,斷開與發送該報文的設備的鄰居關係。OSPF進程還將停止收發OSPF協議報文,清除鄰居信息、LSDB(包括自己產生的LSP和接收到的LSP)以及OSPF路由等信息。
由此可見當以isolate方式隔離時,協議會占用更多的資源,但是可以更快恢複到隔離前的狀態;以shutdown方式隔離時,協議占用的資源較少,但恢複到隔離前狀態的速度相對較慢。關於OSPF協議的isolate enable和shutdown process命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“OSPF”。
用戶可以根據實際需要,比如需要隔離的協議等選擇不同的模式切換方式。
· 正切是指從普通模式切換到維護模式,正切有三種方式:
¡ 設備通過isolate方式進入維護模式,設備缺省使用此方式。以此方式正切的設備會通過isolate功能對BGP、IS-IS、OSPF、OSPFv3、LACP和VRRP協議進行隔離。
¡ 設備通過shutdown方式進入維護模式。以此方式正切的設備會通過shutdown功能對BGP、IS-IS、OSPF、OSPFv3、LACP和VRRP協議進行隔離,並且關閉設備上除管理口外的所有接口。
¡ 設備通過用custom-profile方式進入維護模式。用戶可進入custom-profile視圖自定義配置設備正切時隔離的協議和關閉的接口等。
缺省情況下,設備會以isolate方式正切。如果用戶想要對隔離的協議或關閉的接口等進行自定義配置,可以通過配置custom-profile方式進行隔離或恢複。custom-profile是按順序記錄模式切換時係統下發命令的配置文件,包含正切profile和回切profile。當用戶使用custom-profile方式切換到維護模式時係統會按順序執行正切profile中配置的命令;當用戶使用custom-profile方式切回到普通模式時係統會按順序執行回切profile中配置的命令。正切profile和回切profile分別隻能有一份,用戶需進入custom-profile視圖來配置正切profile和回切profile。
· 回切是指從維護模式切換到普通模式,回切有兩種方式:
¡ 設備通過與正切對應的方式回切,如果設備正切時是通過isolate或custom-profile方式,則采用isolate正切對應的反向操作回切;如果設備正切時是通過shutdown方式,則采用shutdown正切對應的反向操作回切。
¡ 設備通過custom-profile方式回切,這時設備會采用用戶在回切profile中配置的命令回切。
快照可以記錄對應時間點設備的運行數據,可用於係統恢複及不同時間點數據差異的對比。
GIR快照分為自動生成和手動創建兩種。係統正常運行時用戶可以在任何時間手動創建GIR快照,用戶可指定快照名稱。對於GIR自動生成的快照,保存的是普通模式下各業務模塊的狀態信息,以NETCONF文件格式保存設備當前的運行數據。設備會在如下情況自動生成GIR快照:
· 將設備從普通模式切換到維護模式時,設備會先記錄進入維護模式前的GIR快照,再將設備進行流量隔離。在這種情況下生成的快照名為before_maintenance。
· 將設備從維護模式切回普通模式時,設備先進行協議恢複,在係統進入穩定狀態後再記錄退出維護模式後的GIR快照。通過display system stable state命令顯示的system state字段為Stable,則表示設備處於穩定狀態。在這種情況下生成的快照名為after_maintenance。
通過執行模式切換命令生成的兩個GIR快照文件before_maintenance與after_maintenance均是覆蓋保存的,且用戶不可以指定快照名稱。
GIR提供了快照比較功能,方便用戶確認模式切換前後設備的配置差異。
GIR配置任務如下:
(1) 配置custom-profile
(2) GIR模式切換操作
a. 正切
b. 回切
(3) GIR快照操作
¡ 手工創建快照
¡ 手工刪除快照
(4) GIR高級功能
缺省情況下,設備會以isolate方式正切。如果用戶想要對隔離的協議或關閉的接口等進行自定義配置,可以通過配置custom-profile方式進行隔離或恢複。關於custom-profile方式的原理介紹,請參見“1.1.2 GIR原理”。
請先在PC上編輯好custom-profile的內容,再進入custom-profile視圖下粘貼,輸入的命令行將按照輸入先後順序依次執行;如果需要修改custom-profile,請先在PC上修改完畢後,再在設備上刪除custom-profile,最後進入custom-profile視圖下粘貼。custom-profile分為正切profile和回切profile兩種,其配置規則如下:
· 係統使用custom-profile方式進行模式切換時會按順序執行custom-profile中的命令,如果命令之間存在依賴關係請先輸入前提命令。當在custom-profile中同時配置了一條命令與這條命令對應的undo命令,且undo命令undo後麵的內容與這條命令完全一致,係統會自動在custom-profile中刪除這兩條命令。另外係統會自動刪除custom-profile中重複的命令。
· 設備缺省在係統視圖下執行custom-profile中的命令行,如果某條命令需要在係統視圖的子視圖下執行,則要求先輸入進入子視圖的命令,再輸入該命令。custom-profile不支持下發用戶視圖下的命令。
· 相同視圖的命令會合並到該視圖下,並按添加的順序下發。
· 在custom-profile中配置業務模塊的命令,如果有命令存在延遲生效的情況,可以在此命令後通過sleep instance命令配置延時時長,這樣在執行完該命令後係統會在配置的延時時長後再繼續執行下一條命令,這樣可以避免出現上一條命令還未生效便開始執行下一跳命令的情況。如果用戶不能明確配置的命令是否需要延時,可以預先配置sleep instance命令並將等待時間設置為0,後續根據需求進行修改。
· 除了修改sleep instance的等待時間外,不支持對已配置的命令進行插入、修改或刪除操作。可通過display gir custom-profile命令查看custom-profile的內容,如果發現配置錯誤,請先刪除custom-profile,再重新配置。
· custom-profile允許為空,當用戶使用isolate或shutdown方式切換模式且模式對應的custom-profile為空的時,係統會將切換模式時執行的命令記錄在對應的custom-profile中。用戶編輯空的custom-profile前可以先使用isolate或shutdown方式進行模式切換,再基於記錄了相應命令的custom-profile進行編輯。
使用該功能時,用戶應明確custom-profile中每條配置命令對設備產生的影響,避免錯誤配置導致流量不能被正確隔離。如果下發的命令之間存在依賴關係,需要用戶在下發順序上進行保證。
(1) 進入係統視圖。
system-view
(2) 進入custom-profile視圖編輯正切profile。
gir custom-profile maintenance-mode
(3) 配置業務模塊的隔離等命令,具體業務模塊的隔離命令請參考各業務模塊的手冊。
(4) 退出custom-profile視圖,結束編輯。
config-end
(1) 進入係統視圖。
system-view
(2) 進入custom-profile視圖編輯回切profile。
gir custom-profile normal-mode
(3) 取消對業務模塊的隔離,具體配置請參見業務模塊的配置手冊。
(4) 退出custom-profile視圖,結束編輯。
config-end
當需要維護或升級設備時,請使用本功能,將設備從普通模式切換到維護模式。
切換到維護模式後,請不要修改各業務模塊的配置,否則會導致退出維護模式後,設備配置與原來配置不一致。
用戶無法在執行快照操作的同時下發模式切換命令。當有用戶在執行快照操作時,用戶下發模式切換命令,命令下發不成功且設備會打印錯誤提示信息或生成日誌,反之亦然。請等待這些任務執行結束後再進行模式切換。
如果模式切換過程中有業務模塊命令下發失敗,則設備會不再繼續進行模式切換並回到原有模式。設備會顯示下發失敗的命令或生成日誌,但已下發命令不回滾。
· 如果某業務模塊的命令下發失敗,請根據業務模塊的具體提示信息排查失敗原因。
· 為了方便用戶確認設備模式切換前後存在的配置差異,可以通過設備提供的GIR快照比較功能進行查看。如果有配置差異,請用戶根據具體的差異信息排查原因。
有時由於部分業務模塊流量切換慢,會出現設備已經進入維護模式但仍有業務模塊未完成流量切換的情況。建議用戶在下發正切命令後,通過display counters命令查看並確認當前設備無流量經過,再進行後續操作。
(1) (可選)確定係統處於穩定狀態。
display system stable state
使用本命令顯示的system state字段為Stable,則表示設備處於穩定狀態。GIR模式切換前使用本命令查看設備的狀態,需要等待設備進入穩定狀態,才可以進行GIR模式切換。
(2) 進入係統視圖。
system-view
(3) 使設備正切。
gir system-mode maintenance [ shutdown | custom-profile ] [ non-interactive ]
· 執行本命令後,可能會發生流量丟包導致相關業務中斷,請謹慎使用。
· 在模式切換過程中,請不要重啟設備或進程,設備重啟或部分進程重啟可能會中止模式切換,而且已下發的業務模塊命令無法回滾。
(4) (可選)確認當前設備無流量經過。
display counters
當完成維護或升級操作後,請使用本功能,將設備從維護模式切回普通模式。
在M-LAG應用場景下,如果要將設備從維護模式切回到普通模式,請先執行display m-lag mad verbose命令確認設備接口狀態未處於“M-LAG MAD DOWN”狀態,再執行undo gir system-mode maintenance命令。有關M-LAG的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“M-LAG”。
如果模式切換過程中有業務模塊命令下發失敗,設備會顯示失敗提示信息或生成日誌。為了方便用戶確認設備模式切換前後存在的配置差異,可以通過設備提供的GIR快照比較功能進行查看。如果有配置差異,請用戶根據具體的差異信息排查原因。
用戶無法在執行快照操作的同時下發模式切換命令。當有用戶在執行快照操作時,用戶下發模式切換命令,命令下發不成功且設備會打印錯誤提示信息或生成日誌,反之亦然。請等待這些任務執行結束後再進行模式切換。
(1) 確定係統處於穩定狀態。
display system stable state
使用本命令顯示的system state字段為Stable,則表示設備處於穩定狀態。GIR模式切換前使用本命令查看設備的狀態,需要等待設備進入穩定狀態,才可以進行GIR模式切換。
(2) 進入係統視圖。
system-view
(3) 使設備回切。
undo gir system-mode maintenance [ custom-profile ] [ non-interactive ]
在模式切換過程中,請不要重啟設備或進程,設備重啟或部分進程重啟可能會中止模式切換,而且已下發的業務模塊命令無法回滾。
配置本功能且將設備切換到維護模式,則設備在指定時間後,會自動回切到普通模式。用戶可在維護模式期間需要執行的任務時長較為確認的情況下執行本命令。
(1) 進入係統視圖。
system-view
(2) 配置切換到維護模式後延時自動回切的延時時長命令。
gir system-mode maintenance revert-delay value
缺省情況下,設備不自動回切。
當回切延時時間為0時,不自動回切。
快照可以記錄對應時間點設備的運行數據,可用於係統恢複及不同時間點數據差異的對比。用戶可通過本功能手工創建GIR快照。
如果設備正在進行模式切換、快照操作或者快照顯示與比較,請在相關操作執行結束後再執行創建快照的命令。
(1) 進入係統視圖。
system-view
(2) 創建當前設備狀態的GIR快照。
gir snapshot create snapshot-name description
快照名稱可以包含數字、字母和下劃線。
當GIR快照數量較多或GIR快照文件占據了較大內存時,用戶可以通過該命令刪除生成時間較早的GIR快照。
如果設備正在進行模式切換、快照操作或者快照顯示與比較,請在相關操作執行結束後再執行刪除快照的命令。
(1) 進入係統視圖。
system-view
(2) 執行刪除GIR快照命令。
gir snapshot delete { all | snapshot-name }
由於路由表的規格比較大,GIR快照創建時設備默認不獲取模塊數據如路由信息。執行本命令可以使設備在創建GIR快照時獲取模塊數據,便於獲取更多的快照對比信息如路由比較信息。
(1) 進入係統視圖。
system-view
(2) 執行添加GIR快照內容命令。
gir snapshot add { ipv4routes | ipv6routes }*
缺省情況下,設備在創建GIR快照時不獲取模塊數據。
正切中若業務模塊存在生效較慢的命令可能會導致設備進入維護模式後命令仍沒有生效。為了避免這種情況,可設置延時放開命令行的時長。若配置此命令,正切中所有業務模塊的命令下發後,係統會等待設置的時間再進入維護模式。
(1) 進入係統視圖。
system-view
(2) 配置回切時間命令。
gir system-mode maintenance maintenance-delay value
缺省情況下,延時放開命令行的時長為120秒。
對於協議恢複較慢的業務模塊,為了避免在業務模塊恢複業務前就生成after_maintenance快照,可以通過本功能配置延時生成GIR快照的延時時長,控製切換回正常模式後生成GIR快照的時間,以獲取更準確和完整的數據。
(1) 進入係統視圖。
system-view
(2) 配置回切時間命令。
gir system-mode maintenance snapshot-delay value
缺省情況下,延時生成GIR快照的時長為120s。
完成上述配置後,在任意視圖下執行display命令可以顯示配置GIR後的運行情況。用戶可以通過查看顯示信息,來驗證配置的效果。
圖1-1 GIR顯示和維護
操作 |
命令 |
顯示當前設備上存在的所有GIR快照 |
display gir snapshot |
顯示GIR快照的比較信息 |
display gir snapshot compare snapshot1-name snapshot2-name [ verbose ] |
顯示當前GIR模式 |
display gir system-mode |
顯示當前定義的profile |
display gir custom-profile [ maintenance-mode | normal-mode ] |
如圖1-3所示,Internet的報文可分別通過Device A和Device B到達Device C且這兩條路由互為等價路由。現需要對Device A進行軟件升級。為保證升級過程零丟包,先通過GIR使Device A進入維護模式,再對Device A進行軟件升級,最後再將Device A切回正常模式。
圖1-2 基於等價路由的GIR配置組網圖
(1) 配置IP地址和OSPF協議,確保Internet的報文可分別通過Device A和Device B到達Device C且這兩條路由互為等價路由,具體配置過程略。
(2) 配置GIR從普通模式切換到維護模式
# 在Device A上進行模式切換。
<Device A> display system stable state summary
System state : Stable
Redundancy state : No redundance
NSR state : No standby
<Device A> system-view
[Device A] gir system-mode maintenance
Collecting commands... Please wait.
Configuration to be applied:
ospf 1
isolate enable
Do you want to continue? [Y/N]: y
Generated a snapshot: before_maintenance.
Applying: ospf 1
Applying: isolate enable
Waiting 120 seconds to release the CLI.
Changed to maintenance mode successfully.
# 在Device A上驗證GIR配置,確認模式切換成功。
[Device A] display gir system-mode
System Mode: Maintenance
Revert-delay time: 0min
Maintenance-delay time: 120s
Snapshot-delay time: 120s
# 在Device A上確認流量已經切換完成。
[Device A] display counters rate inbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
WGE1/0/1 0 0 -- --
WGE1/0/2 0 0 -- --
Overflow: More than 14 digits.
--: Not supported.
# 在Device A上進行軟件升級。
(3) 配置GIR從維護模式切換到普通模式
# 設備完成升級並重啟後,在Device A上進行模式切換。
<Device A> system-view
[Device A] undo gir system-mode maintenance
Collecting commands... Please wait.
Configuration to be applied:
ospf 1
undo isolate enable
Do you want to continue? [Y/N]: y
Applying: ospf 1
Applying: undo isolate enable
Waiting 120 seconds to generate a snapshot.
Generated a snapshot: after_maintenance.
Changed to normal mode successfully.
# 在Device A上驗證GIR配置,確認模式切換成功。
[Device A] display gir system-mode
System Mode: Normal
Revert-delay time: 0min
Maintenance-delay time: 120s
Snapshot-delay time: 120s
# 在Device A上確認流量已經切換完成。
[Device A] display counters rate inbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
WGE1/0/1 100 100 -- --
WGE1/0/2 100 100 -- --
Overflow: More than 14 digits.
--: Not supported.
本例以OSPF和鏈路聚合為例來展示切換過程。OSPF的具體配置請參見“三層技術-IP路由命令參考”中的“OSPF”。M-LAG的配置請參見“二層技術-以太網交換命令參考”中的“M-LAG”。
本例僅提供GIR過程舉例。關於軟件升級的具體配置請參見“基礎配置指導”中的“ISSU”。
如圖1-3所示,Device A和Device B上配置了M-LAG,已經組成了M-LAG係統。現需要對Device A和Device B進行軟件升級。為保證升級過程零丟包,軟件升級采用如下方式:
1、先升級Device B
通過isolate方式正切。
2、升級Device A
圖1-3 基於M-LAG的GIR配置組網圖
(1) 配置GIR從普通模式切換到維護模式
# 在Device B上進行軟件升級。
# 在Device A上進行模式切換。
<Device A> display system stable state summary
System state : Stable
Redundancy state : No redundance
NSR state : No standby
<Device A> system-view
[Device A] gir system-mode maintenance
Collecting commands... Please wait.
Configuration to be applied:
ospf 1
isolate enable
sleep instance 1 interval 30
link-aggregation lacp isolate
Do you want to continue? [Y/N]: y
Generated a snapshot: before_maintenance.
Applying: ospf 1
Applying: isolate enable
Applying: sleep instance 1 interval 30
Applying: link-aggregation lacp isolate
Waiting 120 seconds to release the CLI.
Changed to maintenance mode successfully.
# 在Device A上驗證GIR配置,確認模式切換成功。
[Device A] display gir system-mode
System Mode: Maintenance
Revert-delay time: 0min
Maintenance-delay time: 120s
Snapshot-delay time: 120s
# 在Device A上確認流量已經切換完成。
[Device A] display counters rate inbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
WGE1/0/1 0 0 -- --
WGE1/0/2 0 0 -- --
WGE1/0/3 0 0 -- --
Overflow: More than 14 digits.
--: Not supported.
# 在Device A上進行軟件升級。
(2) 配置GIR從維護模式切換到普通模式
# 設備完成升級並重啟後,在Device A上進行模式切換。
<Device A> system-view
[Device A] undo gir system-mode maintenance
Collecting commands... Please wait.
Configuration to be applied:
undo link-aggregation lacp isolate
sleep instance 1 interval 30
ospf 1
undo isolate enable
Do you want to continue? [Y/N]: y
Applying: undo link-aggregation lacp isolate
Applying: sleep instance 1 interval 30
Applying: ospf 1
Applying: undo isolate enable
Waiting 120 seconds to generate a snapshot.
Generated a snapshot: after_maintenance.
Changed to normal mode successfully.
# 在Device A上驗證GIR配置,確認模式切換成功。
[Device A] display gir system-mode
System Mode: Normal
Revert-delay time: 0min
Maintenance-delay time: 120s
Snapshot-delay time: 120s
# 在Device A上確認流量已經切換完成。
[Device A] display counters rate inbound interface
Usage: Bandwidth utilization in percentage
Interface Usage (%) Total (pps) Broadcast (pps) Multicast (pps)
WGE1/0/1 100 100 -- --
WGE1/0/2 100 100 -- --
WGE1/0/3 100 100 -- --
Overflow: More than 14 digits.
--: Not supported.
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!