The watcher.decision_engine.strategy.strategies.uniform_airflow
Module¶
[PoC]Uniform Airflow using live migration
Description
It is a migration strategy based on the airflow of physical servers. It generates solutions to move VM whenever a server’s airflow is higher than the specified threshold.
Requirements
- Hardware: compute node with NodeManager 3.0 support
- Software: Ceilometer component ceilometer-agent-compute running in each compute node, and Ceilometer API can report such telemetry “airflow, system power, inlet temperature” successfully.
- You must have at least 2 physical compute nodes to run this strategy
Limitations
- This is a proof of concept that is not meant to be used in production.
- We cannot forecast how many servers should be migrated. This is the reason why we only plan a single virtual machine migration at a time. So it’s better to use this algorithm with CONTINUOUS audits.
- It assumes that live migrations are possible.
-
class
watcher.decision_engine.strategy.strategies.uniform_airflow.
UniformAirflow
(config, osc=None)[source]¶ Bases:
watcher.decision_engine.strategy.strategies.base.BaseStrategy
[PoC]Uniform Airflow using live migration
Description
It is a migration strategy based on the airflow of physical servers. It generates solutions to move VM whenever a server’s airflow is higher than the specified threshold.Requirements
- Hardware: compute node with NodeManager 3.0 support
- Software: Ceilometer component ceilometer-agent-compute running in each compute node, and Ceilometer API can report such telemetry “airflow, system power, inlet temperature” successfully.
- You must have at least 2 physical compute nodes to run this strategy
Limitations
- This is a proof of concept that is not meant to be used in production.
- We cannot forecast how many servers should be migrated. This is the reason why we only plan a single virtual machine migration at a time. So it’s better to use this algorithm with CONTINUOUS audits.
- It assumes that live migrations are possible.
-
calculate_used_resource
(node, cap_cores, cap_mem, cap_disk)[source]¶ Compute the used vcpus, memory and disk based on instance flavors
-
choose_instance_to_migrate
(hosts)[source]¶ Pick up an active instance instance to migrate from provided hosts
Parameters: hosts – the array of dict which contains node object