15
Steven Hardy ([email protected]) 3rd October 2013 Heat – Orchestration for OpenStack Overview, Intro to Provider Resources

OWF13 - OSMeetup - Steven Hardy

Embed Size (px)

DESCRIPTION

Open Stack Meetup - Steven Hardy

Citation preview

Page 1: OWF13 - OSMeetup - Steven Hardy

Steven Hardy ([email protected])3rd October 2013

Heat – Orchestration for OpenStackOverview, Intro to Provider Resources

Page 2: OWF13 - OSMeetup - Steven Hardy

HeatHeat Overview Overview

Compute(Nova)

REST

Glance(Image Store)

Instance- cloud-init- cfn-init- cfn-hup

-cfn-push-stats

Network(Neutron)

Block Storage(Cinder)

Object Storage(Swift)

Orchestration (Heat)

Stack/ResourceTemplates

REST RESTR

ES

TRE

ST

RE

ST

Metrics/Alarms(Ceilometer)

User Portal (Horizon)

RE

ST

Identity(Keystone)

RE

ST

Page 3: OWF13 - OSMeetup - Steven Hardy

Havana FeaturesHavana Features● Concurrent resource operations

● Much improved networking/Neutron support

● Initial support for native template language (HOT)

● “Provider/Environments” abstractions (template-defined resources)

● Ceilometer integration for metrics/monitoring/alarms

● UpdateStack improvements

● Initial integration with keystone trusts functionality

● Many more native resource types

● Horizon (UI) integration

● Stack “actions” (suspend/resume)

Page 4: OWF13 - OSMeetup - Steven Hardy

Heat Template OverviewHeat Template Overview

Page 5: OWF13 - OSMeetup - Steven Hardy

Heat Template OverviewHeat Template Overview

Page 6: OWF13 - OSMeetup - Steven Hardy

Heat Template OverviewHeat Template Overview

Page 7: OWF13 - OSMeetup - Steven Hardy

Heat Nested Stack TemplatesHeat Nested Stack Templates

Page 8: OWF13 - OSMeetup - Steven Hardy

Openshift ExampleOpenshift Example

LaunchConfig(Openshift Node)

Openshift Broker

AutoScalingGroup

Openshift Users

Heat Stack

Page 9: OWF13 - OSMeetup - Steven Hardy

Openshift ExampleOpenshift Example

LaunchConfig(Openshift Node)

Openshift BrokerAWS::CloudFormation::Stack

AutoScalingGroup

Openshift Users

Heat Stack

Heat Stack

Broker Instance

Page 10: OWF13 - OSMeetup - Steven Hardy

Heat Nested Stack TemplatesHeat Nested Stack Templates

"Resources" : { "OpenshiftBroker": { "Type": "AWS::CloudFormation::Stack", "Properties": { "TemplateURL": "https://somewhere/something.template",

“Parameters”: <map containing stack parameters> } },

● Available in Grizzly Heat

● AWS compatible interface to nested stacks

● Allows user to compose layered/reusable deployments

● Hard-coded URL's is inconvenient

Page 11: OWF13 - OSMeetup - Steven Hardy

Provider ResourcesProvider Resources

Page 12: OWF13 - OSMeetup - Steven Hardy

Provider ResourcesProvider Resources● Heat native interface to nested stacks

● No hard-coded URLs (in the template)

● Staging workflow/testing much simplified

● Allows deployer and user to define custom resources

– /etc/heat/environment.d

– /etc/heat/templates

– Users heat stack-create –environment-file=foo.yaml

● Users can override default deployer resources!

resource_registry: "My::Custom::Server": file:///foo/bar.yaml

Page 13: OWF13 - OSMeetup - Steven Hardy

Heat Resource TypesHeat Resource TypesOS::Ceilometer::AlarmOS::Cinder::VolumeOS::Cinder::VolumeAttachmentOS::Heat::AccessPolicyOS::Heat::CWLiteAlarmOS::Heat::HARestarterOS::Heat::InstanceGroupOS::Neutron::FirewallOS::Neutron::FirewallPolicyOS::Neutron::FirewallRuleOS::Neutron::FloatingIPOS::Neutron::FloatingIPAssociationOS::Neutron::HealthMonitorOS::Neutron::IKEPolicyOS::Neutron::IPsecPolicyOS::Neutron::IPsecSiteConnectionOS::Neutron::LoadBalancerOS::Neutron::NetOS::Neutron::PoolOS::Neutron::PortOS::Neutron::RouterOS::Neutron::RouterGatewayOS::Neutron::RouterInterfaceOS::Neutron::SubnetOS::Neutron::VPNServiceOS::Nova::ServerOS::Swift::Container

AWS::AutoScaling::AutoScalingGroupAWS::AutoScaling::LaunchConfigurationAWS::AutoScaling::ScalingPolicyAWS::CloudFormation::StackAWS::CloudFormation::WaitConditionAWS::CloudFormation::WaitConditionHandleAWS::EC2::EIPAWS::EC2::EIPAssociationAWS::EC2::InstanceAWS::EC2::InternetGatewayAWS::EC2::NetworkInterfaceAWS::EC2::RouteTableAWS::EC2::SecurityGroupAWS::EC2::SubnetAWS::EC2::SubnetRouteTableAssocationAWS::EC2::VolumeAWS::EC2::VolumeAttachmentAWS::EC2::VPCAWS::EC2::VPCGatewayAttachmentAWS::ElasticLoadBalancing::LoadBalancerAWS::IAM::AccessKeyAWS::IAM::UserAWS::RDS::DBInstanceAWS::S3::Bucket

Page 14: OWF13 - OSMeetup - Steven Hardy

Icehouse RoadmapIcehouse Roadmap● Developing HOT DSL

● Engine scale-out

● Rolling Updates (UpdatePolicy, Metadata update)

● Native in-instance tools

● Template-function plugins

● Software configuration resources (Puppet/Chef/...)

● More native resource types

● Stack snapshot/restore

● Per-resource suspend/resume

● Better cloud-init integration

● ...

Page 15: OWF13 - OSMeetup - Steven Hardy

Links, any Questions?Links, any Questions?

● http://docs.openstack.org/developer/heat/

● http://openstack.redhat.com/Docs

● http://github.com/openstack/heat

● https://launchpad.net/heat

● http://wiki.openstack.org/wiki/Heat

● http://hardysteven.blogspot.co.uk

● https://github.com/hardys/presentations