You can show basic statistics on resource usage for hosts and instances.
Note
For more sophisticated monitoring, see the Ceilometer project. You can also use tools, such as Ganglia or Graphite, to gather more detailed data.
The following examples show the host usage statistics for a host called
devstack.
List the hosts and the nova-related services that run on them:
$ openstack host list
+-----------+-------------+----------+
| Host Name | Service | Zone |
+-----------+-------------+----------+
| devstack | conductor | internal |
| devstack | compute | nova |
| devstack | network | internal |
| devstack | scheduler | internal |
| devstack | consoleauth | internal |
+-----------+-------------+----------+
Get a summary of resource usage of all of the instances running on the host:
$ openstack host show devstack
+----------+----------------------------------+-----+-----------+---------+
| Host | Project | CPU | MEMORY MB | DISK GB |
+----------+----------------------------------+-----+-----------+---------+
| devstack | (total) | 2 | 4003 | 157 |
| devstack | (used_now) | 3 | 5120 | 40 |
| devstack | (used_max) | 3 | 4608 | 40 |
| devstack | b70d90d65e464582b6b2161cf3603ced | 1 | 512 | 0 |
| devstack | 66265572db174a7aa66eba661f58eb9e | 2 | 4096 | 40 |
+----------+----------------------------------+-----+-----------+---------+
The CPU column shows the sum of the virtual CPUs for instances running on
the host.
The MEMORY MB column shows the sum of the memory (in MB) allocated to the
instances that run on the host.
The DISK GB column shows the sum of the root and ephemeral disk sizes (in
GB) of the instances that run on the host.
The row that has the value used_now in the PROJECT column shows the
sum of the resources allocated to the instances that run on the host, plus
the resources allocated to the host itself.
The row that has the value used_max in the PROJECT column shows the
sum of the resources allocated to the instances that run on the host.
Note
These values are computed by using information about the flavors of the instances that run on the hosts. This command does not query the CPU usage, memory usage, or hard disk usage of the physical host.
Get CPU, memory, I/O, and network statistics for an instance.
List instances:
$ openstack server list
+----------+----------------------+--------+------------------+--------+----------+
| ID | Name | Status | Networks | Image | Flavor |
+----------+----------------------+--------+------------------+--------+----------+
| 84c6e... | myCirrosServer | ACTIVE | private=10.0.0.3 | cirros | m1.tiny |
| 8a995... | myInstanceFromVolume | ACTIVE | private=10.0.0.4 | ubuntu | m1.small |
+----------+----------------------+--------+------------------+--------+----------+
Get diagnostic statistics:
Note
As of microversion v2.48, diagnostics information for all virt drivers will have a standard format as below. Before microversion 2.48, each hypervisor had its own format. For more details on diagnostics response message see server diagnostics api documentation.
$ nova diagnostics myCirrosServer
+----------------+------------------------------------------------------------------------+
| Property | Value |
+----------------+------------------------------------------------------------------------+
| config_drive | False |
| cpu_details | [] |
| disk_details | [{"read_requests": 887, "errors_count": -1, "read_bytes": 20273152, |
| | "write_requests": 89, "write_bytes": 303104}] |
| driver | libvirt |
| hypervisor | qemu |
| hypervisor_os | linux |
| memory_details | {"used": 0, "maximum": 0} |
| nic_details | [{"rx_packets": 9, "rx_drop": 0, "tx_octets": 1464, "tx_errors": 0, |
| | "mac_address": "fa:16:3e:fa:db:d3", "rx_octets": 958, "rx_rate": null, |
| | "rx_errors": 0, "tx_drop": 0, "tx_packets": 9, "tx_rate": null}] |
| num_cpus | 0 |
| num_disks | 1 |
| num_nics | 1 |
| state | running |
| uptime | 5528 |
+----------------+------------------------------------------------------------------------+
config_drive indicates if the config drive is supported on the
instance.
cpu_details contains a list of details per vCPU.
disk_details contains a list of details per disk.
driver indicates the current driver on which the VM is running.
hypervisor indicates the current hypervisor on which the VM is running.
nic_details contains a list of details per vNIC.
uptime is the amount of time in seconds that the VM has been running.
Diagnostics prior to v2.48:
$ nova diagnostics myCirrosServer
+---------------------------+--------+
| Property | Value |
+---------------------------+--------+
| memory | 524288 |
| memory-actual | 524288 |
| memory-rss | 6444 |
| tap1fec8fb8-7a_rx | 22137 |
| tap1fec8fb8-7a_rx_drop | 0 |
| tap1fec8fb8-7a_rx_errors | 0 |
| tap1fec8fb8-7a_rx_packets | 166 |
| tap1fec8fb8-7a_tx | 18032 |
| tap1fec8fb8-7a_tx_drop | 0 |
| tap1fec8fb8-7a_tx_errors | 0 |
| tap1fec8fb8-7a_tx_packets | 130 |
| vda_errors | -1 |
| vda_read | 2048 |
| vda_read_req | 2 |
| vda_write | 182272 |
| vda_write_req | 74 |
+---------------------------+--------+
Get summary statistics for each project:
$ openstack usage list
Usage from 2013-06-25 to 2013-07-24:
+---------+---------+--------------+-----------+---------------+
| Project | Servers | RAM MB-Hours | CPU Hours | Disk GB-Hours |
+---------+---------+--------------+-----------+---------------+
| demo | 1 | 344064.44 | 672.00 | 0.00 |
| stack | 3 | 671626.76 | 327.94 | 6558.86 |
+---------+---------+--------------+-----------+---------------+
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.