SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
ceilometer
Ceilometer

Heat

Alarming

Alarming

Julien Danjou
jd__@Freenode // @juldanjou
julien@danjou.info

Nick Barcet
nijaba@Freenode // @nijaba
nick@enovance.com

Eoghan Glynn
eglynn@Freenode
eglynn@redhat.com
Speakers
● Nick Barcet co-founded the Ceilometer project at the
Folsom summit and led the project through incubation
● Julien Danjou has been a core Ceilometer contributor
from the outset, taking over the PTL reins for Havana
● Eoghan Glynn drove the addition of the Alarming
feature to Ceilometer over the Havana cycle
Two seemingly disjoint
projects intersect
● Heat is a template-driven orchestration engine
○ automates complex deployments via declarative
configuration
● Ceilometer is a metering infrastructure
○ collects data measuring resource usage and
performance
● Appear on the surface to have minimal commonality ...
Ceilometer Workflow
Collect

Transform

Publish

Store

Aggregate

● Collect from OpenStack components
● Transform metering data if necessary
● Publish meters to any destination (including
Ceilometer itself)
● Store received meters
● Aggregate samples via a REST API
Heat Workflow
my_stack.template
{ "AWSTemplateFormat" : "2010-09-09",
"Parameters": { "VolumeSize" : { … } }
"Mappings": {
"Flavor2Arch" : { "tiny": {"Arch" : "64" },
... },
"Resources": {
"MyInstance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : { “Volumes” : […] }
} } },
"Outputs": { "DNS" : { "Value" : { … } } } }
Heat Workflow
{ "AWSTemplateFormat" : "2010-0909",
"Parameters": { "VolumeSize" : { …
}}
"Mappings": {
"Flavor2Arch" : { "tiny": {"Arch" : "64"
},
... },
"Resources": {
"MyInstance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : { “Volumes” : […] }
} } },
"Outputs": { "DNS" : { "Value" : { … }
}}}

consumed by

Heat Engine
Heat Workflow
{ "AWSTemplateFormat" : "2010-0909",
"Parameters": { "VolumeSize" : { …
}}
"Mappings": {
"Flavor2Arch" : { "tiny": {"Arch" : "64"
},
... },
"Resources": {
"MyInstance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : { “Volumes” : […] }
} } },
"Outputs": { "DNS" : { "Value" : { … }
}}}

consumed by

interacts with

Heat Engine
Heat Workflow
{ "AWSTemplateFormat" : "2010-0909",
"Parameters": { "VolumeSize" : { …
}}
"Mappings": {
"Flavor2Arch" : { "tiny": {"Arch" : "64"
},
... },
"Resources": {
"MyInstance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : { “Volumes” : […] }
} } },
"Outputs": { "DNS" : { "Value" : { … }
}}}

consumed by

interacts with

Heat Engine

my_stack

Instance

Volume

spins up
Heat Autoscaling v1.0
CW-lite

reports
load
my_stack

push-stats
Heat Autoscaling v1.0
Heat Engine
reports
load

scales out
stack
my_stack

Instance
Instance
Instance
Heat Autoscaling v1.0
Heat Engine
reports
load

scales out
stack
my_stack

Instance
Instance
Instance
Instance
Ceilometer to the rescue!
● compute agent already collects most
relevant stats from outside the instance
● API service exposes aggregation over the
evaluation window
● define new API exposing alarm lifecycle
● provide new service to evaluate alarms
against their defined rules
● additional service driving asynchronous
notifications when alarms fire
How it all hangs together
{ "AWSTemplateFormat" : "2010-0909",
"Parameters": { "VolumeSize" : { …
}}
"Mappings": {
"Flavor2Arch" : { "tiny": {"Arch" : "64"
},
... },
"Resources": {
"MyInstance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : { “Volumes” : […] }
} } },
"Outputs": { "DNS" : { "Value" : { … }
}}}

added to template

