Fabric intent modification
The Fabric Services System provides a number of methods to alter a fabric intent. Options vary depending on whether a fabric intent has been saved, generated, or deployed.
The current configuration of a node based directly on the latest version of a fabric intent, and excluding any changes from configuration overrides, is referred to by the Fabric Services System as the normalized configuration for that node.
Locks to prevent concurrent changes to fabric intent data
In addition to the direct modification of a fabric intent by Fabric Services System user, some other activities can require an update to a fabric's configuration. For example, if you configure traffic mirroring, the system must modify the affected nodes' normalized configurations to incorporate the mirroring data.
To avoid conflicts that could result from the concurrent modification of node configuration data, the Fabric Services System locks the fabric intent when generating a new configuration based on inputs from any source. This lock is released only when the changes underway are used to generate a new configuration, and is deployed. Only then can the competing, concurrent configuration changes be applied to further modify the normalized configuration.
So, for example, an attempt to apply configuration changes that incorporate traffic mirroring data is prevented until any changes already underway from direct modification of the general fabric intent have been applied. That is, the new configuration must have been generated and the new version of the fabric intent deployed.
Similarly, if the system is in the process of updating the normalized configuration based on traffic mirroring configuration, modifications to the fabric intents using the Fabric Intents form are prevented until the mirroring configuration has been generated and that new version of the fabric intent deployed.
Editing a fabric intent
When editing a fabric intent, you cannot change the template that the fabric intent design is based on, but you can alter the description and topology-related values such as the number of leaves and spines. When you begin the edit operation, the system makes clear which fields can be altered and which cannot.
When you deploy a fabric intent, you can no longer edit its parameters. You must create a new version of a deployed fabric intent at which point you can save, regenerate, and possibly redeploy the new version.
To edit a saved fabric intent:
- Click the menu.
- Select Fabric Intents.
-
To open a specific fabric intent from the list, do one of
the following:
- Double-click the row for that fabric intent.
- Select a row, click the icon at the right edge of that row, and select Open from the displayed action list.
- Edit parameters in the left panel as required.
- When you are finished editing parameters, click to save the new configuration.
Effect of edits on a related backbone intent
Discarding changes to a fabric intent
If you discard changes for the initial version of a fabric intent that was never deployed, it deletes the fabric intent entirely.
To discard changes for any version of a fabric intent:
- Click the menu.
- Select Fabric Intents.
-
To open a specific fabric intent from the list, do one of the following:
- Double-click the row for that fabric intent.
- Select a row, click the icon at the right edge of that row, and select Open from the displayed action list.
- From the opened fabric intent, click the More actions icon () at the upper right of the page.
- Select Discard Changes.
-
Click OK.
The system deletes the current, in-progress candidate version of the fabric intent, and the display reverts to show the last-deployed version.
Creating a new version of a fabric intent
Some actions you perform in the system may require a change to the configurations of one or more fabrics. When this happens, the system may automatically create, save, and generate a new version of the affected fabric intents for you. You can then deploy the new version to apply the necessary configuration changes to the affected nodes.
A new version of a fabric intent keeps the same fabric intent name, but the system assigns an incremented version number, date, and (if necessary) a new user association.
Creating a new fabric intent is also a prerequisite for some operations that are not supported on the initial version of a fabric intent. Currently, the operations that are supported only on Version 2.0 or greater of a fabric intent are:
- configuring LAGs
- configuring breakout ports
To create a new version of an existing fabric intent:
- Click the menu.
- Select Fabric Intents.
-
To open a specific fabric intent from the list, do one of the
following:
- Double-click the row for that fabric intent.
- Select a row, click the icon at the right edge of that row, and select Open from the displayed action list.
- Click the menu at the upper right of the page.
-
Select Create Candidate Version.
The system saves a new version of the current fabric intent.
You can now edit the fabric intent's parameters and save the result without affecting the original version.
-
Click GENERATE FABRIC to generate a new
fabric diagram.
You can now view the fabric intent, and eventually add it to the deployment pipeline and deploy it as you would for a new fabric intent.
At any time before deploying the new version, you can discard this candidate version and revert to the previously deployed version by clicking on the More actions icon ( ) in the Fabric Design view and selecting Discard Changes.
Duplicating a fabric intent
To duplicate a fabric intent:
- Click the menu.
- Select Fabric Intents.
- Select a fabric intent from the displayed list.
- Click the More actions icon () at the right end of the row.
- Select Duplicate from the action list.