The Manila Scheduler weighers are generic, it is designed to weigh based on the backend stats, being restricted to that set of information. For some NetApp environments, it could be more helpful to have a more specific tool that tracks the storages status (space, cpu usage and several others) and use statistics and artificial intelligence techniques for weighing the hosts in a more efficient manner.
To make a better weight evaluation, NetApp has its own software called Active IQ (AIQ). The AIQ connects to the NetApp storages collecting and processing the status of each device dynamically.
Starting from Bobcat Release, Manila has the option to use the Active IQ as
one of Scheduler weighers. To enable it, the manila.conf
should contain the
NetAppAIQWeigher
as part of the Manila configuration
scheduler_default_weighers
list.
[DEFAULT]
..
scheduler_default_weighers = NetAppAIQWeigher
..
To configure the Active IQ weigher the netapp_active_iq
stanza has to be
added on the manila.conf
. The following fields are available:
Option |
Type |
Default Value |
Description |
---|---|---|---|
|
Required |
The hostname (or IP address) for the Active IQ. |
|
|
Required |
Administrative user account name used to access the Active IQ. |
|
|
Required |
Password for the administrative user account specified in the aiq_username option. |
|
|
Optional |
The TCP port to use for communication with the Active IQ. If not specified, the weigher driver will use 80 for HTTP and 443 for HTTPS. |
|
|
Optional |
https |
The transport protocol used when communicating with the Active IQ. Valid values are http or https. |
|
Optional |
False |
Verifying the SSL certificate. Default is False. |
|
Optional |
The path to a CA_BUNDLE file or directory with certificates of trusted CA. If set to a directory, it must have been processed using the c_rehash utility supplied with OpenSSL. If not informed, it will use the Mozilla’s carefully curated collection of Root Certificates for validating the trustworthiness of SSL certificates. |
|
|
Optional |
0 |
Integer indicator of which evaluation method, defaults to 0 (0 - by index, 1 - normalized value, 2 - by literal value). |
|
Optional |
[ops, latency, volume_count, size] |
Permutation of the list [volume_count, size, latency, ops]. Note that for volume_count and latency, the higher the values, the less optimal the resources. For capacity and ops, the higher the value the more desirable the resources. If metrics are to be considered with equal weights, concatenate the strings, separated by “:”. An example is [volume_count, size, latency:ops] if latency and ops want to have equal but minimum weights, or [volume_count:size, latency, ops], if volume_count and size have equal maximum weights. |
Table 6.20. Configuration options for Active IQ weigher.
An example of configuration would be:
[netapp_active_iq]
aiq_hostname = 10.10.10
aiq_username = my_active_iq_user
aiq_password = my_active_iq_password
Caution
Wrong configuration of the weigher does not affect the Scheduler service. The only effect is that the weigher is ignored or skipped. So, the OpenStack administrator should make sure that the Scheduler service is using the Active IQ Weigher correctly.
Important
If during the Active IQ weigher phase any of the available host is not from NetApp storage the weigher is totally skipped. In another words, it scores all hosts equally as “0”. If any of the API calls to Active IQ NetApp service fail, the weigher is skipped too.
The Manila operators have the option to request the Active IQ to weigh only
pools of a given service objectives (performance and capacity). The performance
service level is the Active IQ feature that makes it possible. Operators can
inform it to the Active IQ Weigher using the share types through the NetApp
extra-specs key netapp:performance_service_level_name
.
Note
The NetApp pool field netapp_cluster_name
is important to the Active IQ
weigher, since it is passed to it to get the scores of that pool. So, make
sure the driver is reporting correctly.
This document is licensed under Apache 2.0 license.