Entities, lookup information, and metrics for OpenStack API ETL
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.
Cloud - OpenStack metrics
Region - OpenStack metrics
Availability Zone - OpenStack metrics
Host Aggregate - OpenStack metrics
Hypervisor: Virtual Host - KVM, Virtual Host - VMware, Virtual Cluster - VMware metrics
Virtual Machine - KVM, Virtual Machine - VMware metrics
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 |
Derived metrics
The following tables provide the details on OpenStack metrics derived from other OpenStack entities or hypervisors.
Cloud metrics derived from Region metrics
Target metric | Source metric | Formula |
---|---|---|
CPU_NUM | CPU_NUM | SUM (source.CPU_NUM) |
CPU_TOTAL_MHZ | CPU_TOTAL_MHZ | SUM (source.CPU_TOTAL_MHZ ) |
CPU_UTILMHZ | CPU_UTILMHZ | SUM (source.CPU_UTILMHZ) |
CPU_UTIL | Computed using target metrics | target.CPU_UTILMHZ / target.CPU_TOTAL_MHZ |
TOTAL_REAL_MEM | TOTAL_REAL_MEM | SUM (source.TOTAL_REAL_MEM) |
MEM_CONSUMED | MEM_CONSUMED | SUM (source.$MEM_CONSUMED) |
MEM_UTIL | Computed using target metrics | target.MEM_CONSUMED / target.TOTAL_REAL_MEM |
TOTAL_EPHEMERAL_DISK_SIZE | TOTAL_EPHEMERAL_DISK_SIZE | SUM (source.TOTAL_EPHEMERAL_DISK_SIZE) |
TOTAL_EPHEMERAL_DISK_PROVISIONED | TOTAL_EPHEMERAL_DISK_PROVISIONED | SUM (source.TOTAL_EPHEMERAL_DISK_PROVISIONED) |
TOTAL_DSTORE_SIZE | TOTAL_DSTORE_SIZE | SUM (source.TOTAL_DSTORE_SIZE) |
TOTAL_DSTORE_USED | TOTAL_DSTORE_USED | SUM (source.TOTAL_DSTORE_USED) |
TOTAL_DSTORE_UTIL | Computed using target metrics | target.TOTAL_DSTORE_USED / target.TOTAL_DSTORE_SIZE |
HOST_NUM | - | Count of child entities |
GM_ON_NUM | GM_ON_NUM | SUM (source.GM_ON_NUM) |
VCPU_NUM | VCPU_NUM | SUM (source.VCPU_NUM) |
VCPU_ON_NUM | VCPU_ON_NUM | SUM (source.VCPU_ON_NUM) |
Region metrics derived from Host Aggregate metrics
Target metric | Source metric | Formula |
---|---|---|
CPU_NUM | CPU_NUM | SUM (source.CPU_NUM) |
CPU_TOTAL_MHZ | CPU_TOTAL_MHZ | SUM (source.CPU_TOTAL_MHZ ) |
CPU_UTILMHZ | CPU_UTILMHZ | SUM (source.CPU_UTILMHZ) |
CPU_UTIL | Computed using target metrics | target.CPU_UTILMHZ / target.CPU_TOTAL_MHZ |
TOTAL_REAL_MEM | TOTAL_REAL_MEM | SUM (source.TOTAL_REAL_MEM) |
MEM_CONSUMED | MEM_CONSUMED | SUM (source.$MEM_CONSUMED) |
MEM_UTIL | Computed using target metrics | target.MEM_CONSUMED / target.TOTAL_REAL_MEM |
TOTAL_EPHEMERAL_DISK_SIZE | TOTAL_EPHEMERAL_DISK_SIZE | SUM (source.TOTAL_EPHEMERAL_DISK_SIZE) |
TOTAL_EPHEMERAL_DISK_PROVISIONED | TOTAL_EPHEMERAL_DISK_PROVISIONED | SUM (source.TOTAL_EPHEMERAL_DISK_PROVISIONED) |
TOTAL_DSTORE_SIZE | TOTAL_DSTORE_SIZE | SUM (source.TOTAL_DSTORE_SIZE) |
TOTAL_DSTORE_USED | TOTAL_DSTORE_USED | SUM (source.TOTAL_DSTORE_USED) |
TOTAL_DSTORE_UTIL | Computed using target metrics | target.TOTAL_DSTORE_USED / target.TOTAL_DSTORE_SIZE |
HOST_NUM | Count of child entities | |
GM_ON_NUM | GM_ON_NUM | SUM (source.GM_ON_NUM) |
VCPU_NUM | VCPU_NUM | SUM (source.VCPU_NUM) |
VCPU_ON_NUM | VCPU_ON_NUM | SUM (source.VCPU_ON_NUM) |
Host Aggregate and Availability Zone metrics derived from Hypervisor metrics
The hypervisor can be Virtual Host - KVM, Virtual Host - VMware, or Virtual Cluster - VMware metrics
Target metric | Source metric | Formula |
---|---|---|
CPU_NUM | CPU_NUM | SUM (source.CPU_NUM) |
CPU_TOTAL_MHZ | CPU_TOTAL_MHZ | SUM (source.CPU_TOTAL_MHZ ) |
CPU_UTILMHZ | CPU_UTILMHZ | SUM (source.CPU_UTILMHZ) |
CPU_UTIL | Computed using target metrics | target.CPU_UTILMHZ / target.CPU_TOTAL_MHZ |
TOTAL_REAL_MEM | TOTAL_REAL_MEM | SUM (source.TOTAL_REAL_MEM) |
MEM_CONSUMED |
| SUM (source.$MEM_USAGE) |
MEM_UTIL | Computed using target metrics | target.MEM_CONSUMED / target.TOTAL_REAL_MEM |
TOTAL_EPHEMERAL_DISK_SIZE | TOTAL_EPHEMERAL_DISK_SIZE | SUM (source.TOTAL_EPHEMERAL_DISK_SIZE) |
TOTAL_EPHEMERAL_DISK_PROVISIONED | TOTAL_EPHEMERAL_DISK_PROVISIONED | SUM (source.TOTAL_EPHEMERAL_DISK_PROVISIONED) |
TOTAL_DSTORE_SIZE | TOTAL_DSTORE_SIZE | SUM (source.TOTAL_DSTORE_SIZE) |
TOTAL_DSTORE_USED | TOTAL_DSTORE_USED | SUM (source.TOTAL_DSTORE_USED) |
TOTAL_DSTORE_UTIL | Computed using target metrics | target.TOTAL_DSTORE_USED / target.TOTAL_DSTORE_SIZE |
HOST_NUM | Count of child entities (Clusters are counted as a single host) | |
GM_ON_NUM | GM_ON_NUM | SUM (source.GM_ON_NUM) |
VCPU_NUM | VCPU_NUM | SUM (source.VCPU_NUM) |
VCPU_ON_NUM | VCPU_ON_NUM | SUM (source.VCPU_ON_NUM) |
OpenStack API Extractor Service - API calls
The extractor makes the following API calls on the identity and compute services.
OpenStack Identity Service API
OpenStack Compute Service API
For more information, see the OpenStack API documentation.