Climate project

20
Climate Project Dina Belova, Mirantis Sylvain Bauza, Bull Resource Reservation Service

description

Hong Kong OpenStack Summit Climate project unconference session :)

Transcript of Climate project

Page 1: Climate project

Climate Project

Dina Belova, MirantisSylvain Bauza, Bull

Resource Reservation Service

Page 2: Climate project
Page 3: Climate project

● Manage cloud resources not right now but also in the future

● Have dedicated resources on certain amount of time

● Prepare for the peak loads and perform capacity planning

● Optimize energy consumption

Reasons

Page 4: Climate project

● Virtual resources○ Nova instances○ Cinder volumes○ Neutron’s floating IPs, networks, routers○ Heat stacks○ etc.

● Physical resources○ compute hosts○ storage nodes

What may be reserved?

Page 5: Climate project

● Reserve cloud resources (both physical and virtual)

● Plugin mechanism (what to do at the time lease actually starts and ends)

● Configurable notifications about near ending of the lease

● Leases and resources accounting with Ceilometer

Climate features

Page 6: Climate project

● Immediate reservation● Reservation with retries● Best-effort reservation● Delayed resource acquiring

Reservation concepts

Page 7: Climate project

● Reservation = capture resources for cloud object (instance, pcloud, stack, etc.). Includes status, resource ID, pre- and post-reservation actions.

● Lease = several reservations. Lease is described by start time, end time, reservations and events regarding it.

● Event = something that may happen with lease (start, end, notify, extra actions).

Useful terms

Page 8: Climate project

Events Handling Workflow

Climate Manager

Climate DB

1. get event that should be done at this time

2. commit all needed actionsResource Plugin

Page 9: Climate project

Create lease with reserved VM workflow

Nova APIOpenStack

Dashboard / Nova CLI

1. reserve instance with some lease params

2. create reserved instance, lease ID

Nova Scheduler

3. instance creation request

Nova DB

Nova Compute

4. do all instance creation steps except running

5. create record in the DB

Climate Client

Climate API

6. lease params (+instance ID) 6. lease params

Climate Manager

7. create lease request

Climate DB

8. create lease, reservation and event records

Page 10: Climate project

● Boot instance○ Verify it was reserved○ View created lease for the passed periods ○ Wait for the first notification

● Prolong lease○ Wait for the second notification○ Check that instance snapshot was created and

VM deleted at the lease end time

Demo Scenario (Instance Reservation)

Page 11: Climate project

Create/Start lease with reserved host workflow

Climate Client / OpenStack Dashboard

1. reserve host(s) with some lease params

2. create reserved host, lease ID

Nova API

Nova Scheduler

Nova DB

Nova Compute

4. create pcloud with no hosts

Climate API

Climate Manager

3. create lease request

Climate DB

5. create lease, reservation record and event records

6. returns lease uuid

7. (at lease start) elects hosts and

add in pcloud

Page 12: Climate project

VM creation with reserved host workflow

OpenStack Dashboard /

Nova CLINova API

Nova Scheduler

Nova DB

Nova Compute

1. starts VM with scheduler hint : reservation uuid

2. filters hosts only within the pcloud(=reservation)

Page 13: Climate project

● Hosts reservation basic features● Deferred reserving of compute nodes● Simple lease prolonging

What have we started with (physical use case)?

Page 14: Climate project

● Physical reservations○ Capacity planning at lease creation○ Best-effort mode○ Energy efficiency feature for hosts

● Core functionality○ Notification center○ Support of different reservation concepts

What shall we do later?

Page 15: Climate project

● Nova instances reservation support● Reservations without reusing resources● Support immediate reservations● Simple lease prolonging● Draft notification opportunity

What have we started with (virtual use case)?

Page 16: Climate project

● Virtual reservations○ Add resource reuse mechanism○ Support for all OpenStack virtual resources

● Core functionality○ Notification center○ Clever reservation prolonging mechanism

(support for OpenStack quotas)○ Support of different reservation concepts

What shall we do later?

Page 17: Climate project

● Base commits already merged into upstream(DB layer, all utilities and service preparing mechanism, REST API)

● On review○ Hosts reservation changes○ Manager Service with Keystone trusts support○ Basic VM plugin

Community related questions

Page 19: Climate project

Q&A

Page 20: Climate project

Thank you for the attentionDina Belova, [email protected] Bauza, [email protected]