Entities, lookup information, and metrics for OpenStack API ETL
This topic provides information about the lookup details and mapping between the OpenStack metrics and the BMC Helix Continuous Optimization metrics.
Lookup information
The OpenStack API Extractor Service defines multiple lookup fields for coordinating with other connectors. The following table lists the sequence of field sets for strong lookup and weak lookup.
Entity type | Strong lookup fields | Weak lookup fields |
---|---|---|
Cloud - OpenStack | OPENSTACK_GUID | - |
Region - OpenStack | OPENSTACK_GUID | - |
Availability Zone - OpenStack | AZ_NAME&&PARENT_OS_GUID | - |
Host Aggregates - OpenStack | NAME&&PARENT_OS_GUID | - |
Virtual Host - KVM | HOSTNAME | NAME |
Virtual Host - VMware | HOSTNAME | NAME |
Virtual Cluster - VMware | NAME&&VMW_VMREF | NAME |
Virtual Machine - KVM | UUID | NAME |
Virtual Machine - VMware | HOSTNAME | NAME |
Tenant - OpenStack | OPENSTACK_GUID | - |
Metric mapping
The following table explains the mapping between the OpenStack metrics and the BMC Helix Continuous Optimization metrics.
Nova memory metrics are collected only for the current hour when the OpenStack - OpenStack API Extractor Service is run for the first time.
Cloud - OpenStack metrics
Metric | Source type | Source info | Description |
---|---|---|---|
CLOUD_NAME | NA | NA | Name of the cloud. If a user-defined name exists, that name is displayed. Otherwise, the default name is displayed which is composed of a prefix "Cloud_" and the OpenStack identity endpoint (host name, ip adders) as suffix. |
HOST_NUM | API | NA | Number of hosts. |
Derived metrics (values from host aggregates that belong to the cloud)
Configuration metrics | Performance metrics |
---|---|
|
|
Region - OpenStack metrics
Metric | Source type | Source info | Description |
---|---|---|---|
CLOUD_NAME | - | - | Name of the cloud. Any name you specify is prefixed with "Cloud_" and the OpenStack identity endpoint (host name, ip adders) is added as suffix. |
HOST_NUM | API | - | Number of hosts. |
Derived metrics (values from the region that belong to the cloud)
Configuration metrics | Performance metrics |
---|---|
|
|
Availability Zone - OpenStack metrics
Metric | Source type | Source info | Description |
---|---|---|---|
CLOUD_NAME | - | - | Name of the cloud. If a user-defined name exists, that name is displayed. Otherwise, the default name is displayed, which is composed of a prefix "Cloud_" and the OpenStack identity endpoint (host name, ip adders) as suffix. |
REGION_NAME | API | - | Name of the region read from the OpenStack API. |
HOST_NUM | API | - | Number of hosts. |
Host Aggregate - OpenStack metrics
Metric | Source type | Source info | Description |
---|---|---|---|
CLOUD_NAME | - | - | Name of the cloud. If a user-defined name exists, that name is displayed. Otherwise, the default name is displayed, which is composed of a prefix "Cloud_" and the OpenStack identity endpoint (host name, ip adders) as suffix. |
REGION_NAME | API | - | Name of the region read from the OpenStack API. |
AVAILABILITY_ZONE | API | /v2.1/<tenant_id>/os-aggregates - aggregates.metadata.availability_zone | Availability Zone read from the OpenStack API. |
HOST_NUM | API | - | Number of hosts. |
Derived metrics (values from hosts that belong to the host aggregate)
Configuration metrics | Performance metrics |
---|---|
|
|
Virtual Host - KVM, Virtual Host - VMware, Virtual Cluster - VMware metrics
Metric | Source type | Source info | Description |
---|---|---|---|
***CPU_NUM | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.cpu_info.topology.cores | Hypervisor number of CPU cores configured in OpenStack. |
***TOTAL_REAL_MEM | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.memory_mb | Hypervisor total real memory configured in OpenStack. |
TOTAL_EPHEMERAL_DISK_SIZE | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.local_gb | Hypervisor ephemeral disk size configured in OpenStack. |
*HOST_STATE | API | /v2/<tenant_id>/os-hypervisors/detail - hypervisors.state | Hypervisor host state configured in OpenStack. |
*HOST_STATUS | API | /v2/<tenant_id>/os-hypervisors/detail - hypervisors.status | Hypervior host statue configured in OpenStack. |
**CLUSTER_STATE | API | /v2/<tenant_id>/os-hypervisors/detail - hypervisors.state | Hypervisor cluster state configured in OpenStack. |
**CLUSTER_STATUS | API | /v2/<tenant_id>/os-hypervisors/detail - hypervisors.status | Hypervisor cluster status configured in OpenStack. |
***VCPU_ON_NUM | API | /v2/<tenant_id>/os-hypervisors/detail - hypervisors.vcpus | Hypervisor number of powered on virtual CPUs configured in OpenStack. |
***VCPU_NUM | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.vcpus_used | Hypervisor number of virtual CPUs configured in OpenStack. |
***GM_ON_NUM | API | Derived | Hypervisor number of powered on virtual machines configured in OpenStack. |
***GM_NUM | API | Derived | Hypervisor number of virtual machines configured in OpenStack. |
***MEM_CONSUMED (for VMware) | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.memory_mb_use | Hypervisor total memory consumed in OpenStack for VMware. |
***MEM_USED (for KVM) | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.memory_mb_use | Hypervisor total memory used in OpenStack (for KVM). |
***MEM_FREE | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.free_ram_mb | Hypervisor total memory available in OpenStack. |
***MEM_UTIL | API | Derived | Hypervisor memory utilization configured in OpenStack. |
***TOTAL_EPHEMERAL_DISK_PROVISIONED | API | /v2.1/<tenant_id>/os-hypervisors/detail -> hypervisors.local_gb_used | Hypervisor ephemeral disk size provisioned in OpenStack. |
* -This metric is available only for Virtual Host - KVM and Virtual Host - VMware entities. ** - This metric is available only for Virtual Cluster - VMware entities. ***- This metric can also be collected by using the Nova API. The default collection method is the Agent. To use Nova API, configure the OpenStack API ETL. |
Virtual Machine - KVM, Virtual Machine - VMware metrics
Metric | Source type | Source info | Description |
---|---|---|---|
AVAILABILITY_ZONE | API | /v2.1/<tenant_id>/servers/<server_id>- server.OS-EXT-AZ:availability_zone | Availability Zone read from OpenStack API. |
INSTANCE_NAME | API | /v2.1/<tenant_id>/servers/<server_id> - server.name | Name given to the server in OpenStack. |
REQUESTED_INSTANCE_TYPE | API | /v2.1/<tenant_id>/flavors/<server.flavor.id> - flavor.name | Flavor name. |
***CPU_NUM | API | /v2.1/<tenant_id>/flavors/<server.flavor.id> - flavor.vcpus | Requested number of CPU specified on OpenStack flavor associated to the server. |
***DISK_SIZE | API | /v2.1/<tenant_id>/flavors/<server.flavor.id> - flavor.disk | Requested disk size specified on OpenStack flavor associated to the server. |
***TOTAL_REAL_MEM | API | /v2.1/<tenant_id>/flavors/<server.flavor.id> - flavor.ram | Requested memory specified on OpenStack flavor associated to the server. |
*** - This metric can also be collected by using the Nova API. The default collection method is the Agent. To use Nova API, configure the OpenStack API ETL. |
Tenant - OpenStack metrics
Metric | Source type | Source info | Description |
---|---|---|---|
APP_CLOUD_NAME | - | - | Name of the Keystone cloud. The name is available on the Keystone server in the OS_CLOUD_NAME variable of the stack.sh file. |
APP_CPU_NUM_QUOTA | API | /v2.1/<tenant_id>/os-quota-sets/<curr_tenant_id> - quota_class_set.core | Maximum number of CPUs that can be assigned to the Service, Application or Tenant. |
APP_INSTANCE_QUOTA | |||
APP_MEM_QUOTA | API | /v2.1/<tenant_id>/os-quota-sets/<curr_tenant_id> - quota_class_set.ram | Maximum amount of Memory that can be assigned to the Service, Application or Tenant. |
APP_ENVIRONMENT |
OpenStack API Extractor Service - API calls
The extractor makes the following API calls on the identity and compute services.
OpenStack Identity Service API
Task | v2.0 API | v3 API |
---|---|---|
Authenticate and generate a token | POST /v2.0/tokens (configured username, password, and tenant name are passed in the request body) | POST /v3/auth/tokens (configured username, password, and tenant name are passed in the request body) |
Get list of tenants/projects | GET /v2.0/tenants | GET /v3/projects |
OpenStack Compute Service API
Task | API |
---|---|
List of aggregates | GET /v2.1/{tenant_id}/os-aggregates |
List of hypervisors | GET /v2.1/{tenant_id}/os-hypervisors/detail |
List of servers for a hypervisor | GET /v2.1/{tenant_id}/os-hypervisors/{hypervisor_hostname}/servers |
Details for a specific server | GET /v2.1/{tenant_id}/servers/{server_id} |
List of details for flavors | GET /v2.1/{tenant_id}/flavors/detail |
List of servers | GET /v2.1/{tenant_id}/servers/detail?all_tenants=1 |
List of availability zones | GET /v2.1/{tenant_id}/os-availability-zone/detail |
Get quota for tenant | GET /v2.1/{tenant_id}/os-quota-sets/{tenant-id-for-which-quotas-to-be-queried} |
For more information, see the
OpenStack API documentation
.
Comments
Log in or register to comment.