Resource management in the cloud
DRS
2
Introduction
Lead developer in Parallels
DRS enthusiast, the leader in
resource management team
in Odin
Over 10 years experience in
virtualization
Lecturer In MIPT, Innopolis,
Sbertech
3
Ресурс шедулер
4
Распределитель ресурсов
5
Ресурсоуправитель !
6
Resource scheduler
7
Resource scheduler
•  N resource producers (servers)
•  M resource consumers (virtual instances: VMs, containers, jobs)
8
Resource scheduler
•  Estimate current resource consuming level for each
consumer( demand(i) )
•  Predict resource consumption level for some
consumer( future_demand(i) )
•  Detect provisor overload (bottleneck(j) )
•  Optimal placement ( place(i,j) -> place(i,k) )
•  Victim selection
•  Migration estimation (possibility, migration weight)
•  N resource producers (servers)
•  M resource consumers( virtual instances: VMs, containers, jobs)
9
Estimate demand
10
Estimate demand. Memory
"  OS halts when it doesn’t need CPU
"  OS doesn’t make I/O when it doesn’t need external devices
"  OS does nothing when it doesn’t need memory
11
Predict demand
12
Predict demand
•  Math methods
•  ARIMA, regression
•  Kalman & other filters
•  CuSum
•  RL
•  Markov chains
•  Bayes
•  Clusterization
•  Metrics
•  Provisioning metrics (virtualization)
•  Consumer metrics (Guest OS)
•  Job/user metrics
•  Time
•  When to predict
•  Prediction horizon (prediction accuracy)
•  Lifetime prediction?
13
Detect overload
14
Detect overload
"  Heartbeat
"  Virtual resource usage zones
"  Complicated resource producer metrics
15
Placement (1)
•  Initial (w/o estimation)
•  Single
•  Group
•  Dynamic (with estimation)
•  SLA and affinity issues
•  VM-to-VM, VM-to-host
•  Affinity & anti-affinity
•  Resource availability
16
Placement (2). Inter-consumer dependencies
17
Placement (3). Geography-aware
18
Placement (4). … after all filters, restrictions
A set of suitable target nodes. Which to choose?
19
Placement (4). … after all filters, restrictions
•  Random
•  Round-robin
•  Spread-first
•  Greedy (fill-first)
20
Migration
•  Could be too long (need prediction)
•  Could affect performance
•  Could affect energy consumption
•  Could be more or less effective
•  Could fail
21
Use cases: Vmware(1)
The cost is modeled b
migrate. The migratio
of the VM as well as h
migration. If the VM d
they must be copied
DRS keeps track of the
times for each VM an
memory size, it calcu
copying. During this t
required for the migr
vMotion cost is in the
The vMotion process
source and destinatio
then computes how m
due to migration. Thi
writes to its memory
DRS approximates thAlgorithm 1: DRS Load Balancing
22
Use cases: Vmware(2)
how the workload might change on both the source and destination
and if this move still makes sense when the workload changes.
Figure 4: Overview of DRS Cost-Benet analysis
cost-benefit analysis
23
Resource scheduler. Administrative
•  Limits + Shares + Reservations
•  Grouping of resource suppliers (clusters)
•  Nested resource pool
•  Custom rules (affinity and anti-affinity)
•  Automative, semi-automative, manual mode
•  Migration threshold
24
Resource scheduler. Virtualization case
•  High availablility
•  Failover
•  Backup
•  DPM
25
Resource scheduler. Main principles
•  Do not migrate too often
•  Random is a good placement algorithm
•  Choose accurately counters for prediction and estimation
•  Maths is a pleasure!
26
Questions
27
Thank you for you attention!
annam@odin.com

Resource management in the cloud