New and Changed Information

The following table provides an overview of the significant changes up to this current release. The table does not provide an exhaustive list of all changes or of the new features up to this release.

Release Version

Feature

Description

NDFC release 12.0.1

Initial release of this use case document.

Initial release of this use case document.

Understanding Programmable Reports

The Programmable Reports application allows you to generate reports using Python 2.7 scripts. Report jobs are run to generate reports. Each report job can generate multiple reports. You can schedule a report to run for a specific device or fabric. These reports are analyzed to obtain detailed information about the devices.

The report template type is used to support the Programmable Reports feature. This template has two template subtypes: UPGRADE and GENERIC. For more information on the report template, see the Report Template chapter in the Cisco NDFC-Fabric Controller Configuration Guide. A python SDK is provided to simplify report generation. This SDK is bundled with Nexus Dashboard Fabric Controller.

RBAC Support

  • An admin or a network operator can create a report.

  • A network operator can view reports created by other admins and operators.

  • A network operator cannot delete/edit/rerun any reports created by an admin and other network operators.

  • An admin can view and delete any report irrespective of the user creating them.

  • Due to fabric and device association, an admin cannot edit any report created by another user, including the network operator.


Note


A Jython template supports a maximum file size of 100k bytes. In case any report template exceeds this size, Jython execution may fail.


For more information on programmable reports, see the Programmable Reports chapter in the Cisco NDFC-Fabric Controller Configuration Guide.

Understanding Programmable Reports for Performance Monitoring

Prior to Nexus Dashboard Fabric Controller release 12.0(1), the Data Center Network Manager 11.x release provided support for several programmable reports, such as switch inventory, ISSU pre-upgrade and post-upgrade checks, fabric resources, and so on.

Beginning in NDFC release 12.0(1), a new programmable report for switch performance monitoring is now available. This type of report is applicable for LAN and SAN fabrics to monitor CPU, memory, traffic, and interface utilization. Programmable reports for switch performance monitoring can be enabled for a specific switch (at the device level), or at the per-fabric level with support for the following fabrics:

  • Easy_Fabric

  • Easy_Fabric_eBGP

  • External

  • LAN Classic

You can also use email as an out-of-band notification method to receive the reports externally using the periodic report generation. This allows you to receive periodic information about your data center fabric health, utilization, and performance state, and the statistics.

You can view information on the configured programmable reports for switch performance monitoring in the following areas:

  • Navigate to Dashboards > Overview, then locate the Reports area to display the latest reports across all report definitions, at both the fabric level and the device level.

  • Navigate to LAN > Fabrics, double-click on a fabric where you configured a programmable report, then locate the Reports area to display the latest report for that fabric across all report definitions. If the fabric is part of several definitions, then the Reports area will show the latest reports for this fabric across all definitions.

  • Navigate to LAN > Switches, double-click on a switch where you configured a programmable report, then locate the Reports area to display the latest report for that switch across all report definitions. If the switch is part of several definitions, then the Reports area will show the latest reports for this switch across all definitions.

Prerequisites

Complete the following prerequisites before enabling performance monitoring using programmable reports:

  • Enable the Performance Monitoring feature under the Fabric Controller feature persona:

    1. In NDFC, navigate to Settings > Feature Management.

      The Feature Management page is displayed.

    2. Click the Fabric Controller box, then click the box next to Performance Monitoring.

    3. Click Apply.

  • Enable the Performance Monitoring option at the fabric level:

    1. In NDFC, navigate to LAN > Fabrics.

      The LAN Fabrics page is displayed, with all of your configured fabrics listed.

    2. Double-click the fabric that you want to monitor.

      The Fabric Overview page for this fabric is displayed.

    3. Click Actions > Edit Fabric.

      The Edit Fabric page for this fabric is displayed.

    4. In the General Parameters tab, click the box under the Enable Performance Monitoring (For NX-OS Switches Only) option to enable this feature.

    5. Click Save.

  • If you want to enable email notifications, update the SMTP host information in the NDFC server settings:

    1. In NDFC, navigate to Settings > Server Settings.

      The Server Settings page is displayed.

    2. Click the SMTP tab.

    3. In the SMTP Host field, enter the SMTP IP address.

      The SMTP host must have IP connectivity with the Nexus Dashboard.

    4. In the From Email Address for Reports field, enter the source email address for the generated reports.

    5. Click Save.

See the Cisco NDFC-Fabric Controller Configuration Guide for more information on any of these tasks.

Guidelines and Limitations