● alarms bounding busy/idleness of
instances
● membership of autoscale group
represented via user metadata
● alarm actions refer to scale
up/down policies
● action URLs are pre-signed
● policies define adjustment step size
& cooldown period
How it all hangs together
"CPUAlarmHigh": {
"Type": "OS::Metering::Alarm",
"Properties": {
"meter_name": "cpu_util", threshold: "75"
"evaluation_periods": "5", "period": "60",
"statistic": "avg", "comparison_operator": "gt",
"description": "Scale-up if CPU > 75% for 300s",
"alarm_actions":[…"ScaleUpPolicy", "AlarmUrl"…],
"matching_metadata": {
"metadata.user_metadata.server_group":
"MyWebServerGroup"
}}}
How it all hangs together
Heat Engine
injects user
metadata
my_stack

Instance
How it all hangs together
Heat Engine
injects user
metadata
my_stack

Instance

API service

Ceilometer

creates
alarms
How it all hangs together
API service

Heat Engine
injects user
metadata
my_stack

Instance

monitors
instances

Compute
Agent

Ceilometer

creates
alarms
How it all hangs together
API service

Heat Engine
injects user
metadata
my_stack

Instance

triggers
alarm

monitors
instances

Alarm
evaluator

Compute
Agent

Ceilometer

creates
alarms
How it all hangs together
alarming

Heat Engine
Alarms
injects user
metadata
my_stack

Instance
Instance
Instance

scales out
stack

Compute

Ceilometer

API
How it all hangs together
alarming

Heat Engine
Alarms
injects user
metadata
my_stack

Instance
Instance
Instance
Instance
Instance

scales out
stack

Compute

Ceilometer

API
How it all hangs together
API service

my_stack
Meter store

Instance

provides
alarm rules

queries
stats

reports
samples

Compute
Agent

Alarm
evaluator

Ceilometer

Heat Engine
Lessons learned
Keys to successful intra-project interactions:
● buy-in from stakeholders on both sides
● early validation and proof-points
● protect consuming project from churn during
the development cycle
● split deliverables into bite-sized separately
consumable chunks
Future directions
● expand metering coverage to also capture:
○ memory utilization %
○ LBaaS statistics
○ network & disk I/O rates

● add combination alarm support to Heat
templates
○ allow thresholds over multiple metrics to be modeled

● exclude low-quality datapoints
○ avoid scaling when only outliers have reported metrics
Future directions
● monitor baremetal via IPMI or SNMP
○ autoscale groups of hosts managed as Ironic instances

● constrain alarms for time-of-day or day-of-week
○ e.g. set the bar higher on weekends, lower on weekdays

● decouple autoscaling usage from Heat templates
● authenticate webhook calls with keystone trusts
○ avoid ec2-signer use without keystone EC2 tokens ext
Further questions?
● Chat on Freenode:
○ #openstack-metering
○ #heat

● Mail the dev list:
○ openstack-dev@lists.openstack.org

● Harangue us via Launchpad:
○ https://launchpad.net/ceilometer/+filebug

Weitere ähnliche Inhalte

Was ist angesagt?

OpenStack Orchestration with Heat
OpenStack Orchestration with HeatOpenStack Orchestration with Heat
OpenStack Orchestration with Heatopenstackstl
 
Openstack heat & How Autoscaling works
Openstack heat & How Autoscaling worksOpenstack heat & How Autoscaling works
Openstack heat & How Autoscaling worksCoreStack
 
Ceilo componentization diagrams
Ceilo componentization diagramsCeilo componentization diagrams
Ceilo componentization diagramsFabio Giannetti
 
An Introduction to OpenStack Heat
An Introduction to OpenStack HeatAn Introduction to OpenStack Heat
An Introduction to OpenStack HeatMirantis
 
Enforcing Application SLA with Congress and Monasca
Enforcing Application SLA with Congress and MonascaEnforcing Application SLA with Congress and Monasca
Enforcing Application SLA with Congress and MonascaFabio Giannetti
 
Blueprint: Kafka Publisher of Ceilometer
Blueprint: Kafka Publisher of CeilometerBlueprint: Kafka Publisher of Ceilometer
Blueprint: Kafka Publisher of CeilometerKomei Shimamura
 
Template Languages for OpenStack - Heat and TOSCA
Template Languages for OpenStack - Heat and TOSCATemplate Languages for OpenStack - Heat and TOSCA
Template Languages for OpenStack - Heat and TOSCACloud Native Day Tel Aviv
 
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Nick Galbreath
 
Scaling Graphite At Yelp
Scaling Graphite At YelpScaling Graphite At Yelp
Scaling Graphite At YelpPaul O'Connor
 
