Define policy to effect scaling decisions
|Actors||Integrated Observatory Operator|
|References||UC.R1.16 Scale the Processing|
|Is Used By|
|Is Extended By|
|In Acceptance Scenarios||None|
|Primary Service||Elastic Computing Services|
|UC Status||Mapped + Ready|
This information summarizes the Use Case functionality.
Decision engines provide automatic scaling and compensation in the system, by adding or removing resources in response to sensor information. For a decision engine, define the policy that describes how scaling is to occur. This includes handling multiple instances for high availability purposes. The policy has to define sensors (i.e., system measurements), algorithms, and thresholds for adding and subtracting units. Each scaling resource has a policy. Decision engines are present in EPUs (manage pools of virtual machines), and HA Agents (manage pools of processes).
- Definition of scaling policy occurs during operations
- Templates for scaling policy exist (e.g., n-preserving, geographically distributed, elastic scaling, allocation-based scaling)
- Sensor types are predefined (e.g., queue length sensor, CPU average, message latency, allocation)
- CEI capabilities are fully functional
Scaling policy templates exist in the system (added during integration time), system is operational.
- Operator selects ION capability to list existing HA Agents or EPUs
- Via operator console or API
- Operator selects a specific scaling resource such as an EPU
- Another type of scaling resource is an HA Agent managing a pool of service processes
- Operator selects to define the decision engine's scaling policy
- Scaling policy is shown, if existing
- Could choose to edit an existing policy, or create a new one.
- Note: scaling policy is completely different from access policy (governance)
- Operator edits scaling policy (or creates new policy)
- Possible policies are defined as a set of templates: "n-preserving", sensor-based compensation rules, etc.
- Select policy template from existing choices
- Define policy parameters: e.g.the n in "n-preserving" template, or the min max thresholds for increasing and subtracting units; instantiation locations, geographical distribution
- Define policy input: Select from available sensor types; Parameterize sensor, e.g. queue length of queue X
- Define error conditions and notifications
- Modify policy rule details
- The system begins allocating resources based on the new policy.
- If and once the decision engine is active
Scaling policy is in effect for targeted decision engine.
These comments provide additional context (usually quite technical) for editors of the use case.
Note that the available policy templates and sensor inputs will be limited in Release 2. The operator will select from a set of predefined policies, with a few simple infrastructure domains in Release 2.