Monitoring OpenStack
This is an optional feature, disabled by default in the Instana backend. To enable this optional feature, see the page for your Instana deployment: SaaS, Self-Hosted Custom Edition (Kubernetes or Red Hat OpenShift Container Platform), or Self-Hosted Classic Edition (Docker)
Supported versions
OpenStack sensor is now supported as a platform with the following supported API versions:
- OpenStack Identity API v3
- OpenStack Compute API v2.1
Latest release supports two regions per OpenStack configuration at maximum.
Configuration
To connect to OpenStack, you need to configure the following fields in the agent configuration <agent_install_dir>/etc/instana/configuration.yaml
:
Note: Only remote monitoring is supported. You can have multiple OpenStacks configured as as follows:
#OpenStack
com.instana.plugin.ibmopenstack:
remote: # multiple configurations supported
- host: '' # hostname or IP of OpenStack
port: ''# port number to connect to OpenStack
user: '' # username to access the OpenStack
password: '' # password to access the OpenStack
project: ''# project to access the OpenStack
poll_rate: 15 # Poll rate in seconds. Minimum allowed and default value is 15 seconds.
Example:
com.instana.plugin.ibmopenstack:
remote: # multiple configurations supported
- host: 'host-1' # hostname or IP of OpenStack
port: '5000'# port number to connect to OpenStack
user: 'admin' # username to access the OpenStack
password: 'akw1N3dlbnNKZVdvaUd2S1RxbldCWQo' # password to access the OpenStack
project: 'admin' # project to access the OpenStack
poll_rate: 15 # Poll rate in seconds. Minimum allowed and default value is 15 seconds.
- host: 'host-2' # hostname or IP of OpenStack
port: '5000'# port number to connect to OpenStack
user: 'admin' # username to access the OpenStack
password: 'YWdlbnRfa2V5IC0+IGpMNTd3ZW5zSmV' # password to access the OpenStack
project: 'admin' # project to access the OpenStack
poll_rate: 15 # Poll rate in seconds. Minimum allowed and default value is 15 seconds.
Metrics collection
To view the metrics, select Platform in the sidebar of the Instana User interface, click an OpenStack menu item, select a specific region, and then you can see a details of that regions like hypervisors, compute serves, etc.
Hypervisors metrics
The following metrics are available for each hypervisors:
Metric | Description | Granularity |
---|---|---|
Name | The hypervisor host name. | 15 seconds |
ID | The hypervisor ID. | 15 seconds |
Host IP | The IP address of the host. | 15 seconds |
Type | The hypervisor type. | 15 seconds |
CPU Usage | The number of CPUs that is used. | 15 seconds |
Total CPU | The total number of available CPUs after considering the CPU allocation ratio. | 15 seconds |
Memory Usage | The amount of memory that is used. | 15 seconds |
Total Memory | The total memory that is available after the memory allocation ratio is considered. | 15 seconds |
Storage Usage | The amount of storage space that is used. | 15 seconds |
Total Storage | The total file system storage that is available after the disk allocation ratio is considered. | 15 seconds |
Instance Count | The count of running virtual machine instances of the Hypervisor. | 15 seconds |
Current Workload | The count of all the currently active hypervisor operations. | 15 seconds |
Status | The status of the hypervisor. One of enabled or disabled. | 15 seconds |
State | The state of the hypervisor. One of up or down. | 15 seconds |
The following KPIs are available for each hypervisors on their respective dashboards:
Metric | Description | Granularity |
---|---|---|
ID | The hypervisor ID. | 15 seconds |
CPU Architecture | The CPU arhitecture information. | 15 seconds |
CPU Model | The CPU model information. | 15 seconds |
CPU Vendor | The CPU vendor information. | 15 seconds |
CPU Core | Number of CPU cores. | 15 seconds |
State | The state of the hypervisor. One of up or down. | 15 seconds |
Host IP | The IP address of the hypervisor’s host. | 15 seconds |
Hypervisor Type | The hypervisor type. | 15 seconds |
Hypervisor Version | The hypervisor version. | 15 seconds |
The following time series graphs are provided for each hypervisors:
Metric | Description | Granularity |
---|---|---|
Used CPU | The number of CPUs that is used. | 15 seconds |
Available CPU | The maximum number of CPUs that are available after the CPU allocation ratio is considered. | 15 seconds |
Used Memory | The total memory that is used. | 15 seconds |
Available Memory | The total memory(RAM) that is available after the memory allocation ratio is considered. | 15 seconds |
Instance Count | The count of running virtual machine instances of the Hypervisor. | 15 seconds |
Used Storage | The storage space that is used. | 15 seconds |
Available Storage | The total storage space that is available after the disk allocation ratio is considered | 15 seconds |
Current Workload | The count of all the currently active hypervisor operations. | 15 seconds |
Compute server metrics
The following metrics are provided for each compute servers:
Metric | Description | Granularity |
---|---|---|
Name | The virtual machine instance display name. | 15 seconds |
Project | The tenant to which the virtual machine instance belongs. | 15 seconds |
Host | The host where the virtual machine instance is running. | 15 seconds |
Host IP | The virtual machine instance IP address. | 15 seconds |
CPU Usage | CPU utilization in percentage. | 15 seconds |
Total CPU | Total available CPU. | 15 seconds |
Memory Usage | Memory utilization in percentage. | 15 seconds |
Total Memory | Total available memory. | 15 seconds |
User | The user who created this virtual machine instance. | 15 seconds |
Flavor | The flavor that is referenced by virtual machine instance. | 15 seconds |
Availability Zone | Memory utilization in percentage. | 15 seconds |
Status | The current status of the virtual machine. | 15 seconds |
The following KPIs are provided for each compute servers on their respective dashboards:
Metric | Description | Granularity |
---|---|---|
ID | The UUID of the server. | 15 seconds |
Host Name | The host name of the server. | 15 seconds |
Availability Zone | The availability zone name. | 15 seconds |
Host IP | The virtual machine instance IP address. | 15 seconds |
Flavor Name | The flavor that is referenced by virtual machine instance. | 15 seconds |
Image Name | The image name. | 15 seconds |
The following time series graphs are provided for each compute servers:
Metric | Description | Granularity |
---|---|---|
CPU Usage | CPU utilization in percentage. | 15 seconds |
Memory Usage | Memory utilization in percentage. | 15 seconds |
Detail information about disks of the compute server :
Metric | Description | Granularity |
---|---|---|
Read Bytes | Disk reads in bytes. | 15 seconds |
Write Bytes | Disk writes in bytes. | 15 seconds |
Read Requests | Read requests. | 15 seconds |
Write Requests | Write requests. | 15 seconds |
Errors Count Bytes | Disk errors. | 15 seconds |
Other important information about compute server instance:
Metric | Description | Granularity |
---|---|---|
Driver | The driver on which the VM is running. | 15 seconds |
Hypervisor | The hypervisor on which the VM is running. | 15 seconds |
Hypervisor OS | The hypervisor OS. | 15 seconds |
Name | Name of the VM. | 15 seconds |
vNICs | The number of vNICs. | 15 seconds |
vCPUs | The number of vCPUs. | 15 seconds |
Detail information about CPUs of the compute server:
Metric | Description | Granularity |
---|---|---|
CPU ID | The ID of CPU. | 15 seconds |
CPU Utilization | CPU utilization in percentage. | 15 seconds |
Detail information about NICs of the compute server:
Metric | Description | Granularity |
---|---|---|
MAC | Mac address of the interface. | 15 seconds |
Received Errors | Received errors. | 15 seconds |
Received Packets | Received packets. | 15 seconds |
Received Packets Drop | Received packets dropped. | 15 seconds |
Received Rate (Bytes) | Received rate in bytes. | 15 seconds |
Transmitted Errors | Transmit errors. | 15 seconds |
Transmitted Packets | Transmit packets. | 15 seconds |
Transmitted Packets Drop | Transmit dropped packets. | 15 seconds |
Transmitted Rates (Bytes) | Transmit rate in bytes. | 15 seconds |
Flavors metrics
The flavors section displays the information about each flavor, such as its ID, name, configurations, etc.:
Metric | Description | Granularity |
---|---|---|
Flavor ID | The flavor ID. | 15 seconds |
Name | The flavor name. | 15 seconds |
vCPUs | The number of virtual CPUs that will be allocated to the server. | 15 seconds |
Memory (MiB) | The virtual machine instance IP address. | 15 seconds |
Root Disk (GiB) | CPU utilization in percentage. | 15 seconds |
Images metrics
The images section displays detail information about all images in the selected hypervisor in the region:
Metric | Description | Granularity |
---|---|---|
ID | The virtual machine instance display name. | 15 seconds |
Images Name | The ID of the Image. | 15 seconds |
Created | The date and time when the resource was created. | 15 seconds |
Updated | The date and time when the resource was updated. | 15 seconds |
Troubleshoot
-
Import a self-signed certificate to be used by OpenStack host server If OpenStack host server uses a self-signed certificate, make sure that it is imported into the JVM's cacert. Also, if you see the following exception in the log, it indicates that the OpenStack host server uses a self-signed certificate, and it needs to be imported into the JVM's cacert.
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target. PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.
Solution: Import a self-signed certificate by following the instructions from Self-Signed Certificate.
-
The self-signed certificate has a invalid SAN The server certificate is invalid if the SAN does not have the expected IP address.
Solution: Correct the server certificate, and import it again.
-
403 Forbidden The HTTP 403 Forbidden response status code indicates that the server understands the request but refuses to authorize it.
Solution: Verify the credentials that are provided in the
configuration.yaml
file with all the required permissions to the user.