About Device Packages
The Application Policy Infrastructure Controller (APIC) requires a device package to configure and monitor service devices. You add service functions to the APIC through the device package. A device package manages a single class of service devices and provides the APIC with information about the device and its capabilities. A device package is a zip file that contains the following parts:
Device specification |
An XML file that defines the following:
|
Device script |
A Python script that interacts with the device from the APIC. APIC events are mapped to function calls that are defined in the device script. A device package can contain multiple device scripts. A device script can interface with the device by using REST, SSH, or any similar mechanism. |
Function profile |
Function parameters with default values that are specified by the vendor. You can configure a function to use these default values. |
Device-level configuration parameters |
A configuration file that specifies parameters that are required by a device. This configuration can be shared by one or more graphs using a device. |
You can create a device package or it can be provided by a device vendor or Cisco.
The following figure illustrates the interaction of a device package and the APIC:
The functions in a device script are classified into the following categories:
-
Device/Infrastructure—For device level configuration and monitoring
-
Service Events—For configuring functions, such as a server load balancer or Secure Sockets Layer, on the device
-
Endpoint/Network Events—For handling endpoint and network attach/detach events
The APIC uses the device configuration model that is provided in the device package to pass the appropriate configuration to the device scripts. The device script handlers interface with the device using its REST or CLI interface.
The device package enables an administrator to automate the management of the following services:
-
Device attachment and detachment
-
Endpoint attachment and detachment
-
Service graph rendering
-
Health monitoring
-
Alarms, notifications, and logging
-
Counters
For more information about device packages and how to develop a device package, see Cisco APIC Layer 4 to Layer 7 Device Package Development Guide