SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
Nicolas Brousse
Director, Operations Engineering
Bringing Business Awareness
to Your Operation Team
Nagios World Conference 2013
About TubeMogul...
● Founded in 2006
● Formerly a video distribution and analytics platform
● TubeMogul is a Brand-Focused Video Marketing
Company
○ Build for Branding
○ Integrate real-time media buying, ad serving, targeting,
optimization and brand measurement
TubeMogul simplifies the delivery of video ads and
maximizes the impact of every dollar spent by brand
marketers
http://www.tubemogul.com
About TubeMogul...
● Monitoring between 800 and 1000 servers
● Servers spread across 6 different locations
○ 4 Amazon EC2 Regions
○ 1 Hosted (Liquidweb) & 1 VPS (Linode)
● Little monitoring resources
○ Collecting over 120,000 metrics
○ Monitoring over 20,000 services with Nagios
● Multiple billions of HTTP requests a day
○ Most of it must be served in less than 100ms
○ Lost of traffic could mean lost of business opportunity
○ Or worst, over-spending…
Our Environment
● Over 80 different server profiles
● Our stack:
○ Java (Embedded Jetty, Tomcat)
○ PHP, RoR
○ Hadoop: HDFS, M/R, Hbase, Hive
○ Couchbase
○ MySQL, Vertica
○ ElasticSearch
● Monitoring: Nagios, NSCA
● Graphing: Ganglia, sFlow, Graphite
● Configuration Management: Puppet
Amazon Cloud Environment
Amazon Cloud Environment
● We use EC2, SDB, SQS, EMR, S3, etc.
● We don’t use ELB
● We heavily use EC2 Tags
ec2-describe-instances -F tag:hostname=dev-build01
Automated Monitoring
Automated Monitoring
Process of event when starting a new host and add it to our monitoring:
1. We start a new instance using Cerveza and Cloud-init
2. Puppet configure Gmond or Host sFlow on the instance
3. Our monitoring server running Gmond and Gmetad get data from the new
instance
4. A Nagios check run every minute and check for new hosts
○ Look for new hosts using EC2 API
○ Look for EC2 tag “hostname” to confirm it’s a legit host, not a zombie / fail start
○ Look for EC2 tag “nagios_host” to see if the host belong to this monitoring instance
5. If a new host is found:
○ We build a config for the host based on a template file and doing some string replace
○ Once all config have been generated, we rebuild pre-cache objects and reload Nagios
6. If we find “Zombie” host, we generate a Warning alert
7. If the config is corrupt, we send a Critical alert
Efficient Monitoring
We reduce noise by disabling most notifications and using our "cluster check"
Efficient Monitoring
Efficient Monitoring
Efficient on-call rotation
● Follow the sun
○ OPS team is in Ukraine, no more Tier 1 night on-call for US Team
● Timeperiod and escalation are a pain to maintain
○ Nagios notification plugged to Google Calendar
■ Using our own notification script for email and paging
■ Google Calendar make it easy for each team to manage their
own on-call calendar
■ Support for multiple Tier and complex schedules
■ Caching Google Calendar info locally every hour
○ Simpler definitions and rules in Nagios contacts
○ Notify only people on-call, unless they asked for “off
call” emails
Efficient on-call rotation
Efficient on-call rotation
● Simple contact definitions
● Google Calendar info
● Tier Filter (Regex)
● Tier Interval (time to wait before escalating alert since
last tier)
● Off call email
Efficient on-call rotation
● Centralized dashboard!
○ Plugged to Google Apps
○ List all on-call contacts
Efficient on-call rotation
● Centralized View of Multiple Nagios!
Efficient on-call rotation
Efficient on-call rotation
Business Awareness!
Now that I know what is
breaking…
Which one should I fix first?
Business Awareness!
Service Health Dashboard!
Business Awareness!
● A service represent a Business Critical function
● A service can be global or limited to a region
● A service is defined by multiple Service Component
○ We use Nagios Event Handler to update services
component status
○ REST API dashboard allow easy update from third
party monitoring, QA test, scripts, crons, Nagios
● We can define service SLA and quickly see SLA
breaking (based on OLA)
● OPS Team can perform more actions, post comments,
link to Jira tickets
Business Awareness!
Business Awareness!
Business Awareness!
Business Awareness!
Business Awareness!
Business Awareness!
Business Awareness!
Business Awareness!
How do we make sure we answer the business
needs?
● Review SLAs and monitoring configurations
monthly/quarterly
● Have a checklist when launching new
product or features
○ We now have a SRE Hand-off Checklist with
detailed questions
○ How is capacity planning done?
○ Who can have an impact on traffic, storage, etc?
○ Make sure to ask about expected OLAs or SLAs
To summarize...
● We easily automate our deployment across
multiple geos
● We control the noise
● We easily schedule our on-call rotations
● In one location we know everything
● We know what is impacting the business
and how we should prioritize our actions
Team Process - Daily Kanban!
Request based on
Dashboards,
Monitoring, Paging or
Engineers
Ticket categorized in two Swimlane:
● Production Support
○ High Priority: Top to Bottom
○ On-call 24/7, OLAs, SLAs...
○ Incident are handled 1st
○ Maintenance are handled 2nd
● Developer Support
○ Best Effort: Top to Bottom
○ Long effort request moved to
Infrastructure pipeline
Team Process - Long Term Agile!
Request moved from OPS to INF
SRE Hand-off Checklist used to
define Epic, Story and Tasks
Do
Plan
Check Act
All this wouldn’t be possible without a strong
SRE Operation Engineering team:
Aleksey Mykhailov
Marylene Tanfin
Mykola Mogylenko
Nicolas Brousse
Pierre Gohon
Pierre Grandin
Stan Rudenko
OPS @ TubeMogul
We are Hiring !
http://www.tubemogul.com/jobs