Device status anomaly detection
Device status anomaly detectionDevice status anomaly detection
Device status anomaly detectionDavid Tung
 
CEP Integration for Apache Stratos 4.0.0
CEP Integration for Apache Stratos 4.0.0CEP Integration for Apache Stratos 4.0.0
CEP Integration for Apache Stratos 4.0.0Manula Thantriwatte
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds upKiran Murari
 
Spark Summit EU talk by Sital Kedia
Spark Summit EU talk by Sital KediaSpark Summit EU talk by Sital Kedia
Spark Summit EU talk by Sital KediaSpark Summit
 
Watcher, a Resource Manager for OpenStack: Plans for the N-release and Beyond
Watcher, a Resource Manager for OpenStack: Plans for the N-release and BeyondWatcher, a Resource Manager for OpenStack: Plans for the N-release and Beyond
Watcher, a Resource Manager for OpenStack: Plans for the N-release and BeyondAntoine Cabot
 
Deployment Automation on OpenStack with TOSCA and Cloudify
Deployment Automation on OpenStack with  TOSCA and CloudifyDeployment Automation on OpenStack with  TOSCA and Cloudify
Deployment Automation on OpenStack with TOSCA and CloudifyCloudify Community
 
Fall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using GrafanaFall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using Grafanatorkelo
 
PromQL Deep Dive - The Prometheus Query Language
PromQL Deep Dive - The Prometheus Query Language PromQL Deep Dive - The Prometheus Query Language
PromQL Deep Dive - The Prometheus Query Language Weaveworks
 
Monitoring kubernetes across data center and cloud
Monitoring kubernetes across data center and cloudMonitoring kubernetes across data center and cloud
Monitoring kubernetes across data center and cloudDatadog
 
OpenWhisk: Where Did My Servers Go?
OpenWhisk: Where Did My Servers Go?OpenWhisk: Where Did My Servers Go?
OpenWhisk: Where Did My Servers Go?Carlos Santana
 
Spark with kubernates
Spark with kubernatesSpark with kubernates
Spark with kubernatesDavid Tung
 

Was ist angesagt? (20)

OpenStack Orchestration with Heat
OpenStack Orchestration with HeatOpenStack Orchestration with Heat
OpenStack Orchestration with Heat
 
Openstack heat & How Autoscaling works
Openstack heat & How Autoscaling worksOpenstack heat & How Autoscaling works
Openstack heat & How Autoscaling works
 
Ceilo componentization diagrams
Ceilo componentization diagramsCeilo componentization diagrams
Ceilo componentization diagrams
 
An Introduction to OpenStack Heat
An Introduction to OpenStack HeatAn Introduction to OpenStack Heat
An Introduction to OpenStack Heat
 
Enforcing Application SLA with Congress and Monasca
Enforcing Application SLA with Congress and MonascaEnforcing Application SLA with Congress and Monasca
Enforcing Application SLA with Congress and Monasca
 
Blueprint: Kafka Publisher of Ceilometer
Blueprint: Kafka Publisher of CeilometerBlueprint: Kafka Publisher of Ceilometer
Blueprint: Kafka Publisher of Ceilometer
 
Template Languages for OpenStack - Heat and TOSCA
Template Languages for OpenStack - Heat and TOSCATemplate Languages for OpenStack - Heat and TOSCA
Template Languages for OpenStack - Heat and TOSCA
 
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
 
Scaling Graphite At Yelp
Scaling Graphite At YelpScaling Graphite At Yelp
Scaling Graphite At Yelp
 
Device status anomaly detection
Device status anomaly detectionDevice status anomaly detection
Device status anomaly detection
 
CEP Integration for Apache Stratos 4.0.0
CEP Integration for Apache Stratos 4.0.0CEP Integration for Apache Stratos 4.0.0
CEP Integration for Apache Stratos 4.0.0
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds up
 
Spark Summit EU talk by Sital Kedia
Spark Summit EU talk by Sital KediaSpark Summit EU talk by Sital Kedia
Spark Summit EU talk by Sital Kedia
 
Watcher, a Resource Manager for OpenStack: Plans for the N-release and Beyond
Watcher, a Resource Manager for OpenStack: Plans for the N-release and BeyondWatcher, a Resource Manager for OpenStack: Plans for the N-release and Beyond
Watcher, a Resource Manager for OpenStack: Plans for the N-release and Beyond
 
