| Ceilometer | 
On every MongoDB node, run: # service mongodb status
# netstat -nltp | grep mongo
The output of the netstat command returns the
management and local IP addresses and ports in the
LISTENstatus.On every controller node, run: # service ceilometer-agent-central status
# service ceilometer-api status
# service ceilometer-agent-notification status
# service ceilometer-collector status
On every compute node, run: # service ceilometer-polling status
On any controller node, run pcs status | grep ceilometer
or crm status | grep ceilometer to verify which node is
currently handling requests and their status. The output should
contain the node ID and the Startedstatus. | 
| Cinder | 
On every controller node, run: # service cinder-api status
# service cinder-scheduler status
On every node with the Cinder role, run: # service cinder-volume status
# service cinder-backup status
 | 
| Corosync/Pacemaker | On every controller node: 
Run service corosync status and
service pacemaker status.Verify the output of the pcs status or
crm status command. The Onlinefield should contain
all the controllers’ host names.Verify the output of the pcs resource show or
crm resource show command. All resources should be
Started. | 
| Glance | On every controller node, run: # service glance-api status
# service glance-registry status
 | 
| Heat | 
On any controller node, verify the status of Heat engines: # source openrc
# heat service-list
The output should contain the table with a list of the Heat engines
for all controller nodes in the upstatus.On every controller node, run: # service heat-api status
# service heat-api-cfn status
# service heat-api-cloudwatch status
# service heat-engine status
 | 
| Horizon | Since the Horizon service is available through the Apache server,
you should verify the Apache service status as well. Complete the
following steps on all controller nodes: 
Verify whether the Apache service is running using the
service apache2 status command.Verify whether the Horizon ports are opened and listening using the
netstat -nltp | egrep ':80|:443' command. The output
should contain the management and local IP addresses with either
port 80 or 443 in the LISTENstatus. | 
| Ironic | 
On every controller node, run service ironic-api status.On every Ironic node, run service ironic-conductor status.On any controller node, run pcs status | grep ironic.
The output should contain the name or ID of the node where the
p_nova_compute_ironicresource is running. | 
| Keystone | Since the Keystone service is available through the Apache server,
you should verify the Apache service status as well. Complete the
following steps on all controller nodes (and the nodes with the
Keystone role if any): 
Verify whether the Apache service is running using
service apache2 status.Verify whether the Keystone ports are opened and listening using
netstat -nltp | egrep '5000|35357'. The output should
contain the management and local IP addresses with the ports 5000
and 35357 in the LISTENstatus. | 
| MySQL/Galera | On any controller node: 
Verify the output of the pcs status|grep -A1 clone_p_mysql
or crm status|grep -A1 clone_p_mysql command. The resource
clone_p_mysqldshould be in theStartedstatus for all
controllers.Verify the output of the
mysql -e "show status" | egrep 'wsrep_(local_state|incoming_address)'
command. The wsrep_local_state_commentvariable should beSynced, thewsrep_incoming_addressfield should contain all
IP addresses of the controller nodes (in the management network). | 
| Neutron | 
On every compute node, run: # service neutron-openvswitch-agent status
On every controller node: 
Verify the neutron-serverservice status: # service neutron-server status
Verify the statuses of the Neutron agents: # service neutron-metadata-agent status
# service neutron-dhcp-agent status
# service neutron-l3-agent status
# service neutron-openvswitch-agent status
On any controller node: 
Verify the states of the Neutron agents: # source openrc
# neutron agent-list
The output table should list all the Neutron agents with the
:-)value in thealivecolumn and theTruevalue in
theadmin_state_upcolumn.Verify the Corosync/Pacemaker status: # pcs status | grep -A2 neutron
The output should contain the Neutron resources in the Startedstatus for all controller nodes. | 
| Nova |  | 
| RabbitMQ | 
On any controller node, run rabbitmqctl cluster_status. In the output, the running_nodesfield should contain all the
controllers’ host names in therabbit@<HOSTNAME>format. Thepartitionsfield should be empty. | 
| Swift |  |