Table Of Contents
Configuring Online Diagnostics
Information About Online Diagnostics
Online Diagnostics Overview
Bootup Diagnostics
Runtime Diagnostics
On-Demand Diagnostics
High Availability
Virtualization Support
Licensing Requirements for Online Diagnostics
Prerequisites for Online Diagnostics
Guidelines and Limitations
Configuring Online Diagnostics
Setting the Bootup Diagnostic Level
Activating a Diagnostic Test
Setting a Diagnostic Test as Inactive
Starting or Stopping an On-Demand Diagnostic Test
Clearing Diagnostic Results
Simulating Diagnostic Results
Verifying Online Diagnostics Configuration
Online Diagnostic Example Configuration
Default Settings
Additional References
Related Documents
Standards
Configuring Online Diagnostics
This chapter describes how to configure the generic online diagnostics (GOLD) feature on the device.
This chapter includes the following sections:
•
Information About Online Diagnostics
•
Licensing Requirements for Online Diagnostics
•
Prerequisites for Online Diagnostics
•
Configuring Online Diagnostics
•
Verifying Online Diagnostics Configuration
•
Default Settings
•
Additional References
Note
For complete syntax and usage information for the commands in this chapter, see the
Cisco Nexus 7000 Series NX-OS System Management Command Reference, Release 4.0.
Information About Online Diagnostics
Online diagnostics help you verify that hardware and internal data paths are operating as designed by continuously monitoring your system. This feature allows you to rapidly isolate faults.
This section includes the following topics:
•
Online Diagnostics Overview
•
Bootup Diagnostics
•
Runtime Diagnostics
•
On-Demand Diagnostics
•
High Availability
•
Virtualization Support
Online Diagnostics Overview
With online diagnostics, you can test and verify the hardware functionality of the device while the device is connected to a live network.
The online diagnostics contain tests that check different hardware components and verify the data path and control signals. Disruptive online diagnostic tests, such as the disruptive loopback test, and nondisruptive online diagnostic tests, such as ASIC register check, run during bootup, line module online insertion and removal (OIR), and system reset. The nondisruptive online diagnostic tests run as part of background health monitoring. You can run these tests on demand.
Online diagnostics are categorized as bootup, runtime or health-monitoring diagnostics, and on-demand diagnostics. Bootup diagnostics run during bootup, health-monitoring tests run in the background, and on-demand diagnostics run once or at user-designated intervals when the device is connected to a live network.
Bootup Diagnostics
Bootup diagnostics detect faulty hardware before Cisco NX-OS brings a module online. For example, if you insert a faulty module in the device, bootup diagnostics test the module and take it offline before the device uses the module to forward traffic.
Bootup diagnostics also check the connectivity between the supervisor and module hardware and the data and control paths for all the ASICs. Table 9-1 describes the bootup diagnostic tests for a supervisor.
Table 9-1 Bootup Diagnostics
Test ID
|
Diagnostic
|
Description
|
1
|
ManagementPortLoopback
|
Disruptive test, not an ondemand test
Tests loopback on the management port of a module.
|
2
|
EOBCPortLoopback
|
Disruptive test, not an ondemand test
Ethernet out of band
|
4
|
USB
|
Nondisruptive test
Checks the USB controller initialization on a module.
|
5
|
CryptoDevice
|
Nondisruptive test
Checks the Cisco Trusted Security (CTS) device initialization on a module.
|
Note
Modules run the EOBCPortLoopback diagnostic as a nondisruptive bootup test, using test ID 1.
Bootup diagnostics log failures to onboard failure logging (OBFL) and syslog and trigger an on/off LED display to indicate diagnostic test states (on, off, pass, or fail).
You can configure Cisco NX-OS to either bypass the bootup diagnostics or run the complete set of bootup diagnostics. See the "Setting the Bootup Diagnostic Level" section.
Runtime Diagnostics
Runtime diagnostics are also called health monitoring (HM) diagnostics. These diagnostics provide information about the health of a live device. They detect runtime hardware errors, memory errors, the degradation of hardware modules over time, software faults, and resource exhaustion.
Health monitoring diagnostics are nondisruptive and run in the background to ensure the health of a device that is processing live network traffic. You can enable or disable health monitoring tests or change their runtime interval. Table 9-2 describes the health monitoring diagnostics and test IDs for a supervisor.
Table 9-2 Health Monitoring Nondisruptive Diagnostics for a Supervisor
Test ID
|
Diagnostic
|
Default Interval
|
Default Setting
|
Description
|
3
|
ASICRegisterCheck
|
20 seconds
|
active
|
Checks read/write access to scratch registers for the ASICs on a module.
|
6
|
NVRAM
|
30 seconds
|
active
|
Verifies the sanity of the NVRAM blocks on a supervisor.
|
7
|
RealTimeClock
|
5 minutes
|
active
|
Verifies that the real-time clock on the supervisor is ticking.
|
8
|
PrimaryBootROM
|
30 minutes
|
active
|
Verifies the integrity of the primary boot device on the supervisor.
|
9
|
SecondaryBootROM
|
30 minutes
|
active
|
Verifies the integrity of the secondary boot device on the supervisor.
|
10
|
CompactFlash
|
30 minutes
|
active
|
Verifies access to the internal compact flash devices.
|
11
|
ExternalCompactFlash
|
30 minutes
|
active
|
Verifies access to the external compact flash devices.
|
12
|
PwrMgmtBus
|
30 seconds
|
active
|
Verifies the standby power management control bus.
|
13
|
SpineControlBus
|
30 seconds
|
active
|
Verifies the availability of the standby spine module control bus.
|
14
|
SystemMgmtBus
|
30 seconds
|
active
|
Verifies the availability of the standby system management bus.
|
Table 9-3 describes the health monitoring diagnostics for a module.
Table 9-3 Health Monitoring Nondisruptive Diagnostics for a Module
Test ID
|
Diagnostic
|
Default Interval
|
Default Setting
|
Description
|
2
|
ASICRegisterCheck
|
1 minute
|
active
|
Checks read/write access to scratch registers for the ASICs on a module.
|
3
|
PrimaryBootROM
|
30 minutes
|
active
|
Verifies the integrity of the primary boot device on a module.
|
4
|
SecondaryBootROM
|
30 minutes
|
active
|
Verifies the integrity of the secondary boot device on a module.
|
5
|
PortLoopback
|
15 minutes
|
inactive
|
Tests the packet path from the supervisor module to the physical port in ADMIN DOWN state on modules.
|
6
|
RewriteEngineLoopback
|
10 minutes
|
active
|
Tests nondisruptive loopback for all ports up to the Rewrite Engine ASIC device.
|
On-Demand Diagnostics
On-demand tests help localize faults and plan solutions. On-demand diagnostic tests are usually needed for one of the following situations:
•
To respond to an event that has occurred, such as isolating a fault.
•
In anticipation of an event that may occur, such as a resource exceeding its utilization limit.
You can run all the health monitoring tests on demand.
You can schedule on-demand diagnostics to run immediately. See the "Starting or Stopping an On-Demand Diagnostic Test" section for more information.
You can also modify the default interval for a health monitoring test. See the "Activating a Diagnostic Test" section for more information.
High Availability
A key part of high availability is detecting hardware failures and taking corrective action while the device runs in a live network. Online diagnostics in high availability detect hardware failures and provide feedback to high availability software components to make switchover decisions.
Cisco NX-OS supports stateless restarts for online diagnostics. After a reboot or supervisor switchover, Cisco NX-OS applies the running configuration.
Virtualization Support
Cisco NX-OS supports one instance of online diagnostics per virtual device context (VDC). By default, Cisco NX-OS places you in the default VDC. See the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 4.0.
Online diagnostics are virtual routing and forwarding (VRF) aware. You can configure online diagnostics to use a particular VRF to reach the online diagnostics SMTP server.
Licensing Requirements for Online Diagnostics
The following table shows the licensing requirements for this feature:
Product
|
License Requirement
|
NX-OS
|
Online diagnostics require no license. Any feature not included in a license package is bundled with the Cisco NX-OS system images and is provided at no extra charge to you. For a complete explanation of the NX-OS licensing scheme, see the Cisco NX-OS Licensing Guide.
|
Prerequisites for Online Diagnostics
Online diagnostics have the following prerequisite:
•
If you configure VDCs, install the Advanced Services license and go to the VDC that you want to configure. For more information, see the document, Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 4.0.
Guidelines and Limitations
You cannot run disruptive online diagnostic tests on demand.
Configuring Online Diagnostics
This section includes the following topics:
•
Setting the Bootup Diagnostic Level
•
Activating a Diagnostic Test
•
Starting or Stopping an On-Demand Diagnostic Test
Note
If you are familiar with the Cisco IOS CLI, be aware that the Cisco NX-OS commands for this feature might differ from the Cisco IOS commands.
Setting the Bootup Diagnostic Level
You can configure the bootup diagnostics to run the complete set of tests, or you can bypass all bootup diagnostic tests for a faster module bootup time.
Note
We recommend that you set the bootup online diagnostics level to complete. We do not recommend bypassing the bootup online diagnostics.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
SUMMARY STEPS
1.
config t
2.
diagnostic bootup level [complete | bypass]
3.
show diagnostic bootup level
4.
copy running-config startup-config
DETAILED STEPS
| |
Command
|
Purpose
|
Step 1
|
config t
Example:
switch# config t
switch(config)#
|
Enters global configuration mode.
|
Step 2
|
diagnostic bootup level [complete | bypass]
Example:
switch(config)# diagnostic bootup level complete
|
Configures the bootup diagnostic level to trigger diagnostics as follows when the device boots:
• complete:—Perform all bootup diagnostics. The default is complete.
• bypass—Do not perform any bootup diagnostics.
|
Step 3
|
show diagnostic bootup level
Example:
switch(config)# show diagnostic bootup level
|
(Optional) Displays the bootup diagnostic level (bypass or complete) that is currently in place on the device.
|
Step 4
|
copy running-config startup-config
Example:
switch(config)# copy running-config
startup-config
|
(Optional) Copies the running configuration to the startup configuration.
|
Activating a Diagnostic Test
You can set a diagnostic test as active and optionally modify the interval (in hours, minutes, and seconds) at which the test runs.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
SUMMARY STEPS
1.
config t
2.
diagnostic monitor interval module slot test [test-id | name | all] hour hour min minutes second sec
3.
diagnostic monitor module slot test [test-id | name | all]
4.
show diagnostic content module slot
DETAILED STEPS
| |
Command
|
Purpose
|
Step 1
|
config t
Example:
switch# config t
switch(config)#
|
Enters global configuration mode.
|
Step 2
|
diagnostic monitor interval module slot test
[test-id | name | all] hour hour min minutes
second sec
Example:
switch(config)# diagnostic monitor interval
module 6 test 3 hour 1 min 0 sec 0
|
(Optional) Configures the interval at which the specified test is run. If no interval is set, the test runs at the interval set previously, or the default interval.
The argument ranges are as follows:
• slot—The range is from 1 to 10.
• test-id—The range is from 1 to 14.
• name—Can be any case-sensitive alphanumeric string up to 32 characters.
• hour —The range is from 0 to 23 hours.
• minute—The range is from 0 to 59 minutes.
• second —The range is from 0 to 59 seconds.
|
Step 3
|
diagnostic monitor module slot test [test-id |
name | all]
Example:
switch(config)# diagnostic monitor interval
module 6 test 3
|
Activates the specified test.
The argument ranges are as follows:
• slot—The range is from 1 to 10.
• test-id—The range is from 1 to 14.
• name—Can be any case-sensitive alphanumeric string up to 32 characters.
|
Step 4
|
show diagnostic content module slot
Example:
switch(config)# show diagnostic content module 6
|
(Optional) Displays information about the diagnostics and their attributes.
|
Setting a Diagnostic Test as Inactive
You can set a diagnostic test as inactive. Inactive tests keep their current configuration but do not run at at the scheduled interval.
To set a diagnostic test as inactive, use the following command in global configuration mode:
Command
|
Purpose
|
no diagnostic monitor module slot test
[test-id | name | all]
Example:
switch(config)# no diagnostic monitor
interval module 6 test 3
|
Inactivates the specified test.
The argument ranges are as follows:
• slot—The range is from 1 to 10.
• test-id—The range is from 1 to 14.
• name—Can be any case-sensitive alphanumeric string up to 32 characters.
|
Starting or Stopping an On-Demand Diagnostic Test
You can start or stop an on-demand diagnostic test. You can optionally modify the number of iterations to repeat this test, and the action to take if the test fails.
We recommend that you only manually start a disruptive diagnostic test during a scheduled network maintenance time.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
SUMMARY STEPS
1.
diagnostic ondemand iteration number
2.
diagnostic ondemand action-on-failure {continue failure-count num-fails | stop}
3.
diagnostic start module slot test [test-id | name | all | non-disruptive] [port port-number | all]
4.
diagnostic stop module slot test [test-id | name | all]
5.
show diagnostic content module slot
DETAILED STEPS
| |
Command
|
Purpose
|
Step 1
|
diagnostic ondemand iteration number
Example:
switch# diagnostic ondemand iteration 5
|
(Optional) Configures the number of times the on-demand test runs. The range is from 1 to 999. The default is 1.
|
Step 2
|
diagnostic ondemand action-on-failure {continue
failure-count num-fails | stop}
Example:
switch# diagnostic ondemand action-on-failure
stop
|
(Optional) Configures the action to take if the on-demand test fails. The num-fails range is from 1 to 999. The default is 1.
|
Step 3
|
diagnostic start module slot test [test-id | name
| all | non-disruptive] [port port-number | all]
Example:
switch# diagnostic start module 6 test all
|
Starts one or more diagnostic tests on a module. The module slot range is from 1 to 10. The test-id range is from 1 to 14. The test name can be any case-sensitive alphanumeric string up to 32 characters. The port range is from 1 to 48.
|
Step 4
|
diagnostic stop module slot test [test-id | name
| all]
Example:
switch# diagnostic stop module 6 test all
|
Stops one or more diagnostic tests on a module. The module slot range is from 1 to 10. The test-id range is from 1 to 14. The test name can be any case-sensitive alphanumeric string up to 32 characters.
|
Step 5
|
show diagnostic status module slot
Example:
switch# show diagnostic status module 6
|
(Optional) Verifies that the diagnostic has been scheduled.
|
Clearing Diagnostic Results
You can clear diagnostic test results.
To clear the diagnostic test results, use the following command in any mode:
Command
|
Purpose
|
diagnostic clear result module [slot | all]
test {test-id | all}
Example:
switch# diagnostic clear result module 2
test all
|
Clears the test result for the specified test.
The argument ranges are as follows:
• slot—The range is from 1 to 10.
• test-id—The range is from 1 to 14.
|
Simulating Diagnostic Results
You can simulate a diagnostic test result.
To simulate a diagnostic test result, use the following command in any mode:
Command
|
Purpose
|
diagnostic test simulation module slot test
test-id {fail | random-fail | success}
[port number | all]
Example:
switch# diagnostic test simulation module 2
test 2 fail
|
Simulates a test result. The test-id range is from 1 to 14. The port range is from 1 to 48.
|
To clear the simulated diagnostic test result, use the following command in any mode:
Command
|
Purpose
|
diagnostic test simulation module slot test
test-id clear
Example:
switch# diagnostic test simulation module 2
test 2 clear
|
Clears the simulated test result. The test-id range is from 1 to 14.
|
Verifying Online Diagnostics Configuration
To display online diagnostics configuration information, perform one of the following tasks:
Command
|
Purpose
|
show diagnostic bootup level
|
Displays information about bootup diagnostics.
|
show diagnostic content module slot
|
Displays information about diagnostic test content for a module.
|
show diagnostic description module slot test [test-name | all]
|
Displays the diagnostic description.
|
show diagnostic ondemand setting
|
Displays information about ondemand diagnostics.
|
show diagnostic results module slot [test [test-name | all]] [detail]
|
Displays information about the results of a diagnostic.
|
show diagnostic simulation module slot
|
Displays information about a simulated diagnostic.
|
show diagnostic status module slot
|
Displays test status for all tests on a a module.
|
Online Diagnostic Example Configuration
This example starts all on-demand tests on module 6:
diagnostic start module 6 test all
This example activates test 2 and sets the test interval on module 6:
conf t
diagnostic monitor module 6 test 2
diagnostic monitor interval module 6 test 2 hour 3 min 30 sec 0
Default Settings
Table 9-4 lists the default settings for online diagnostics parameters.
Table 9-4 Default Online Diagnostics Parameters
Parameters
|
Default
|
Bootup diagnostics level
|
complete
|
Nondisruptive tests
|
active
|
Additional References
For additional information related to implementing online diagnostics, see the following sections:
•
Related Documents
•
Standards
Related Documents
Related Topic
|
Document Title
|
Online diagnostics CLI commands
|
Cisco Nexus 7000 Series NX-OS System Management Command Reference, Release 4.0
|
VDCs and VRFs
|
Cisco Nexus 7000 Series NX-OS Virtual Device Context Command Reference, Release 4.0
|
Standards
Standards
|
Title
|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
|
—
|