Deployment Automation on OpenStack with TOSCA and Cloudify
Deployment Automation on OpenStack with  TOSCA and CloudifyDeployment Automation on OpenStack with  TOSCA and Cloudify
Deployment Automation on OpenStack with TOSCA and Cloudify
 
Fall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using GrafanaFall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using Grafana
 
PromQL Deep Dive - The Prometheus Query Language
PromQL Deep Dive - The Prometheus Query Language PromQL Deep Dive - The Prometheus Query Language
PromQL Deep Dive - The Prometheus Query Language
 
Monitoring kubernetes across data center and cloud
Monitoring kubernetes across data center and cloudMonitoring kubernetes across data center and cloud
Monitoring kubernetes across data center and cloud
 
OpenWhisk: Where Did My Servers Go?
OpenWhisk: Where Did My Servers Go?OpenWhisk: Where Did My Servers Go?
OpenWhisk: Where Did My Servers Go?
 
Spark with kubernates
Spark with kubernatesSpark with kubernates
Spark with kubernates
 

Andere mochten auch

클라우드 컴퓨팅 환경에서의 미터링 공개용
클라우드 컴퓨팅 환경에서의 미터링 공개용클라우드 컴퓨팅 환경에서의 미터링 공개용
클라우드 컴퓨팅 환경에서의 미터링 공개용OnTheWheel
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSShixiong Shang
 
CloudOps CloudStack Days, Austin April 2015
CloudOps CloudStack Days, Austin April 2015CloudOps CloudStack Days, Austin April 2015
CloudOps CloudStack Days, Austin April 2015CloudOps2005
 
Heat monasca auto scale
Heat monasca auto scaleHeat monasca auto scale
Heat monasca auto scaleKanagaraj M
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02Jinho Shin
 
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)Hunter Shin
 
OpenStack Best Practices and Considerations - terasky tech day
OpenStack Best Practices and Considerations  - terasky tech dayOpenStack Best Practices and Considerations  - terasky tech day
OpenStack Best Practices and Considerations - terasky tech dayArthur Berezin
 
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업OpenStack Korea Community
 

Andere mochten auch (9)

클라우드 컴퓨팅 환경에서의 미터링 공개용
클라우드 컴퓨팅 환경에서의 미터링 공개용클라우드 컴퓨팅 환경에서의 미터링 공개용
클라우드 컴퓨팅 환경에서의 미터링 공개용
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
 
CloudOps CloudStack Days, Austin April 2015
CloudOps CloudStack Days, Austin April 2015CloudOps CloudStack Days, Austin April 2015
CloudOps CloudStack Days, Austin April 2015
 
Heat monasca auto scale
Heat monasca auto scaleHeat monasca auto scale
Heat monasca auto scale
 
OpenStack Heat
OpenStack HeatOpenStack Heat
OpenStack Heat
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02
 
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)
에너지 관리시스템 구축모델 및 합리적 운영방법 (ML)
 
OpenStack Best Practices and Considerations - terasky tech day
OpenStack Best Practices and Considerations  - terasky tech dayOpenStack Best Practices and Considerations  - terasky tech day
OpenStack Best Practices and Considerations - terasky tech day
 
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
 

Ähnlich wie Ceilometer + Heat = Alarming

Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivSelf Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivAmazon Web Services
 
Autoscaling in kubernetes v1
Autoscaling in kubernetes v1Autoscaling in kubernetes v1
Autoscaling in kubernetes v1JurajHantk
 
Scalable and Fault-Tolerant Apps with AWS
Scalable and Fault-Tolerant Apps with AWSScalable and Fault-Tolerant Apps with AWS
Scalable and Fault-Tolerant Apps with AWSFernando Rodriguez
 
TSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech TalkTSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech TalkAnirudh Todi
 
以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界Amazon Web Services
 
Monitoring und Metriken im Wunderland
Monitoring und Metriken im WunderlandMonitoring und Metriken im Wunderland
Monitoring und Metriken im WunderlandD
 
eBay Pulsar: Real-time analytics platform
eBay Pulsar: Real-time analytics platformeBay Pulsar: Real-time analytics platform
eBay Pulsar: Real-time analytics platformKyoungMo Yang
 
