In the old days it was quite common to schedule a device reboot e.g. 5 min ahead when ‘tricky’ remote device changes had to be performed over an in-band connection such as SSH/telnet. In case the config changes provided the desired result, the reboot would be cancelled. When the changes would have resulted in a lost management connection, the reboot would have reverted the device state to the previous config (assuming no ‘save’ was done).
Comware 7 now has a similar feature but without the device reboot, so this is an online ‘swap’ of the configuration without the reboot delay.
Note: This command is a one-off command, it is not saved in config and it needs to re-entered every time it is needed.
First set the time in the future when the auto-rollback is supposed to happen
[5900G-1]configuration commit delay ? INTEGER<1-65535> Delay time in minutes [5900G-1]configuration commit delay 2 %Jan 1 04:11:58:463 2011 5900G-1 SHELL/5/SHELL_COMMIT_DELAY: A configuration rollback will be performed in 2 minutes.
Now a config change is made, for example, the G1/0/1 description is set to ‘demo’
[5900G-1]int g1/0/1 [5900G-1-GigabitEthernet1/0/1]description demo1
Review the running config with the applied change
[5900G-1-GigabitEthernet1/0/1]dis cur int g1/0/1 # interface GigabitEthernet1/0/1 port link-mode bridge description demo1 # return
When the administrator does not confirm the applied changes with the ‘commit’ command within the set delay time, the device will automatically rollback the configuration.
%Jan 1 04:08:28:315 2011 5900G-1 SHELL/5/SHELL_COMMIT_ROLLBACK: The configuration commit delay is overtime, a configuration rollback will be performed. %Jan 1 04:08:36:403 2011 5900G-1 SHELL/5/SHELL_COMMIT_ROLLBACKDONE: The configuration rollback has been performed.
Now the running config has been reverted to the state before the commit delay was entered
[5900G-1-GigabitEthernet1/0/1]dis cur int g1/0/1 # interface GigabitEthernet1/0/1 port link-mode bridge # return
When the admin decides that the changes are fine, the configuration commit can be used. This will cancel the pending timer.
Again some configuration change is made
[5900G-1-GigabitEthernet1/0/1]description demo2 [5900G-1-GigabitEthernet1/0/1]quit
Now the configuration commit is used
[5900G-1]configuration commit %Jan 1 04:09:30:268 2011 5900G-1 SHELL/5/SHELL_COMMIT: The configuration has been committed.
And the running configuration now contains the applied changes
[5900G-1-GigabitEthernet1/0/1]dis cur int g1/0/1 # interface GigabitEthernet1/0/1 port link-mode bridge description demo2 # return
Thanks for sharing Peter
Many thanks Peter! Will definitely come in handy!