You are on page 1of 17

Steven Hardy (shardy@redhat.

com)
Solutions Linux Expo, Paris 2th !ay 2"#$
Heat Orchestration for OpenStack
Overview, Status, Roadmap

Heat Overview
Heat Overview

Started in March 2012

Incubated for Grizzly, Integrated for Havana

25 contributors ( core!

"100 co##its

"$%,000 lines of code

$& different resource ty'es (and counting(!

)e do #uch #ore than launch instances *!



Heat Overview
Heat Overview
Nova
Compute
Node
Glance
Image
Service
Swift
Object
Store
Cinder
Volume
Service
Keystone
Identity
Service
Horizon
Dashboard
Quantum
Networking
Heat
Orchestration

+rovides ,)S -loudfor#ation and native .eS/ ,+I

,bstract configuration of services to single0te#'late

H,1,utoscaling1Monitoring features

2'enstac3 integrated 'ro4ect



Heat Overview
Heat Overview

2rchestration of 2'enstac3 de'loy#ents

Integrates 5ith all 2'enstac3 core 'ro4ects

-eilo#eter integration for Havana release

-onverts a 6S27 te#'late into a cloud a''lication

/e#'lates can be nested for better #odularity

I#'le#ents 5ell 3no5n te#'late and ,+I (,)S


-loudfor#ation, also 8,M9, o'enstac3 .eS/!

7ative te#'late synta: discussions ongoing

;ersion your cloud a''lications li3e your soft5are

.e'eatable de'loy#ents, fully auto#ated



Heat API : Key features
Heat API : Key features

-o#'atibility 5ith ,)S -loudfor#ation (te#'late1,+I!

,lso su'erset of 2S native resources < .eS/ ,+I

=ully o'en co##unity 'ro4ect

>istro0agnostic, integrated o'enstac3 'ro4ect

I#'le#ents H, (service1instance1stac3!

I#'le#ents Instance ,utoScaling1InstanceGrou's

-loud5atch1Monitoring ,+I (5ill #ove to -eilo#eter!

+luggable resource i#'le#entations

)atch this s'ace(



Heat Overview
Heat Overview

ova Instance !ifecyc"e
ova Instance !ifecyc"e
%ma&e
'ova
(ES)
*lance
(%ma&e Store)
(
E
S
)
+eilometer
%nstance
, cloud,init
'ova,net-or.
/0uantum
'ova,volume
/cinder
S-i1t
2eystone
%nstance
, cloud,init
%nstances
, cloud,init
, 333
%nstance
, cloud,init
, 333

Heat
Heat
Stack !ifecyc"e
Stack !ifecyc"e
Heat,4eos
(o5)
'ova
(
E
S
)
*lance
(%ma&e Store)
%nstance
, cloud,init
, c1n,init
, c1n,hup
,c1n,push,stats
'ova,net-or.
/0uantum
'ova,volume
/cinder
S-i1t
Heat
(
E
S
)
Stac.
)emplate
(
E
S
)
(
E
S
)
(
E
S
)
(
E
S
)
(
E
S
)
+eilometer

Heat
Heat
Stack !ifecyc"e
Stack !ifecyc"e
6loc. Stora&e
784ect Stora&e
Launch+on1i&
Load 6alancer
96
AutoScaling
InstanceGroup
HA
'et-or. de1inition
(E%P, :P+, ;uantum,
Security*roups)
<pp Portal

Heat
Heat
Stack
Stack
"ifecyc"e
"ifecyc"e

Heat API
Heat API

?+roviders@ abstraction co#ing

2ther ne5 abstractions being discussed

/ransient stac3 ?actions@ being discussed1i#'le#ented



Heat Resource #ypes
Heat Resource #ypes
AWS::AutoScaling::AutoScalingGroup
AWS::AutoScaling::aunc!Configuration
AWS::AutoScaling::Scaling"olicy
AWS::Cloud#ormation::Stac$
AWS::Cloud#ormation::WaitCondition
AWS::Cloud#ormation::WaitConditionHandle
AWS::CloudWatc!::Alarm
AWS::%C&::%I"
AWS::%C&::%I"Association
AWS::%C&::Instance
AWS::%C&::InternetGateway
AWS::%C&::Networ$Interface
AWS::%C&::'oute(a)le
AWS::%C&::SecurityGroup
AWS::%C&::Su)net
AWS::%C&::Su)net'oute(a)leAssocation
AWS::%C&::*olume
AWS::%C&::*olumeAttac!ment
AWS::%C&::*"C
AWS::%C&::*"CGatewayAttac!ment
AWS::%lasticoad+alancing::oad+alancer
AWS::IA,::AccessKey
AWS::IA,::-ser
AWS::'.S::.+Instance
AWS::S/::+uc$et
0S::Heat::Access"olicy
0S::Heat::HA'estarter
0S::Heat::InstanceGroup
0S::Quantum::#loatingI"
0S::Quantum::#loatingI"Association
0S::Quantum::Net
0S::Quantum::"ort
0S::Quantum::'outer
0S::Quantum::'outerGateway
0S::Quantum::'outerInterface
0S::Quantum::Su)net
0S::Swift::Container

$ri%%"y &eatures
$ri%%"y &eatures

1%% bugs fi:ed

1 blue'rints i#'le#ented

7e5 .eS/ ,+I

Auantu# .esources

8,M9 te#'lates

+ython0heatclient

Better net5or3ing < ;+- resource su''ort

I#'roved C'dateStac3 su''ort

Stac3 .ollbac3

S5ift .esource ty'e

I#'roved security (#etadata1)ait-ondition events!



Havana Roadmap
Havana Roadmap

+arallel resource creation (nearly done!

=urther i#'rove net5or3ing1Auantu# su''ort

.olling C'dates (Metadata1C'date+olicy!

Su''ort for e:tended te#'late language (H2/!

?+rovider1Dnviron#ents@ abstractions (te#'late0defined resources!

,dd ,utoScaling ,+I (#aybe!

Move to -eilo#eter for #etrics1#onitoring1alar#s

More C'dateStac3 I#'rove#ents

=urther i#'roved security (+EI1trusts1in0instance credentials!

7ative resource ty'es

Horizon (CI! integration

Stac3 ?actions@ (sus'end1resu#e!

-onfigurable 9oadBalancer (9B,,S!



&uture Roadmap
&uture Roadmap

)ill be driven by users < do5nstrea# 'ro4ects

/ri'le02

2'enstac3 -I Infra

FFF

Cser0base and co##unity 'artici'ation is increasing

)e need #ore users and use0case data to sha'e


direction1'riority of feature develo'#ent

)e 5elco#e ne5 contributors (and revie5ers( *!



In '"osin(
In '"osin(

Csers, testers and develo'ers 5anted(

-onnect via I.- on GheatHfreenode

-hec3 out the re'ositories*


htt's*11githubFco#1o'enstac31heat
htt's*11githubFco#1o'enstac31heat0te#'lates

.ead the >ocu#entation*


htt'*11docsFo'enstac3Forg1develo'er1heat
htt'*115i3iFo'enstac3Forg1Heat1

+ac3ages ,vailable (.>2, >ebian!


htt'*11o'enstac3FredhatFco#

)uestions*
)uestions*