Contextual configuration overrides
Contextual configuration overrides alter the configurations for sub-interfaces associated with a workload intent.
When you create a workload intent, the Fabric Services System prepares a set of configuration files for all of the nodes participating in the workload intent. The configuration for each of these nodes is based directly on the parameters you provide when creating the workload intent. These are the "normalized configurations" for the participating nodes.
A contextual configuration override allows you to specify a set of changes to the configuration files for one or more nodes participating in a workload intent. Configuration overrides are strictly additive; they allow you to insert new or modify existing configuration data, but cannot be used to remove any of the configuration data that the system creates based on the original workload intent inputs.
- a workload intent you are currently creating
- a new workload intent
- a new version of an existing workload intent
Multiple versions of overrides
You can create additional versions of a contextual configuration override; only one of these can be set to Active at a time. You can set all versions of an override to Inactive if required.
Deleting overrides
If you delete a contextual configuration override, or set all versions of an override to Inactive, any existing workload intents (and the node configurations that support them) are unaffected.
However, the next time you generate a workload intent that previously used the deleted or inactive override, the former override modification does not take place.
Contextual configuration override parameters
Parameter | Default value | Description |
---|---|---|
Version | See Description | This value is assigned automatically. The first instance of any configuration override is Version 1.0. Subsequent versions of the same override increment this value. |
Active | Enabled | This value indicates which, if any, version of a configuration
override should be used to modify the configuration data for the
targets. A maximum of one version of any configuration override can
be active at one time. It is possible to set all versions of an override to inactive. |
Automatic Deployment | Disabled | This value cannot be modified. |
Name | None | This text string identifies the configuration override and is used to identify it in the list of all overrides within the system. It must be unique (but is shared by all versions of the same override). |
Description | None | An optional text string describing the purpose or impact of the override. |
Execution Order | n+100 |
If two or more overrides target the same sub-interfaces, the execution order value dictates the order in which the configuration changes are merged into the configurations data. The override with the lowest Execution Order value is applied first. The default value is the current highest value plus 100. As a result, the first override created has a default value of 100. |
Target Configuration | See description | This consists of three
sub-parameters:
Note: An override can include either a
target configuration with a software version of ALL, or one or
more target configurations that identify specific supported
software versions. |
Configuration Type | Contextual Override | This value cannot be modified. |
Type | sub-interface | Only sub-interface can be selected. This indicates the type of workload-related object whose configuration data is impacted by this override. |
Path | /interface/subinterface | This indicates where within the structure of a configuration file this override will be inserted. For sub-interfaces, the override text will be inserted within the /interface/sub-interface section of the configuration file. |
Method Selector | By Type | This value cannot be altered. |
Selector | n/a | Contains the list of sub-interfaces that will be affected by this
override. The list of selected objects can span multiple workload intents. |
Node Selector | None | You can optionally use this control to select one or more nodes in the system inventory. Regardless of how many nodes' configurations might be encompassed by the current list of sub-interface or router targets, the configuration override will be applied only on these nodes. |
Configuration Data | None | Each configuration override must include a set of
JSON configuration data that will be merged into the configuration
data for the targets. For example:
|
Creating a contextual configuration override
- Provide a name and description to identify this override.
- Set some configuration parameters for the override:
- whether it is active
- where it falls in the overall execution order for all active overrides
- Identify the software configuration of the target nodes (the operating system, OS version, and data model).
- Enter the specific configuration data that should be applied to the target configurations.
- Specify that the configuration override applies to sub-interfaces
- Identify the objects to which this override applies by selecting specific, previously-defined sub-interfaces.
- Save the override.
- in-progress workload intents
- future workload intents
- new versions of existing workload intents
- Click the menu.
- Select Overrides to open the Overrides page.
- From the View drop-down, which is set to Global Override by default, select Contextual Override.
- Click +CREATE to open the Configuration Creation page.
-
Enter values for the following parameters as described in Global configuration override parameters:
- Active
- Name
- Description
- Execution Order
Note: The Version property is automatically set to 1 and cannot be altered.Note: The Automatic Deployment property is disabled and cannot be altered. -
Identify a target configuration by doing the following:
-
In the Configuration panel, add the specific
configuration data that you want to be merged into the configurations for the
targeted nodes.
Note: You can enter independent instances of configuration code here for each combination of operating system, version, and data model you selected in step 6. Select each target configuration from the Target drop-down to see its unique window in which to enter configuration code.Note: Instead of typing or pasting code in this window, you can use the More... button () at the upper right of the form to select a file from which to import this code.
- In the Type drop-down, leave Sub-Interfaces selected.
-
Select the edit icon () above the Selector panel to open
theSelector form (which lists all available
sub-interfaces), and do the following:
-
Optionally, use the Node Selector to select one or more
specific nodes managed by the Fabric Services System. If the set of defined
sub-interface targets for this override encompass multiple nodes, only the nodes
on this list will in fact be affected by the contextual configuration
override.
Note: If you do not select one or more nodes here, the contextual configuration override is applied to the configurations of all nodes encompassed by the selected sub-interfaces.
- Click the Save icon () to save the new override.
If you created the configuration override in the midst of creating a workload intent, you must generate that workload intent again to incorporate the override data. You can then resume the creation and deployment of that workload intent.