Building a serverless company on AWS lambda and Serverless framework
Building a serverless company on AWS lambda and Serverless frameworkBuilding a serverless company on AWS lambda and Serverless framework
Building a serverless company on AWS lambda and Serverless frameworkLuciano Mammino
 
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...Amazon Web Services
 
Fabric - Realtime stream processing framework
Fabric - Realtime stream processing frameworkFabric - Realtime stream processing framework
Fabric - Realtime stream processing frameworkShashank Gautam
 
Infrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitInfrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitDanilo Poccia
 
Operator Lifecycle Management
Operator Lifecycle ManagementOperator Lifecycle Management
Operator Lifecycle ManagementDoKC
 
Operator Lifecycle Management
Operator Lifecycle ManagementOperator Lifecycle Management
Operator Lifecycle ManagementDoKC
 
I want my model to be deployed ! (another story of MLOps)
I want my model to be deployed ! (another story of MLOps)I want my model to be deployed ! (another story of MLOps)
I want my model to be deployed ! (another story of MLOps)AZUG FR
 
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...Nagios
 
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013Amazon Web Services
 

Ähnlich wie Ceilometer + Heat = Alarming (20)

Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel AvivSelf Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
Self Service Agile Infrastructure for Product Teams - Pop-up Loft Tel Aviv
 
Autoscaling in kubernetes v1
Autoscaling in kubernetes v1Autoscaling in kubernetes v1
Autoscaling in kubernetes v1
 
Scalable and Fault-Tolerant Apps with AWS
Scalable and Fault-Tolerant Apps with AWSScalable and Fault-Tolerant Apps with AWS
Scalable and Fault-Tolerant Apps with AWS
 
TSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech TalkTSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech Talk
 
Tsar tech talk
Tsar tech talkTsar tech talk
Tsar tech talk
 
以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界以Device Shadows與Rules Engine串聯實體世界
以Device Shadows與Rules Engine串聯實體世界
 
Openstack Heat
Openstack HeatOpenstack Heat
Openstack Heat
 
Monitoring und Metriken im Wunderland
Monitoring und Metriken im WunderlandMonitoring und Metriken im Wunderland
Monitoring und Metriken im Wunderland
 
eBay Pulsar: Real-time analytics platform
eBay Pulsar: Real-time analytics platformeBay Pulsar: Real-time analytics platform
eBay Pulsar: Real-time analytics platform
 
Building a serverless company on AWS lambda and Serverless framework
Building a serverless company on AWS lambda and Serverless frameworkBuilding a serverless company on AWS lambda and Serverless framework
Building a serverless company on AWS lambda and Serverless framework
 
AWS IoT Deep Dive
AWS IoT Deep DiveAWS IoT Deep Dive
AWS IoT Deep Dive
 
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...
Re:inventing EC2 Instance Launches with Launch Templates - SRV335 - Chicago A...
 
Fabric - Realtime stream processing framework
Fabric - Realtime stream processing frameworkFabric - Realtime stream processing framework
Fabric - Realtime stream processing framework
 
Infrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with GitInfrastructure as Code: Manage your Architecture with Git
Infrastructure as Code: Manage your Architecture with Git
 
Operator Lifecycle Management
Operator Lifecycle ManagementOperator Lifecycle Management
Operator Lifecycle Management
 
Operator Lifecycle Management
Operator Lifecycle ManagementOperator Lifecycle Management
Operator Lifecycle Management
 
I want my model to be deployed ! (another story of MLOps)
I want my model to be deployed ! (another story of MLOps)I want my model to be deployed ! (another story of MLOps)
I want my model to be deployed ! (another story of MLOps)
 
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
 
SRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoTSRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoT
 
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013
Zero to Sixty: AWS CloudFormation (DMG201) | AWS re:Invent 2013
 

Mehr von Nicolas (Nick) Barcet

Bringing Cloud Native Innovation to the Enterprise
Bringing Cloud Native Innovation to the EnterpriseBringing Cloud Native Innovation to the Enterprise
Bringing Cloud Native Innovation to the EnterpriseNicolas (Nick) Barcet
 
Don't change my mindset, I'm not that open
Don't change my mindset, I'm not that openDon't change my mindset, I'm not that open
Don't change my mindset, I'm not that openNicolas (Nick) Barcet
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsNicolas (Nick) Barcet
 