Following are the guidelines and limitations for performance monitoring using programmable reports in Nexus Dashboard Fabric Controller:

  • Only NX-OS switches are supported for switch performance monitoring using programmable reports in Nexus Dashboard Fabric Controller.

Configure Programmable Reports

Before you begin

Complete all the tasks described in Prerequisites before proceeding with these procedures.

Procedure


Step 1

Navigate to Operations > Programmable Reports.

The Reports page is displayed, with any configured report definitions displayed.

Step 2

Click Create Report.

Step 3

In the Report Name field, enter a name for the report.

Step 4

Click the arrow next the Select a Template field, then select the report template that you want to use.

You have the following report templates to choose from:

  • Inventory_Report: Choose this report template to monitor the inventory for a specific fabric or a set of fabrics, such as the number of switches that you have in that fabric.

  • Performance_Report: Choose this report template to monitor the CPU, memory, traffic, or interface utilization for a fabric and all the switches within that fabric.

  • Switch_Performance_Report: Choose this report template to monitor CPU, memory, traffic, or interface utilization for a specific switch in a fabric.

  • fabric_cloudsec_oper_status: Choose this report template to monitor the operational status related to CloudSec. For example, if you enable a security mechanism using CloudSec on top of the external multi-site, then you can see the counters of the traffic that is going between the multi-site border gateways that is encrypted using CloudSec.

  • fabric_macsec_oper_status: Choose this report template to monitor the operational status related to MACsec encryption at the Layer 2 level.

  • fabric_nve_vni_counter: Choose this report template to collect the show nve vni counters command output for each VNI in the fabric. This is essentially the VXLAN NVE terminal interface. Whenever there is an encap/decap on a specific Nexus 9000 VTEP, it uses this report to capture the traffic that is coming on that NVE interface.

  • fabric_resources: Choose this report template to display information about resource usage for a specific fabric. It allows you to monitor the number of resources that you have in a given fabric. For example, you might use this report to determine how many IP subnet pools that you have for loopback 0 and loopback 1.

  • interface_policy_details: Choose this report template to display device information and interface details, such as interface descriptions. You can select a particular fabric or group of fabrics, and all devices across these fabrics will be shown under this report.

  • sfp_report: Choose this report to gather information about utilization of SFPs at a fabric and device level. Use this report template to determine the SFP that is attached to a port, the name of that SFP, and the speed of the transceiver.

  • switch_inventory: Choose this report to get a summary about the switch inventory.

Inventory_Report, Performance_Report, and Switch_Performance_Report report templates are used for performance management reports.

Step 5

Click Select to select the template.

You are returned to the Create Report page.

Step 6

(Optional) Edit the parameters in the report template page to customize the report.

The parameters that are available vary, depending on the type of report template you selected in the previous step. The following table provides additional information on the parameters that are available for each report template.

Note

 

The following report templates do not have editable parameters and are therefore not included in the following table:

  • fabric_cloudsec_oper_status

  • fabric_macsec_oper_status

  • fabric_nve_vni_counter

  • fabric_resources

  • sfp_report

  • switch_inventory

Parameters

Description

Inventory_Report

Include Modules

Determine if you want to include modules if they are associated with the switch. Choices:

  • true

  • false

Include Licenses

Determine if you want to include licenses if they are associated with the switch. Choices:

  • true

  • false

Performance_Report

Top records to Chart

Choose the number of top records to chart.

Max Number of Rows to show per Table

Choose the maximum number of rows to show per table.

Include CPU

Determine if you want to include CPU statistics in the performance report. Choices:

  • true

  • false

Include Memory

Determine if you want to include menory statistics in the performance report. Choices:

  • true

  • false

Include Links

Determine if you want to include links statistics in the performance report. Choices:

  • true

  • false

Include Other Ports

Determine if you want to include other ports statistics in the performance report. Choices:

  • true

  • false

Switch_Performance_Report

Include CPU

Determine if you want to include CPU statistics in the switch performance report. Choices:

  • true

  • false

Include Memory

Determine if you want to include menory statistics in the switch performance report. Choices:

  • true

  • false

Include Other Ports

Determine if you want to include other ports statistics in the switch performance report. Choices:

  • true

  • false

Top records to Chart

Choose the number of top records to chart.

interface_policy_details

Switch serialnumber

Enter the serial number for the switch.

Inteface name filter

Filter based on the interface name (for example, ethernet, port-channel, and so on). Regex is not supported.

Step 7

Click Next to move to the Source & Recurrence step.

Step 8

