The watcher.decision_engine.planner.workload_stabilization Module

The watcher.decision_engine.planner.workload_stabilization Module

class watcher.decision_engine.planner.workload_stabilization.BaseActionValidator[source]

Bases: object

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.ChangeNovaServiceStateActionValidator[source]

Bases: watcher.decision_engine.planner.workload_stabilization.BaseActionValidator

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.MigrationActionValidator[source]

Bases: watcher.decision_engine.planner.workload_stabilization.BaseActionValidator

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.NOPActionValidator[source]

Bases: watcher.decision_engine.planner.workload_stabilization.BaseActionValidator

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.ResizeActionValidator[source]

Bases: watcher.decision_engine.planner.workload_stabilization.BaseActionValidator

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.SleepActionValidator[source]

Bases: watcher.decision_engine.planner.workload_stabilization.BaseActionValidator

validate_parents(resource_action_map, action)[source]
class watcher.decision_engine.planner.workload_stabilization.WorkloadStabilizationPlanner(config)[source]

Bases: watcher.decision_engine.planner.base.BasePlanner

Workload Stabilization planner implementation

This implementation comes with basic rules with a set of action types that are weighted. An action having a lower weight will be scheduled before the other ones. The set of action types can be specified by ‘weights’ in the watcher.conf. You need to associate a different weight to all available actions into the configuration file, otherwise you will get an error when the new action will be referenced in the solution produced by a strategy.

Limitations

  • This is a proof of concept that is not meant to be used in production
create_action(action_plan_id, action_type, input_parameters=None)[source]
classmethod get_config_opts()[source]

Defines the configuration options to be associated to this loadable

Returns:A list of configuration options relative to this Loadable
Return type:list of oslo_config.cfg.Opt instances
load_child_class(child_name)[source]
schedule(context, audit_id, solution)[source]

The planner receives a solution to schedule

Parameters:
  • solution (BaseSolution subclass instance) – A solution provided by a strategy for scheduling
  • audit_uuid (str) – the audit uuid
Returns:

Action plan with an ordered sequence of actions such that all security, dependency, and performance requirements are met.

Return type:

watcher.objects.ActionPlan instance

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.