OpenStack Paris Meetup on Nfv 2014/10/07
OpenStack Paris Meetup on Nfv 2014/10/07OpenStack Paris Meetup on Nfv 2014/10/07
OpenStack Paris Meetup on Nfv 2014/10/07Nicolas (Nick) Barcet
 
Are enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationAre enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationNicolas (Nick) Barcet
 

Mehr von Nicolas (Nick) Barcet (8)

Bringing Cloud Native Innovation to the Enterprise
Bringing Cloud Native Innovation to the EnterpriseBringing Cloud Native Innovation to the Enterprise
Bringing Cloud Native Innovation to the Enterprise
 
OpenStack Israel 2015 keynote
OpenStack Israel 2015 keynoteOpenStack Israel 2015 keynote
OpenStack Israel 2015 keynote
 
Don't change my mindset, I'm not that open
Don't change my mindset, I'm not that openDon't change my mindset, I'm not that open
Don't change my mindset, I'm not that open
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
 
OpenStack Paris Meetup on Nfv 2014/10/07
OpenStack Paris Meetup on Nfv 2014/10/07OpenStack Paris Meetup on Nfv 2014/10/07
OpenStack Paris Meetup on Nfv 2014/10/07
 
Are enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationAre enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformation
 
Building clouds as a cloud factory
Building clouds as a cloud factoryBuilding clouds as a cloud factory
Building clouds as a cloud factory
 
A View from the Board
A View from the BoardA View from the Board
A View from the Board
 