Más contenido relacionado

Similar a Nagios Conference 2013 - Nicolas Brousse - Bringing Business Awareness

Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ UberKafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
confluent
 
Aws uk ug #8 not everything that happens in vegas stay in vegas
Aws uk ug #8   not everything that happens in vegas stay in vegasAws uk ug #8   not everything that happens in vegas stay in vegas
Aws uk ug #8 not everything that happens in vegas stay in vegas
Peter Mounce
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Severalnines
 

Similar a Nagios Conference 2013 - Nicolas Brousse - Bringing Business Awareness (20)

Ridwan Fadjar Septian PyCon ID 2021 Regular Talk - django application monitor...
Ridwan Fadjar Septian PyCon ID 2021 Regular Talk - django application monitor...Ridwan Fadjar Septian PyCon ID 2021 Regular Talk - django application monitor...
Ridwan Fadjar Septian PyCon ID 2021 Regular Talk - django application monitor...
 
JUST EAT: Embracing DevOps
JUST EAT: Embracing DevOpsJUST EAT: Embracing DevOps
JUST EAT: Embracing DevOps
 
InterCon 2016 - SLA vs Agilidade: uso de microserviços e monitoramento de cloud
InterCon 2016 - SLA vs Agilidade: uso de microserviços e monitoramento de cloudInterCon 2016 - SLA vs Agilidade: uso de microserviços e monitoramento de cloud
InterCon 2016 - SLA vs Agilidade: uso de microserviços e monitoramento de cloud
 
QueueMetrics - Tips and Tricks
QueueMetrics - Tips and TricksQueueMetrics - Tips and Tricks
QueueMetrics - Tips and Tricks
 
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
 
