Administered Partial Success
For a two-leaf MCT pair, you can enable configurations to succeed when only one node of the pair is reachable.
Overview
By default, when a REST operation succeeds on one device but fails on another, configuration changes are rolled back for both devices. For more information, see Rollback Scenarios for Data Consistency.
However, for a two-leaf MCT pair, you can administratively change the process to permit
configuration to succeed even when one device is down. This process, called an
administered partial success, is as follows.
- You use the efa inventory admin-state command to change the state of the unreachable device to "admin down." The device then goes into maintenance mode. For more information about changing a device state, see Administratively Manage a Device State.
- EFA filters out configurations destined for MCT pair as follows.
- Create-related and delete-related configurations destined for the "admin up" device succeed.
- Create-related configurations are not attempted for the "admin down" device, but the configurations are considered a success. These configurations are marked as pending, to be pushed to the device when it comes back up.
- Delete-related
configurations (de-configurations) are not attempted for the "admin
down" device and the operation fails with an error in the REST
response. You can retry these de-configurations after the device
transitions to “admin up” state.
EFA does not want to leave stale configurations on the devices because if stale configurations are left on the devices, then bringing the devices (with stale configurations) back into EFA are erroneous considering the full brownfield support is missing in EFA.
- When the device is again reachable, you change the state of the device to "admin-up."
- EFA pushes the pending configurations to the device, and the drift and reconcile process ensures that the configurations in EFA and the device are synchronized. For more information, see Drift and Reconcile.
- The device comes out of maintenance mode.
Tips and considerations
- You can use Switch Health Management to verify the reachability of a device. Use the --health-check-interval and --health-check-heartbeat-miss-threshold settings of the efa inventory device setting update command. For more information, see Monitor Device Health.
- You can retry the same CLI or REST operation after the “admin down” devices transition to “admin up” state so that the deconfiguration is attempted on all the devices. You can use the “force” option available in the REST API to forcefully delete the entities from EFA even in case of partial success topology.
- You can use the efa tenant debug device drift command to determine any drift between the intended EFA configuration and the device configuration. These commands also identify the app state and the dev state: efa tenant epg show and efa tenant po show.
- EFA blocks the tenant reconciliation API, and rest of the tenant APIs support partial success behavior.
- If a high-availability failover or restart occurs while a device is in "admin down" or "admin up" state, you must reapply the state.
- If an operation such as drift and reconcile or a firmware download is in progress when you submit the command to change the state, the command is blocked until the operation is complete.
- This feature is supported only for devices in an MCT pair. Standalone devices are not supported.
- You can change the status of only one device in an MCT pair to "admin down" to
benefit from administered partial success.
- When both devices are in "admin down" state, the topology is considered a complete failure. Configuration attempts on these devices are rejected and error messages are returned in the REST responses. Administered partial success is not applicable.
- When both devices are in "admin up" state, the topology is considered a complete success. Configuration attempts on these devices are accepted. Administered partial success is not applicable.
Behavior changes during "admin down" state
After a device state changes to "admin down," the following behavior changes
occur.
- Switch Health Management does not trigger the drift and reconcile process.
- A device going into maintenance mode does not trigger the drift and reconcile process.
- The following commands are blocked from affecting the device.
Table 1. Blocked commands Command type and name Inventory commands efa inventory device compare --ip efa inventory drift-reconcile --ip efa inventory device setting update --ip efa inventory rma --ip efa inventory config-backup execute --ip efa inventory config-replay execute --ip efa inventory device update --fabric efa inventory device firmware-download prepare add --ip efa inventory device update --ip efa inventory device interface set-speed --ip efa inventory device interface set-breakout --ip efa inventory device interface unset-breakout --ip efa inventory device interface set-mtu --ip efa inventory device interface set-admin-state --ip efa inventory device running-config persist --ip Fabric commands efa fabric configure --name efa fabric device remove --ip <> --name <>
Allowed with the --no-device-cleanup option.
efa fabric show-config --name efa fabric topology show underlay --name efa fabric topology show overlay --name efa fabric topology show physical --name