Kürzlich hochgeladen

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Kürzlich hochgeladen (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Ceilometer + Heat = Alarming

  • 1. ceilometer Ceilometer Heat Alarming Alarming Julien Danjou jd__@Freenode // @juldanjou julien@danjou.info Nick Barcet nijaba@Freenode // @nijaba nick@enovance.com Eoghan Glynn eglynn@Freenode eglynn@redhat.com
  • 2. Speakers ● Nick Barcet co-founded the Ceilometer project at the Folsom summit and led the project through incubation ● Julien Danjou has been a core Ceilometer contributor from the outset, taking over the PTL reins for Havana ● Eoghan Glynn drove the addition of the Alarming feature to Ceilometer over the Havana cycle
  • 3. Two seemingly disjoint projects intersect ● Heat is a template-driven orchestration engine ○ automates complex deployments via declarative configuration ● Ceilometer is a metering infrastructure ○ collects data measuring resource usage and performance ● Appear on the surface to have minimal commonality ...
  • 4. Ceilometer Workflow Collect Transform Publish Store Aggregate ● Collect from OpenStack components ● Transform metering data if necessary ● Publish meters to any destination (including Ceilometer itself) ● Store received meters ● Aggregate samples via a REST API
  • 5. Heat Workflow my_stack.template { "AWSTemplateFormat" : "2010-09-09", "Parameters": { "VolumeSize" : { … } } "Mappings": { "Flavor2Arch" : { "tiny": {"Arch" : "64" }, ... }, "Resources": { "MyInstance" : { "Type" : "AWS::EC2::Instance", "Properties" : { “Volumes” : […] } } } }, "Outputs": { "DNS" : { "Value" : { … } } } }
  • 6. Heat Workflow { "AWSTemplateFormat" : "2010-0909", "Parameters": { "VolumeSize" : { … }} "Mappings": { "Flavor2Arch" : { "tiny": {"Arch" : "64" }, ... }, "Resources": { "MyInstance" : { "Type" : "AWS::EC2::Instance", "Properties" : { “Volumes” : […] } } } }, "Outputs": { "DNS" : { "Value" : { … } }}} consumed by Heat Engine
  • 7. Heat Workflow { "AWSTemplateFormat" : "2010-0909", "Parameters": { "VolumeSize" : { … }} "Mappings": { "Flavor2Arch" : { "tiny": {"Arch" : "64" }, ... }, "Resources": { "MyInstance" : { "Type" : "AWS::EC2::Instance", "Properties" : { “Volumes” : […] } } } }, "Outputs": { "DNS" : { "Value" : { … } }}} consumed by interacts with Heat Engine
  • 8. Heat Workflow { "AWSTemplateFormat" : "2010-0909", "Parameters": { "VolumeSize" : { … }} "Mappings": { "Flavor2Arch" : { "tiny": {"Arch" : "64" }, ... }, "Resources": { "MyInstance" : { "Type" : "AWS::EC2::Instance", "Properties" : { “Volumes” : […] } } } }, "Outputs": { "DNS" : { "Value" : { … } }}} consumed by interacts with Heat Engine my_stack Instance Volume spins up
  • 10. Heat Autoscaling v1.0 Heat Engine reports load scales out stack my_stack Instance Instance Instance
  • 11. Heat Autoscaling v1.0 Heat Engine reports load scales out stack my_stack Instance Instance Instance Instance
  • 12. Ceilometer to the rescue! ● compute agent already collects most relevant stats from outside the instance ● API service exposes aggregation over the evaluation window ● define new API exposing alarm lifecycle ● provide new service to evaluate alarms against their defined rules ● additional service driving asynchronous notifications when alarms fire
  • 13. How it all hangs together { "AWSTemplateFormat" : "2010-0909", "Parameters": { "VolumeSize" : { … }} "Mappings": { "Flavor2Arch" : { "tiny": {"Arch" : "64" }, ... }, "Resources": { "MyInstance" : { "Type" : "AWS::EC2::Instance", "Properties" : { “Volumes” : […] } } } }, "Outputs": { "DNS" : { "Value" : { … } }}} added to template ● alarms bounding busy/idleness of instances ● membership of autoscale group represented via user metadata ● alarm actions refer to scale up/down policies ● action URLs are pre-signed ● policies define adjustment step size & cooldown period
  • 14. How it all hangs together "CPUAlarmHigh": { "Type": "OS::Metering::Alarm", "Properties": { "meter_name": "cpu_util", threshold: "75" "evaluation_periods": "5", "period": "60", "statistic": "avg", "comparison_operator": "gt", "description": "Scale-up if CPU > 75% for 300s", "alarm_actions":[…"ScaleUpPolicy", "AlarmUrl"…], "matching_metadata": { "metadata.user_metadata.server_group": "MyWebServerGroup" }}}
  • 15. How it all hangs together Heat Engine injects user metadata my_stack Instance
  • 16. How it all hangs together Heat Engine injects user metadata my_stack Instance API service Ceilometer creates alarms
  • 17. How it all hangs together API service Heat Engine injects user metadata my_stack Instance monitors instances Compute Agent Ceilometer creates alarms
  • 18. How it all hangs together API service Heat Engine injects user metadata my_stack Instance triggers alarm monitors instances Alarm evaluator Compute Agent Ceilometer creates alarms
  • 19. How it all hangs together alarming Heat Engine Alarms injects user metadata my_stack Instance Instance Instance scales out stack Compute Ceilometer API
  • 20. How it all hangs together alarming Heat Engine Alarms injects user metadata my_stack Instance Instance Instance Instance Instance scales out stack Compute Ceilometer API
  • 21. How it all hangs together API service my_stack Meter store Instance provides alarm rules queries stats reports samples Compute Agent Alarm evaluator Ceilometer Heat Engine
  • 22. Lessons learned Keys to successful intra-project interactions: ● buy-in from stakeholders on both sides ● early validation and proof-points ● protect consuming project from churn during the development cycle ● split deliverables into bite-sized separately consumable chunks
  • 23. Future directions ● expand metering coverage to also capture: ○ memory utilization % ○ LBaaS statistics ○ network & disk I/O rates ● add combination alarm support to Heat templates ○ allow thresholds over multiple metrics to be modeled ● exclude low-quality datapoints ○ avoid scaling when only outliers have reported metrics
  • 24. Future directions ● monitor baremetal via IPMI or SNMP ○ autoscale groups of hosts managed as Ironic instances ● constrain alarms for time-of-day or day-of-week ○ e.g. set the bar higher on weekends, lower on weekdays ● decouple autoscaling usage from Heat templates ● authenticate webhook calls with keystone trusts ○ avoid ec2-signer use without keystone EC2 tokens ext
  • 25. Further questions? ● Chat on Freenode: ○ #openstack-metering ○ #heat ● Mail the dev list: ○ openstack-dev@lists.openstack.org ● Harangue us via Launchpad: ○ https://launchpad.net/ceilometer/+filebug