Overview
The CloudCenter platform allows you to define your own parameters or use the CloudCenter-supported parameters as identified in Parameters and Macros > Parameter Type. The webservice option is listed in the Parameter Type dropdown. If you configure this option, you must provide the Protocol (HTTP or HTTPS), Web Service URL, and the credentials (Username and Password) for the webservice. To do this, you can optionally launch an isolated Arcus server and configure the webservice to point to the Arcus server. Arcus is an API broker and translator.
While the CloudCenter platform provides the Arcus integration, it is up to the customer using this feature to address the following dependencies:
- Send requests to the device's API URL
- Call the correct device-specific webservice method
- Convert the webservice response to the format expected by CloudCenter
This document describes how to import device types and templates into Arcus and use it with Cisco CloudCenter. In this document we will use an integration with AVI Networks as an example. A list of device types and templates can be found at Arcus - Device Types and Templates
Device Types
The first step in this process is to import a Device Type. To import a device type follow these steps:
- Download the AVI Controller device type
- Log into your Arcus portal
- Click on Device Types in the left navigation and then the "Import from JSON" button
- Choose the file you download from the first step and click Submit
- The new device type will now show up in the list
Devices
Once the device type is uploaded, we need to create a device. Here will put in the information of the device such as IP, login user and password.
- Click on the Devices link on the left navigation pane
- Click on the New Device button located on the top right of the page
- Fill in the form as follows:
- Device Type: AVI Controller
- Name: <Name you want to give the Device>
- Base URL/IP: <URL of the AVI Controller or the device>
- SSL Validation: Check the box if required
- Device Account
- Username: <device username>
- Password: <device password>
- Blank password: Check the box if required
Templates
With the Device and Device Types created we will now create a template. The purpose of the template is to make specific API calls to the device and return the data to Cisco Cloud Center in the following format:
[{"name":"p1","displayName":"Param 1"},{"name":"p2","displayName":"Param 2"}]
- Click on the Templates link on the left navigation pane and then the "Import from JSON" button on the top right.
- Choose the downloaded JSON file for the template. In this case we are going to use the template to get the Health Monitors for the AVI Controllers
- Click on the View button to see the details of the template
Usage in Cisco CloudCenter
Now that we have all the components in Arcus we can now integrate it with CloudCenter. This integration will happen when we use the parameter of type "webservice". Before integrating with CloudCenter make sure to create an API Account in Arcus.
- Click on the Devices link on the left navigation pane
- For the device that was created, click on the View button
- You should not see the list of templates created for this device.
- Copy the URL of the template you want to use (10.x.x.x/devices/1/templates/16/results.c3)
- Log into your Cisco CloudCenter setup.
- We will use that URL when we create a web service parameter type either in the application profile or a service.
- Create a parameter of type webservice. Fill in the following info related to the webservice:
- Protocol: <choose HTTP or HTTPS>.
- Web Service URL: <Tempalte URL from Arcus>
- Username: <Arcus API User>
- Password: <Arcus API User Password>
- Once created this will invoke the template in Arcus which will interact with the AVI controller to pull down the list of health monitors and present to the user at the time of deployment