Device
Location in GUI: Provision » Inventory
Diagram
Section titled “Diagram”Classes
Section titled “Classes”inventory (catalyst_center)
Section titled “inventory (catalyst_center)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| devices | List | [devices] | No |
devices (catalyst_center.inventory)
Section titled “devices (catalyst_center.inventory)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| fqdn_name | String | No | ||
| device_ip | IP | No | ||
| pid | Any | String or Null | No | |
| serial_number | Any | String or Null | No | |
| state | Choice | INIT, PNP, PROVISION, REPROVISION, ASSIGN | Yes | |
| device_role | Choice | ACCESS, CORE, DISTRIBUTION, BORDER ROUTER | Yes | |
| site | String | Yes | ||
| fabric_site | String | No | ||
| fabric_roles | List | Choice[BORDER_NODE, CONTROL_PLANE_NODE, EDGE_NODE, WIRELESS_CONTROLLER_NODE] | No | |
| onboarding_template | Class | [onboarding_template] | No | |
| dayn_templates | Class | [dayn_templates] | No | |
| primary_managed_ap_locations | List | String | No | |
| secondary_managed_ap_locations | List | String | No | |
| port_assignments | List | [port_assignments] | No | |
| tags | List | String | No |
onboarding_template (catalyst_center.inventory.devices)
Section titled “onboarding_template (catalyst_center.inventory.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| variables | List | [variables] | No |
dayn_templates (catalyst_center.inventory.devices)
Section titled “dayn_templates (catalyst_center.inventory.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| regular | List | [regular] | No | |
| composite | List | [composite] | No | |
| redeploy_template | Choice | ALWAYS, NEVER, ON_CHANGE | No |
port_assignments (catalyst_center.inventory.devices)
Section titled “port_assignments (catalyst_center.inventory.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| interface_name | String | No | ||
| connected_device_type | Choice | USER_DEVICE, ACCESS_POINT, TRUNKING_DEVICE, AUTHENTICATOR_SWITCH, SUPPLICANT_BASED_EXTENDED_NODE | Yes | |
| data_vlan_name | String | No | ||
| voice_vlan_name | String | No | ||
| security_group_name | String | No | ||
| authenticate_template_name | Choice | No Authentication, Open Authentication, Closed Authentication, Low Impact | No |
variables (catalyst_center.inventory.devices.onboarding_template)
Section titled “variables (catalyst_center.inventory.devices.onboarding_template)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| value | String | Yes |
regular (catalyst_center.inventory.devices.dayn_templates)
Section titled “regular (catalyst_center.inventory.devices.dayn_templates)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| variables | List | [variables] | No | |
| redeploy_template | Choice | ALWAYS, NEVER, ON_CHANGE | No | |
| copying_config | Boolean | true, false | No | |
| force_push_template | Boolean | true, false | No |
composite (catalyst_center.inventory.devices.dayn_templates)
Section titled “composite (catalyst_center.inventory.devices.dayn_templates)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| variables | List | [variables] | No | |
| redeploy_template | Choice | ALWAYS, NEVER, ON_CHANGE | No | |
| copying_config | Boolean | true, false | No | |
| force_push_template | Boolean | true, false | No |
variables (catalyst_center.inventory.devices.dayn_templates.composite)
Section titled “variables (catalyst_center.inventory.devices.dayn_templates.composite)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| value | String | Yes | ||
| template_name | String | Yes |
Device Provisioning States and Lifecycle
Section titled “Device Provisioning States and Lifecycle”The device provisioning lifecycle in Catalyst Center follows a well-defined state machine that manages devices from initial discovery through full deployment and ongoing management. Understanding these states and their transitions is crucial for effective network automation and troubleshooting.
Device States
Section titled “Device States”INIT (Initial State)
Section titled “INIT (Initial State)”The starting state for all devices when first added to the inventory. Devices in this state are discovered but not yet assigned to any site or configured for provisioning.
Characteristics:
- Device is discovered and added to inventory
- No site assignment
- No configuration applied
- Basic device information collected (IP, serial number, PID)
Possible Transitions:
- To ASSIGN: Assign device to a specific site for configuration
- To PROVISION: Begin provisioning process for non-fbric devices as well fabric provisioning, if fabric attributes specified
PNP (Plug and Play)
Section titled “PNP (Plug and Play)”Devices in this state are ready for zero-touch provisioning when they boot up and contact the Catalyst Center. This state is typically used for new devices that will be deployed in remote locations.
Characteristics:
- Device prepared for zero-touch deployment
- Configuration templates pre-assigned
- Waiting for device to contact Catalyst Center
- No active management until device boots
Possible Transitions:
- To PROVISION: Begin provisioning process for non-fbric devices as well fabric provisioning, if fabric attributes specified
- To INIT: Keep device in Inventory “as is” after PNP process
- ASSIGN: Assign device to a specific site
ASSIGN
Section titled “ASSIGN”Devices are assigned to a specific site but not yet provisioned with configuration. This state allows for site-specific settings preparation before actual provisioning.
Characteristics:
- Device assigned to a site hierarchy
- Site-specific credentials and settings applied
- Ready for provisioning process
- Configuration templates can be assigned
Possible Transitions:
- To PROVISION: Begin provisioning process for non-fbric devices as well fabric provisioning, if fabric attributes specified
- To INIT: Un-assign device from site
PROVISION
Section titled “PROVISION”The active provisioning state where devices receive their full configuration and become operational network elements. This is the target state for most production devices.
Characteristics:
- Full configuration deployment in progress or completed
- Device actively managed by Catalyst Center
- Templates applied and configuration synchronized
- Monitoring and compliance checking active
- Fabric roles assigned (if applicable)
Possible Transitions:
- To REPROVISION: When configuration changes require redeployment
- To INIT: Unprovision device completely (removes from SDA fabric and/or Inventory with config clearing)
REPROVISION
Section titled “REPROVISION”A specialized state for devices that need Network Settings configuration updates. This state ensures network settings are refreshed while maintaining device operational status.
Characteristics:
- Device remains operational during reprovisioning
- Configuration templates reapplied
- Network settings updated every time
- Maintains existing fabric membership and site assignment
Possible Transitions:
- To PROVISION: Return to standard provisioned state after updates complete
- To INIT: Unprovision device completely (removes from SDA fabric and/or Inventory with config clearing)
State Transition Operations
Section titled “State Transition Operations”Provisioning Operations
Section titled “Provisioning Operations”- Provision non-fabric devices: Apply standard network configuration
- Provision fabric devices: Apply SDA fabric configuration and assign fabric roles
- Both operations move devices from INIT, ASSIGN or PNP states to PROVISION state
Unprovisioning Operations
Section titled “Unprovisioning Operations”- Standard Unprovisioning: Removes device from Inventory management with configuration clearing
- SDA Fabric Removal: Removes from both SDA fabric and Inventory with configuration clearing
Best Practices
Section titled “Best Practices”State Management
Section titled “State Management”- Use ASSIGN state for devices requiring site-specific preparation
- Use PNP state for zero-touch deployment scenarios
- Monitor devices in REPROVISION state for completion
Operational Considerations
Section titled “Operational Considerations”- Devices in PROVISION state should be monitored for compliance
- REPROVISION operations should be scheduled during maintenance windows
- Use proper unprovisioning procedures to avoid configuration conflicts
- Maintain device inventory accuracy across all states
Examples
Section titled “Examples”Example-1: SD-Access Border Router Device Configuration
This example demonstrates how to configure a border router device in Catalyst Center inventory with SD-Access fabric capabilities. Border routers serve as critical infrastructure components that connect the SD-Access fabric to external networks and provide advanced routing and policy enforcement functions.
The border router device configuration includes:
- Device name (BR01) for identification and inventory management
- Management IP address (192.168.10.1) for device communication and monitoring
- PROVISION state for active deployment and configuration management
- Border router role designation for network function
- Site assignment (Global/Canada) for geographic and organizational placement
- Fabric site association (Global/Canada) for SD-Access fabric membership
- Multiple fabric roles including BORDER_NODE for external connectivity and CONTROL_PLANE_NODE for fabric control plane operations
catalyst_center: inventory: devices: - name: BR01 fqdn_name: BR01.company.local device_ip: 192.168.10.1 state: PROVISION device_role: BORDER ROUTER site: Global/Canada fabric_site: Global/Canada fabric_roles: - BORDER_NODE - CONTROL_PLANE_NODEExample-2: Access Switch with Edge Node Functionality
This example shows how to configure an access layer switch with SD-Access edge node capabilities for endpoint connectivity and policy enforcement at the network edge.
catalyst_center: inventory: devices: - name: ACCESS-SW01 fqdn_name: ACCESS-SW01.company.local device_ip: 192.168.20.10 serial_number: FOC2644021A pid: C9300-24P state: PROVISION device_role: ACCESS site: Global/North America/Campus/Building A/Floor 1 fabric_site: Global/North America/Campus fabric_roles: - EDGE_NODE tags: - FLOOR1_DEVICES - EMPLOYEE_ACCESSExample-3: Plug-n-Play Functionality
This example shows how to configure a device to be onboarded into Catalyst Center inventory using plug and play.
Note : The below assumes that a day zero onboarding template named PNP_Template has already be provisioned using the data model. The PNP_Template during the PNP process, switches the device’s https source-interface to the device’s desired management interface IP address.
catalyst_center: inventory: devices: - name: PNP_DEVICE fqdn_name: PNP_DEVICE.cisco.eu device_ip: 192.158.142.20 serial_number: FAB12345602 pid: C9300-48P state: PNP device_role: BORDER ROUTER site: Global/Poland/Krakow/Bld A onboarding_template: name: PNP_Template variables: - name: device_host_name value: PNP_DEVICE - name: infra_vlan value: "100" - name: infra_vlan_network_add value: 181.1.1.90 - name: infra_vlan_network_mask value: 255.255.255.248 - name: loopback_0_IP value: 192.158.142.20 - name: loopback_0_mask value: 255.255.255.255 - name: Border_AS value: "65005" - name: peer_BGP_neigbor value: 181.1.1.89 - name: peer_AS value: "65002" - name: peer_interface value: GigabitEthernet1/0/1After the plug and play process is completed, the device state can be updated to PROVISION to enable full management and configuration capabilities within Catalyst Center.
catalyst_center: inventory: devices: - name: PNP_DEVICE fqdn_name: PNP_DEVICE.cisco.eu device_ip: 192.158.142.20 serial_number: FAB12345602 pid: C9300-48P state: PROVISION device_role: BORDER ROUTER site: Global/Poland/Krakow/Bld A