Monitor Commodity health

Table of Contents

Back to Top

Use the UI to monitor the health of the Commodity system

The ViPR Controller UI Health page displays information about the status of the Commodity system or ECS Appliance.

This article applies to EMC ViPR 2.0.


  1. From the Dashboard page, notice the status of the fabric is shown in the lower right corner.
  2. Select Commodity Nodes.
    The Commodity Nodes page displays the overall status of each node. A status other than GOOD indicates one or more components of the node has a BAD or SUSPECT status.
  3. Select a node name.
    The node page displays the node mode. Operational is normal and Maintenance indicates a node that has been put in maintenance mode and that it is not actively participating in the system. The status of each drive is listed. A SUSPECT drive is one the system will read from but not write to. A BAD drive is one that the system will not read from or write to. A BAD disk must be replaced. Once a disk has been labeled BAD, it cannot return to a lower status or be reused in the ViPR installation.
  4. Go to the System Health page and select a Commodity node. If a Commodity node is missing from this page, it indicates a serious problem.
    The status of memory, storage, and the services on the nodes are displayed.
  5. Use the Actions control to restart a service or interact with log information.
    Note the Restart Services feature is not enabled in this release.
Back to Top

Commodity health CLIs

Use the ViPR CLI to display health information about a Commodity system.

fabric health command

Displays the overall health of the fabric as GOOD, SUSPECT, or BAD. If hardware elements of the system are BAD or SUSPECT, then those details will be listed as well.

# ./viprcli fabric health { "node_count": 1, "status": "GOOD", "sw_version": "fabric-" }

fabricnode health command

Displays the health of the node as GOOD, SUSPECT, or BAD. If hardware elements of the node are BAD or SUSPECT, then those details will be listed as well.

# ./viprcli fabricnode health -node layton-cyan { "disk_count": 30, "mode": "OPERATIONAL", "service": [ { "name": "Object", "status": "INSTALLED" } ], "status": "GOOD" }

Back to Top

Commodity health REST APIs

Describes the REST APIs for returning Commodity health information.

Test the REST API in your browser

The easiest way to test the REST API is to point your browser towards the IP of your ViPR Controller. You will need to log in when you make the first call.

Here, a controller IP is provided along with the GET /vdc/fabric/health endpoint:

https://<controller_ip>:4443<rest_api_endpoint>/?using-cookies https://<controller_ip>:4443/vdc/fabric/health/?using-cookies

Fabric-level health REST API

Endpoint: GET /external/health

The fabric-level health REST API takes no parameters and returns an overall status of the Commodity storage system or ECS Appliance. The XML report also returns the IDs of any node that has a BAD or SUSPECT status or is in maintenance mode. You can then use the node-level health REST API to get details on the health of individual nodes.

The return body looks like this:

GET /external/health <fabric_health> <status>[GOOD|BAD|SUSPECT]</status> <sw_version>fabric-</sw_version> <node_count>X</node_count> <bad_nodes> <id>urn:fabric:node:1234-5678:</id> <id>urn:fabric:node:1111-2222:</id> </bad_nodes> <suspect_nodes> <id>urn:fabric:node:4455-6677:</id> <id>urn:fabric:node:8888-0000:</id> <suspect_nodes> <maintenance_mode_nodes> <id>urn:fabric:node:5678-0987:</id> </maintenance_mode_nodes> <fabric_health>

Test the call in your browser:


Node-level health REST API

Endpoint: GET /external/nodes/{node_id}/health

The node health REST API returns a report on:

The return body looks like this:

<node_health> <id>...</id> <link rel="self" href="..."/> <status>[GOOD|BAD|SUSPECT]<status> <mode>[OPERATIONAL|MAINTENANCE]</mode> <service> <name>object</name> <status>[INSTALLED|RUNNING|STOPPED|CRASHED]</status> </service> <service> <name>zookeeper</name> <status>[INSTALLED|RUNNING|STOPPED|CRASHED]</status> </service> <service> <name>block</name> <status>[INSTALLED|RUNNING|STOPPED|CRASHED]</status> </service> <disk_count>X</disk_count> <bad_disks> <id>urn:fabric:disk:1234-5678:</id> <id>urn:fabric:disk:9078-6754:</id> </bad_disks> <suspect_disks> <id>urn:fabric:disk:1111-3333:</id> </suspect_disks> <staging_disks> <id>urn:fabric:disk:7777-8888:</id> <id>urn:fabric:disk:5544-3322:</id> </staging_disks> <maintenance_mode_disks> <id>urn:fabric:disk:8888-7777:</id> </maintenance_mode_disks> </node_health>

To get a list of node IDs in your system call the fabric-level node list REST API.


Call the node health REST API on one of the returned node IDs