In the Recurrence field, choose the frequency at which the report job should be run.

The following table shows the options available and their description.

Available Option

Description

Now

The report is generated now.

Daily

The report is generated daily at a specified time between the Start Date and End Date that you provide.

Weekly

The report is generated once a week at a specified time between the Start Date and End Date that you provide.

Monthly

The report is generated once a month at a specified time between the Start Date and End Date that you provide.

Periodic

The report is generated periodically in a time period between the specified Start Date and End Date that you provide. The interval of time between the reports can be specified in minutes or hours.

Step 9

If you have email notifications enabled, in the Email Report To field, enter an email ID or mailer ID if you want the report in an email.

As described in Prerequisites, you must configure the SMTP settings in Settings > Server Settings > SMTP. If the data service IP address is in a private subnet, the static management route for the SMTP server must be added in the Cisco Nexus Dashboard cluster configuration.

Step 10

Select the fabrics or devices where you want to generate the performance monitoring report.

  • Certain reports are generated at the fabric level, such as the Inventory_Report and fabric_resources reports; for those reports, select the fabrics where you want to generate the performance monitoring report. You can select a single fabric or multiple fabrics in this area; any fabrics that you select will be captured in the generated report.

    Note that Multi-Fabric Domain fabric types are displayed in this page in the following manner:

    • The parent fabric for the Multi-Fabric Domain will be displayed as a single entry, with Multi-Fabric Domain shown as the entry in the Fabric Type column, such as MSD-Edge in the following figure. If you select a Multi-Fabric Domain type of fabric, both the parent and the child fabrics within that Multi-Fabric Domain will be captured in the generated report.

    • The child fabric for the Multi-Fabric Domain will be displayed as two entries separated by a slash (/), such as MSD-Edge / Edge-1 in the following figure, where the parent fabric is shown first and the child fabric is shown second, after the slash.

  • Other reports are generated at the device (switch) level, such as the Switch_Performance_Report and switch_inventory reports; for those reports, select the devices (switches) where you want to generate the performance monitoring report. You can select a single device or multiple devices in this area; any devices that you select will be captured in the generated report. Use the filter field to show only devices within a specific fabric to select all the devices in a specific fabric:

    Fabric == <fabric_name>

Step 11

Click Save.

You are returned to the main Reports page. A new report and report definitions are created and appear on the Report Definitions and Reports tabs, and the report that you just created begins to run in the background.

Step 12

Review the information provided in the Report Definitions tab.

The status for the new report shows as RUNNING in the Status column at first. Click the refresh icon or wait for a moment, then the status will change to SUCCESS.

You can also view other information on the new report in the Report Definitions tab, such as the report template used for each report, the user who generated the report, and the recurrence setting for each report.

Step 13

Click the Reports tab.

Information is provided for each programmable report that you configured, including the type of template used for each report, who created the report, and what the recurrence is for each report.

  • To download a report, click the box next to the report, then click Actions > Download.

  • To compare two reports, click the boxes next to the reports that you want to compare, then click Actions > Compare (2 Reports).

Step 14

In the Reports tab, double-click on the report that you just created.

The overview information for the report is displayed, with additional information provided under these two tabs:

  • Details: Provides detailed information on this programmable report, with additional details available in expandable areas that are specific to each type of programmable report.

    For example, specifically for an Inventory_Report programmable report, additional information is available underneath each of the following expandable areas:

    • Summary: Provides general overview information, such as the number of chassis (switches), what version of NX-OS operation system is running on each switch, and the roles that are assigned to each switch within the selected fabric.

    • Chassis: Provides information on the chassis (switches) within the selected fabric.

    • Modules: For modular switches, provides information on the modules in each chassis (switch) within the selected fabric.

    • Switch Licenses: Provides license information on each switch within the selected fabric.

    • NDFC Licenses: Provides NDFC license information for a selected fabric.

  • Commands: Provides information on executed commands, if available.

Step 15

If you enabled email notifications in Step 9, open the email that contains detailed information from the programmable report.

For example, if you enabled email notifications for a Performance_Report programmable report, the emailed report will show performance information for a particular fabric and the switches within that fabric, such as:

  • The top five CPUs in the last day

  • The top five memory and CPU utilization in the last day

  • The top five links and interfaces utilization in the last day

For this type of programmable report, in each area, you can click on multiple components within that area to get comparison information for those components, such as clicking on two links to compare information between those two links.


Example Use Case: Configure Programmable Report for Switch Performance Monitoring

