Pushing Prime Performance Manager Data to Other Applications
Although Prime Performance Manager is designed to get data from devices and display that data in a variety of ways, you can push Prime Performance Manager data to certain applications including Graphite, Apache Kafka, and OpenStack ceilometers. Procedures for pushing data to these applications are provided in the following topics:
Pushing Data to Graphite
Graphite is an open-source tool that monitors and graphs computer performance. It stores numeric time-series data and displays data graphs on demand. To display Prime Performance Manager data in Graphite, you push the data to Carbon, twisted daemon Graphite component that listens for time-series data. For information about configuring Carbon, see the Graphite user documentation at: http://graphite.readthedocs.org/en/latest/.
Note Prime Performance Manager only pushes numeric data to Graphite. Non-numeric data, such as string value report data, is ignored.
To push Prime Performance Manager data to Carbon:
Step 1 Log into the Prime Performance Manager as the root user. See Logging In as the Root User.
Step 2 Verify that devices are imported into Prime Performance Manager and reports are being generated successfully.
Step 3 From the Administration menu, choose NB Push Editor.
Step 4 In the NB Push Editor window, click the Add a New North Bound Destination tool.
Step 5 In the Destination Server area, enter the following:
- Name—Enter a unique name for the northbound destination entry.
- Enabled—If checked, data is pushed to Carbon after the entry is created.
- Queue Size—The maximum number of messages in the push queue. The default is 10000.
- Reconnect Interval—After a disconnect, the time to wait before attempting a reconnect. The default is 60000 milliseconds.
- Type—Choose CARBON.
- Server Name or IP Address—Enter the Graphite server name or IP address.
- Port—Enter the Graphite port to be used to push data to Carbon.
- Maximum Datapoints Per Message—Sets the maximum number of datapoints per message. In Graphite, a datapoint is a value stored at a timestamp bucket.
- Base Folder—Enter the folder Prime Performance Manager should use to push data to Carbon. In Graphite calls this a naming hierarchy, which is a path with components delimited by dots, for example, [ DeviceName].[ TableName ].[ KeyNames ].[ KPIName ].[ Interval ].
Step 6 On the Destination Server toolbar, click Save Destination Server.
The new northbound server entry is added to the NB Push Editor navigation tree with two items:
- Web Reports—Allows you to define the push data using the report categories displayed in Performance > Reports.
- DB Summary—Allows you to define the data to push using the actual Prime Performance Manager database tables, not the virtual tables Prime Performance Manager creates for report data. For more information, see Overview to Database Summary Tables.
Step 7 In the NB Push Editor tree, choose either Web Reports or DB Summary.
Step 8 Complete the following parameters:
- Enabled—Check if you want to enable the data options chosen for Web Reports or DB Summary. The option allows you to turn the Web Reports or DB Summary options on and off separately.
- Enable All Reports—Enables all report or database summary data items down to the lowest level.
- Tenant—Sets the type of tenant data to push:
– Raw—Push non-tenant data only.
– Tenant—Push tenant data only.
– Both—Push both tenant and non-tenant data.
- Available Intervals—Choose one or more report intervals:
– 1 Minute
– 5 Minute
– 15 Minute
– Hourly
– Daily
– Weekly
– Monthly
Note Only enabled intervals are shown. If an interval you want to use is not shown, from the Performance menu choose Reports > Report/Group Settings and enable it.
Step 9 Complete one of the following:
- If you selected Web Reports, choose the categories containing the reports you want to push, or click Select All if you want all categories selected.
- If you selected Database Summary Tables, choose the tables containing the data you want to push.
Tip You can also click Selection Dialog and choose report categories or database tables in the dialog.
Step 10 After making your selections, click either Save Web Report Settings or Save DB Summary Settings to save your entries.
The saved entry items appear in the NB Push Editor navigation tree. Entries with lower level report or database entries will have an small arrow on the left that you can click to display lower-level entries.
Step 11 On the navigation tree, expand the new entry and select an item under it. New report or data categories or items appear in the display area.
Step 12 In the display area, choose the categories or data items you want included in the push data.
Step 13 Click either Save Web Report Settings or Save DB Summary Settings to save your entries.
Step 14 Repeat Steps 11 through 13 until you reach the end of the report or summary table tree.
If needed, you can select items up and down the navigation tree to refine your category or data choices.
Note Always click Save Web Report Settings or Save DB Summary Settings before you move to a new navigation tree item.
Step 15 After you finish your data selections, if you enabled Prime Performance Manager to push the data, you can perform one or both of the following to verify Carbon is receiving it:
- You can go to the Graphite Carbon console to watch the data.
- You can go to the Prime Performance Manager console and watch for messages such as:
15631 | 2015/06/04 21:40:37 | Info | sgmProcessManager.crdc-b200-vm152.14dbec69e6b | Thread-48 | None | Push to Carbon Status: Time: 2015/06/04 21:35:00; TotRec: 286000; AvgLen: 1216; TotKPI: 10115.0; KPIThr: 266184.2105263158; QSize: 1989 | 1433425237 | null | null
Where,
– TotRec is the total number of records pushed.
– AvgLen is the average record length.
– TotKPI is the total number of KPIs pushed since last time.
– KPIThr is the KPI throughput.
– QSize is current number of records in the Prime Performance Manager queue
By default, this message is printed every five minutes.
Pushing Data to Apache Kafka
Apache Kafka is a distributed, partitioned, replicated, publish-subscribe commit log service. It provides the functionality of a messaging system, but with a unique design. A single Kafka broker can handle hundreds of megabytes of reads and writes per second from thousands of clients. For information about configuring Kafka, see the Apache Kafka user documentation at: http://kafka.apache.org/.
To display Prime Performance Manager data in Kafka:
Step 1 Log into the Prime Performance Manager as the root user. See Logging In as the Root User.
Step 2 Verify that devices are imported into Prime Performance Manager and reports are being generated successfully.
Step 3 From the Administration menu, choose NB Push Editor.
Step 4 In the NB Push Editor window, click the Add a New North Bound Destination tool.
Step 5 In the Destination Server area, enter the following:
- Name—Enter a unique name for the northbound destination entry.
- Enabled—Check if you want the report data pushed to Kafka after it is created.
- Queue Size—The maximum number of messages in the push queue. The default is 10000.
- Reconnect Interval—If a disconnect occurs, the interval that a reconnect attempt is made. The default is 60000 milliseconds.
- Type—Choose KAFKA.
- Compression—Choose the data compression method:
– None—No data compression is used.
– GZIP—GNU zip (gzip) compression is used.
– SNAPPY—Snappy compression is used.
- Metadata Push Frequency—The metadata push frequency:
– NONE—Metadata is not pushed.
– ONCE—Metadata is pushed once.
– ALWAYS—Metadata is always pushed.
- Serializer Class—(serializer.class) The serializer class used at the Kafka producer Prime Performance Manager configuration.
- Event ID—Is used only by the Cisco Cloud Service and is the Kafka producer ID. In this case, it is the Prime Performance Manager ID, which is 1001.
- Batch Size—(batch.size) The number of messages batched at the Kafka producer before being displatched to the event.handlere. The default is 200.
- Topic—The Kafka topic to which Prime Performance Manager data is pushed.
- ZooKeeper Connections—(zookeeper.connect) Is not used in this release.
Step 6 On the Destination Server toolbar, click Save Destination Server.
The new northbound server entry is added to the DB Push Editor navigation tree with two items:
- Web Reports—Allows you to define the push data using the report categories displayed in Performance > Reports.
- DB Summary—Allows you to define the data to push using the actual Prime Performance Manager database tables, not the virtual tables Prime Performance Manager creates for report data. For more information, see Overview to Database Summary Tables.
Step 7 In the NB Push Editor tree, choose either Web Reports or DB Summary.
Step 8 Complete the following parameters:
- Enabled—Check if you want to enable the data options chosen for Web Reports or DB Summary. The option allows you to turn the Web Reports or DB Summary options on and off separately.
- Enable All Reports—Enables all report or database summary data items down to the lowest level.
- Tenant—Sets the type of tenant data to push:
– Raw—Push non-tenant data only.
– Tenant—Push tenant data only.
– Both—Push both tenant and non-tenant data.
- Available Intervals—Choose one or more report intervals:
– 1 Minute
– 5 Minute
– 15 Minute
– Hourly
– Daily
– Weekly
– Monthly
Note Only enabled intervals are shown. If an interval you want to use is not shown, from the Performance menu choose Reports > Report/Group Settings and enable it.
Step 9 Complete one of the following:
- If you selected Web Reports, choose the categories containing the reports you want to push, or click Select All if you want all categories selected.
- If you selected Database Summary Tables, choose the tables containing the data you want to push.
Tip You can also click Selection Dialog and choose report categories or database tables in the dialog.
Step 10 After making your selections, click either Save Web Report Settings or Save DB Summary Settings to save your entries.
The saved entry items appear in the NB Push Editor navigation tree. Entries with lower level report or database entries will have an small arrow on the left that you can click to display lower-level entries.
Step 11 On the navigation tree, expand the new entry and select an item under it. New report or data categories or items appear in the display area.
Step 12 In the display area, choose the categories or data items you want included in the push data.
Step 13 Click either Save Web Report Settings or Save DB Summary Settings to save your entries.
Step 14 Repeat Steps 11 through 13 until you reach the end of the report or summary table tree.
If needed, you can select items up and down the navigation tree to refine your category or data choices.
Note Always click Save Web Report Settings or Save DB Summary Settings before you move to a new navigation tree item.
Step 15 After you finish your data selections, if you enabled Prime Performance Manager to push the data, you can perform one or both of the following to verify Carbon is receiving it:
- You can go to the Kafka console to watch the data.
- You can go to the Prime Performance Manager console and watch for messages such as:
15631 | 2015/06/04 21:40:37 | Info | sgmProcessManager.crdc-b200-vm152.14dbec69e6b | Thread-48 | None | Push to Kafka Status: Time: 2015/06/04 21:35:00; TotRec: 286000; AvgLen: 1216; TotKPI: 10115.0; KPIThr: 266184.2105263158; QSize: 1989 | 1433425237 | null | null
Where,
– TotRec is the total number of records pushed.
– AvgLen is the average record length.
– TotKPI is the total number of KPIs pushed since last time.
– KPIThr is the KPI throughput.
– QSize is current number of records in the Prime Performance Manager queue
By default, this message is printed every five minutes.
Pushing Data to OpenStack Ceilometers
Prime Performance Manager can monitor OpenStack virtual machines (VMs) through different paths and therefore retrieve some VM data not available in OpenStack Ceilometers. For example, Prime Performance Manager can get the availability percentage of each OpenStack VM. By pushing this data to the OpenStack Ceilometers, OpenStack users will see the new meter created and supported by Prime Performance Manager in the Ceilometer. For information about configuring OpenStack Ceilometers, see the OpenStack developer documentation at: http://docs.openstack.org/developer/ceilometer/.
To display Prime Performance Manager data in OpenStack Ceilometers:
Step 1 Log into the Prime Performance Manager as the root user. See Logging In as the Root User.
Step 2 Verify that devices are imported into Prime Performance Manager and reports are being generated successfully.
Step 3 From the Administration menu, choose NB Push Editor.
Step 4 In the NB Push Editor window, click the Add a New North Bound Destination tool.
Step 5 In the Destination Server area, enter the following:
- Name—Enter a unique name for the northbound destination entry.
- Enabled—Check if you want the report data pushed to the Ceilometer after it is created.
- Queue Size—The maximum number of messages in the push queue. The default is 10000.
- Reconnect Interval—If a disconnect occurs, the interval that a reconnect attempt is made. The default is 60000 milliseconds.
- Type—Choose CEILOMETER.
- Server Name or IP Address—Enter the Ceilometer server name or IP address.
- Port—Enter the Ceilomeeter port.
- Protocol—Choose the Ceilometer protocol.
Step 6 On the Destination Server toolbar, click Save Destination Server.
The new northbound server entry is added to the DB Push Editor navigation tree with two items:
- Web Reports—Allows you to define the push data using the report categories displayed in Performance > Reports.
- DB Summary—Allows you to define the data to push using the actual Prime Performance Manager database tables, not the virtual tables Prime Performance Manager creates for report data. For more information, see Overview to Database Summary Tables.
Step 7 In the NB Push Editor tree, choose either Web Reports or DB Summary.
Step 8 Complete the following parameters:
- Enabled—Check if you want to enable the data options chosen for Web Reports or DB Summary. The option allows you to turn the Web Reports or DB Summary options on and off separately.
- Enable All Reports—Enables all report or database summary data items down to the lowest level.
- Tenant—Sets the type of tenant data to push:
– Raw—Push non-tenant data only.
– Tenant—Push tenant data only.
– Both—Push both tenant and non-tenant data.
- Available Intervals—Choose one or more report intervals:
– 5 Minute
– 15 Minute
– Hourly
– Daily
– Weekly
– Monthly
Step 9 Complete one of the following:
- If you selected Web Reports, choose the categories containing the reports you want to push, or click Select All if you want all categories selected.
- If you selected Database Summary Tables, choose the tables containing the data you want to push.
Tip You can also click Selection Dialog and choose report categories or database tables in the dialog.
Step 10 After making your selections, click either Save Web Report Settings or Save DB Summary Settings to save your entries.
The saved entry items appear in the NB Push Editor navigation tree. Entries with lower level report or database entries will have an small arrow on the left that you can click to display lower-level entries.
Step 11 On the navigation tree, expand the new entry and select an item under it. New report or data categories or items appear in the display area.
Step 12 In the display area, choose the categories or data items you want included in the push data.
Step 13 Click either Save Web Report Settings or Save DB Summary Settings to save your entries.
Step 14 Repeat Steps 11 through 13 until you reach the end of the report or summary table tree.
If needed, you can select items up and down the navigation tree to refine your category or data choices.
Note Always click Save Web Report Settings or Save DB Summary Settings before you move to a new navigation tree item.
Step 15 After you finish your data selections, if you enabled Prime Performance Manager to push the data, you can perform one or both of the following to verify Carbon is receiving it:
- You can go to the OpenStack Ceilometer console to watch the data.
- You can go to the Prime Performance Manager console and watch for messages such as:
15631 | 2015/06/04 21:40:37 | Info | sgmProcessManager.crdc-b200-vm152.14dbec69e6b | Thread-48 | None | Push to OpenStack Ceilometer Status: Time: 2015/06/04 21:35:00; TotRec: 286000; AvgLen: 1216; TotKPI: 10115.0; KPIThr: 266184.2105263158; QSize: 1989 | 1433425237 | null | null
Where,
– TotRec is the total number of records pushed.
– AvgLen is the average record length.
– TotKPI is the total number of KPIs pushed since last time.
– KPIThr is the KPI throughput.
– QSize is current number of records in the Prime Performance Manager queue
By default, this message is printed every five minutes.
Overview to Database Summary Tables
You can push Prime Performance Manager data to northbound applications using two options: Web Reports and DB Summary. Web reports displays data in the report categories displayed when you choose Reports from the Performance menu. The DB Summary option refers to the processdbsummary report parameter and defines the Prime Performance Manager raw to push northbound. Use of this option requires an understanding of the Prime Performance Manager architecture described in the Cisco Prime Performance Manager 1.7 Integration Developer Guide.
DB Summary folder parameters define the next level of parameters and identify the processdbsummary defnition (database table). The folder hierarchy for a processdbsummary is single level and is used only to identify the database table of interest. The data is raw Prime Performance Manager data after processing by the polldefinition and processpollresults functions and not the data as collected directly from devices/objects.
The Prime Performance Manager report XML files provide some database summary details and definitions, for example, here is the report XML file for (/opt/CSCOppm-gw/etc/pollers/system/hypervisorESXi.xml):
ESXiVMAvailabilityTable = hypervisorPoll("ListVMAvailability",
vmAvailabilityPer = numOfActiveDomains / totalOfDomains;
<ProcessDBSummary name="ESXiVMAvailability"
baseTableName="ESXiVMAvailability"
maxEntriesPerId="1000000" maxEntriesPerInterval="1000000">
<Var name="NumOfActiveDomains" type="Integer">numOfActiveDomains</Var>
<Var name="NumOfInActiveDomains" type="Integer">numOfInActiveDomains</Var>
<Var name="TotalOfDomains" type="Integer">totalOfDomains</Var>
<Var name="VMAvailabilityPer" type="Float">vmAvailabilityPer</Var>
For more information, see the Cisco Prime Performance Manager 1.7 Integration Developer Guide