Optimizing your Monitoring and Trending tools for the Cloud (Nagios World Con...
Optimizing your Monitoring and Trending tools for the Cloud (Nagios World Con...Optimizing your Monitoring and Trending tools for the Cloud (Nagios World Con...
Optimizing your Monitoring and Trending tools for the Cloud (Nagios World Con...
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
 
Splunk in Nordstrom: IT Operations
Splunk in Nordstrom: IT OperationsSplunk in Nordstrom: IT Operations
Splunk in Nordstrom: IT Operations
 
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ UberKafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
 
How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product
 
Aws uk ug #8 not everything that happens in vegas stay in vegas
Aws uk ug #8   not everything that happens in vegas stay in vegasAws uk ug #8   not everything that happens in vegas stay in vegas
Aws uk ug #8 not everything that happens in vegas stay in vegas
 
Mds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to herokuMds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to heroku
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
 
Getting Started with PHP on Engine Yard Cloud
Getting Started with PHP on Engine Yard CloudGetting Started with PHP on Engine Yard Cloud
Getting Started with PHP on Engine Yard Cloud
 
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
 
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
 
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORINGEko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
 
SplunkLive! Utrecht 2017 - Coolblue Customer Presentation
SplunkLive! Utrecht 2017 - Coolblue Customer PresentationSplunkLive! Utrecht 2017 - Coolblue Customer Presentation
SplunkLive! Utrecht 2017 - Coolblue Customer Presentation
 
Reactive Cloud Security | AWS Public Sector Summit 2016
Reactive Cloud Security | AWS Public Sector Summit 2016Reactive Cloud Security | AWS Public Sector Summit 2016
Reactive Cloud Security | AWS Public Sector Summit 2016
 

Más de Nagios

Más de Nagios (20)

Nagios XI Best Practices
Nagios XI Best PracticesNagios XI Best Practices
Nagios XI Best Practices
 
Jesse Olson - Nagios Log Server Architecture Overview
Jesse Olson - Nagios Log Server Architecture OverviewJesse Olson - Nagios Log Server Architecture Overview
Jesse Olson - Nagios Log Server Architecture Overview
 
Trevor McDonald - Nagios XI Under The Hood
Trevor McDonald  - Nagios XI Under The HoodTrevor McDonald  - Nagios XI Under The Hood
Trevor McDonald - Nagios XI Under The Hood
 
Sean Falzon - Nagios - Resilient Notifications
Sean Falzon - Nagios - Resilient NotificationsSean Falzon - Nagios - Resilient Notifications
Sean Falzon - Nagios - Resilient Notifications
 
Marcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise Edition
Marcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise EditionMarcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise Edition
Marcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise Edition
 
Janice Singh - Writing Custom Nagios Plugins
Janice Singh - Writing Custom Nagios PluginsJanice Singh - Writing Custom Nagios Plugins
Janice Singh - Writing Custom Nagios Plugins
 
Dave Williams - Nagios Log Server - Practical Experience
Dave Williams - Nagios Log Server - Practical ExperienceDave Williams - Nagios Log Server - Practical Experience
Dave Williams - Nagios Log Server - Practical Experience
 
Mike Weber - Nagios and Group Deployment of Service Checks
Mike Weber - Nagios and Group Deployment of Service ChecksMike Weber - Nagios and Group Deployment of Service Checks
Mike Weber - Nagios and Group Deployment of Service Checks
 
Mike Guthrie - Revamping Your 10 Year Old Nagios Installation
Mike Guthrie - Revamping Your 10 Year Old Nagios InstallationMike Guthrie - Revamping Your 10 Year Old Nagios Installation
Mike Guthrie - Revamping Your 10 Year Old Nagios Installation
 
Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...
Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...
Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...
 
Matt Bruzek - Monitoring Your Public Cloud With Nagios
Matt Bruzek - Monitoring Your Public Cloud With NagiosMatt Bruzek - Monitoring Your Public Cloud With Nagios
Matt Bruzek - Monitoring Your Public Cloud With Nagios
 
Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.
Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.
Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.
 
Eric Loyd - Fractal Nagios
Eric Loyd - Fractal NagiosEric Loyd - Fractal Nagios
Eric Loyd - Fractal Nagios
 
Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...
Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...
Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...
 
Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...
Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...
Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...
 
Nagios World Conference 2015 - Scott Wilkerson Opening
Nagios World Conference 2015 - Scott Wilkerson OpeningNagios World Conference 2015 - Scott Wilkerson Opening
Nagios World Conference 2015 - Scott Wilkerson Opening
 
Nrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios Core
Nrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios CoreNrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios Core
Nrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios Core
 
Nagios Log Server - Features
Nagios Log Server - FeaturesNagios Log Server - Features
Nagios Log Server - Features
 
Nagios Network Analyzer - Features
Nagios Network Analyzer - FeaturesNagios Network Analyzer - Features
Nagios Network Analyzer - Features
 
Nagios Conference 2014 - Dorance Martinez Cortes - Customizing Nagios
Nagios Conference 2014 - Dorance Martinez Cortes - Customizing NagiosNagios Conference 2014 - Dorance Martinez Cortes - Customizing Nagios
Nagios Conference 2014 - Dorance Martinez Cortes - Customizing Nagios
 

Último

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
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
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...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Nagios Conference 2013 - Nicolas Brousse - Bringing Business Awareness

  • 1. Nicolas Brousse Director, Operations Engineering Bringing Business Awareness to Your Operation Team Nagios World Conference 2013
  • 2. About TubeMogul... ● Founded in 2006 ● Formerly a video distribution and analytics platform ● TubeMogul is a Brand-Focused Video Marketing Company ○ Build for Branding ○ Integrate real-time media buying, ad serving, targeting, optimization and brand measurement TubeMogul simplifies the delivery of video ads and maximizes the impact of every dollar spent by brand marketers http://www.tubemogul.com
  • 3. About TubeMogul... ● Monitoring between 800 and 1000 servers ● Servers spread across 6 different locations ○ 4 Amazon EC2 Regions ○ 1 Hosted (Liquidweb) & 1 VPS (Linode) ● Little monitoring resources ○ Collecting over 120,000 metrics ○ Monitoring over 20,000 services with Nagios ● Multiple billions of HTTP requests a day ○ Most of it must be served in less than 100ms ○ Lost of traffic could mean lost of business opportunity ○ Or worst, over-spending…
  • 4. Our Environment ● Over 80 different server profiles ● Our stack: ○ Java (Embedded Jetty, Tomcat) ○ PHP, RoR ○ Hadoop: HDFS, M/R, Hbase, Hive ○ Couchbase ○ MySQL, Vertica ○ ElasticSearch ● Monitoring: Nagios, NSCA ● Graphing: Ganglia, sFlow, Graphite ● Configuration Management: Puppet
  • 6. Amazon Cloud Environment ● We use EC2, SDB, SQS, EMR, S3, etc. ● We don’t use ELB ● We heavily use EC2 Tags ec2-describe-instances -F tag:hostname=dev-build01
  • 8. Automated Monitoring Process of event when starting a new host and add it to our monitoring: 1. We start a new instance using Cerveza and Cloud-init 2. Puppet configure Gmond or Host sFlow on the instance 3. Our monitoring server running Gmond and Gmetad get data from the new instance 4. A Nagios check run every minute and check for new hosts ○ Look for new hosts using EC2 API ○ Look for EC2 tag “hostname” to confirm it’s a legit host, not a zombie / fail start ○ Look for EC2 tag “nagios_host” to see if the host belong to this monitoring instance 5. If a new host is found: ○ We build a config for the host based on a template file and doing some string replace ○ Once all config have been generated, we rebuild pre-cache objects and reload Nagios 6. If we find “Zombie” host, we generate a Warning alert 7. If the config is corrupt, we send a Critical alert
  • 9. Efficient Monitoring We reduce noise by disabling most notifications and using our "cluster check"
  • 12. Efficient on-call rotation ● Follow the sun ○ OPS team is in Ukraine, no more Tier 1 night on-call for US Team ● Timeperiod and escalation are a pain to maintain ○ Nagios notification plugged to Google Calendar ■ Using our own notification script for email and paging ■ Google Calendar make it easy for each team to manage their own on-call calendar ■ Support for multiple Tier and complex schedules ■ Caching Google Calendar info locally every hour ○ Simpler definitions and rules in Nagios contacts ○ Notify only people on-call, unless they asked for “off call” emails
  • 14. Efficient on-call rotation ● Simple contact definitions ● Google Calendar info ● Tier Filter (Regex) ● Tier Interval (time to wait before escalating alert since last tier) ● Off call email
  • 15. Efficient on-call rotation ● Centralized dashboard! ○ Plugged to Google Apps ○ List all on-call contacts
  • 16. Efficient on-call rotation ● Centralized View of Multiple Nagios!
  • 19. Business Awareness! Now that I know what is breaking… Which one should I fix first?
  • 21. Business Awareness! ● A service represent a Business Critical function ● A service can be global or limited to a region ● A service is defined by multiple Service Component ○ We use Nagios Event Handler to update services component status ○ REST API dashboard allow easy update from third party monitoring, QA test, scripts, crons, Nagios ● We can define service SLA and quickly see SLA breaking (based on OLA) ● OPS Team can perform more actions, post comments, link to Jira tickets
  • 29. Business Awareness! How do we make sure we answer the business needs? ● Review SLAs and monitoring configurations monthly/quarterly ● Have a checklist when launching new product or features ○ We now have a SRE Hand-off Checklist with detailed questions ○ How is capacity planning done? ○ Who can have an impact on traffic, storage, etc? ○ Make sure to ask about expected OLAs or SLAs
  • 30. To summarize... ● We easily automate our deployment across multiple geos ● We control the noise ● We easily schedule our on-call rotations ● In one location we know everything ● We know what is impacting the business and how we should prioritize our actions
  • 31. Team Process - Daily Kanban! Request based on Dashboards, Monitoring, Paging or Engineers Ticket categorized in two Swimlane: ● Production Support ○ High Priority: Top to Bottom ○ On-call 24/7, OLAs, SLAs... ○ Incident are handled 1st ○ Maintenance are handled 2nd ● Developer Support ○ Best Effort: Top to Bottom ○ Long effort request moved to Infrastructure pipeline
  • 32. Team Process - Long Term Agile! Request moved from OPS to INF SRE Hand-off Checklist used to define Epic, Story and Tasks Do Plan Check Act
  • 33. All this wouldn’t be possible without a strong SRE Operation Engineering team: Aleksey Mykhailov Marylene Tanfin Mykola Mogylenko Nicolas Brousse Pierre Gohon Pierre Grandin Stan Rudenko OPS @ TubeMogul
  • 34. We are Hiring ! http://www.tubemogul.com/jobs