This section provides an example use case based on the procedures provided in Configure Programmable Reports. In this example use case, you will be configuring a programmable report specifically for switch performance monitoring.

Before you begin

Complete all the tasks described in Prerequisites before proceeding with these procedures.

Procedure


Step 1

Navigate to Operations > Programmable Reports.

The Reports page is displayed, with any configured report definitions displayed.

Step 2

Click Create Report.

Step 3

In the Report Name field, enter a name for the programmable report.

For this example use case, we will use the name PM-VXLAN for this programmable report for switch performance monitoring.

Step 4

Click the arrow next the Select a Template field, then select Switch_Performance_Report.

You would choose this report template to monitor CPU, memory, traffic, or interface utilization for a specific switch in a fabric.

Step 5

Click Select to select the template.

You are returned to the Create Report page.

Step 6

(Optional) Edit the parameters in the report template page to customize the report.

Parameters

Description

Include CPU

Determine if you want to include CPU statistics in the switch performance report. Choices:

  • true

  • false

Include Memory

Determine if you want to include menory statistics in the switch performance report. Choices:

  • true

  • false

Include Other Ports

Determine if you want to include other ports statistics in the switch performance report. Choices:

  • true

  • false

Top records to Chart

Choose the number of top records to chart.

Step 7

Click Next to move to the Source & Recurrence step.

Step 8

In the Recurrence field, choose the frequency at which the report job should be run.

The following table shows the options available and their description.

Available Option

Description

Now

The report is generated now.

Daily

The report is generated daily at a specified time between the Start Date and End Date that you provide.

Weekly

The report is generated once a week at a specified time between the Start Date and End Date that you provide.

Monthly

The report is generated once a month at a specified time between the Start Date and End Date that you provide.

Periodic

The report is generated periodically in a time period between the specified Start Date and End Date that you provide. The interval of time between the reports can be specified in minutes or hours.

Step 9

If you have email notifications enabled, in the Email Report To field, enter an email ID or mailer ID if you want the report in an email.

As described in Prerequisites, you must configure the SMTP settings in Settings > Server Settings > SMTP. If the data service IP address is in a private subnet, the static management route for the SMTP server must be added in the Cisco Nexus Dashboard cluster configuration.

Step 10

Select the devices where you want to generate the performance monitoring report.

As described in Configure Programmable Reports, certain reports, such as the Switch_Performance_Report, are generated at the device (switch) level, so you will select the devices where you want to generate the performance monitoring report in this page. You can select a single device or multiple devices in this area; any devices that you select will be captured in the generated report.

You can also use the filter field to show only devices within a specific fabric to select all the devices in a specific fabric, as shown in the following figure.

Step 11

Click Save.

You are returned to the main Reports page. A new report and report definitions are created and appear on the Report Definitions and Reports tabs, and the report that you just created begins to run in the background.

Step 12

Review the information provided in the Report Definitions tab.

The status for the new report shows as RUNNING in the Status column at first. Click the refresh icon or wait for a moment, then the status will change to SUCCESS.

You can also view other information on the new report in the Report Definitions tab, such as the report template used for each report, the user who generated the report, and the recurrence setting for each report.

Step 13

Click the Reports tab, then double-click on the report that you just created.

The overview information for the report is displayed, with additional information provided under these two tabs:

  • Details

  • Commands

Step 14

Click the Details tab, if it's not selected by default already, and expand on any area to get more information on this report.

For example:

  • Expand the Summary line to get information on all of the fabric's switches from the CPU, memory, and traffic utilization points of view. Click on specific devices to get more information on those specific devices, or click on more than one device to compare information between those devices.

  • Expand the Performance-cpu line to get average and peak CPU performance information for the switches in the fabric.

  • Expand the Performance-memory line to get average and peak memory performance information for the switches in the fabric.

  • Expand the Links line to get link utilization information between devices, such as how a port on one switch is connected to a port on another switch, and the average transmit and receive time for the traffic between those ports. You can also see if there are any potential errors or discards between the links.

  • Expand the Performance-ethernet line to information about a switch's speeds and traffic utilization, and if there are any errors on a particular ethernet port.

Step 15

If you enabled email notifications in Step 9, open the email that contains the programmable report for switch performance monitoring.

The emailed report will show performance information for a particular fabric and the switches within that fabric, such as:

  • The top five CPUs in the last day

  • The top five memory and CPU utilization in the last day

  • The top five links and interfaces utilization in the last day

In each area, click on multiple components within that area to get comparison information for those components. For example, click on two links to compare information between those two links.