Monitoring your VM's at Scale

Kris Buytaert
Kris BuytaertDevops, Linux and Open Source Expert at Inuits
Beyond VM deployment
   Monitoring your VM's at scale
           Kris Buytaert
Kris Buytaert
●   I used to be a Dev,
●   Then Became an Op
●   Chief Trolling Officer and Open Source
    Consultant @inuits.eu
●   Everything is an effing DNS Problem
●   Building Clouds since before the bookstore
●   Some books, some papers, some blogs
●   Evangelizing devops
●   But mostly, trying to be good at my job
What's different in the cloud ?
●   Scale
●   Velocity
●   Change
Challenges
●   Reproducability
●   Speed
●   Auditing
●   Keeping stuff in sync
    •   Monitoring
    •   Security
Case :
Using a configuration management
tool to configure, update and keep
your cloudscale monitoring and metric
infrastructure sane and manageable.
Tools
●   Puppet            ●   Chef Cfengine
                      ●   Ganglia
●   Collectd
                      ●   Sensu
●   Graphite
●   Nagios / Icinga
Not quite a Muppet.

●   Puppet is...

●   OSS

●   A DSL language

●   Written in Ruby

●   Client/server oriented

●   Contains abstraction layers

●   Repeatable processes
Master of Puppets
●   Puppet master
    •   CA authority

    •   Hosts Modules

    •   Hosts Node descriptions

    •   Compare, compile, apply

●   Master is not a requirement !
Puppet Clients
●   daemon

●   Cron jobs

●   External orchestration:

    •   for i in $hosts; do ssh $i “puppetd --test”; done

    •   mCollective, Func, …

●   Get catalogs, play them,

●   reporting
Puppet Environments
●   Different code bases on 1 master

●   Dev, Uat, Prod

●   Only break one environment at once :)

●   What about testing your Puppetmaster ?
Node definitions
●   Nodes.pp

    class defaults {
         $search = "inuits.be"
         $nameservers = ['208.67.220.220', '208.67.222.222']

         include dns::resolv
         include ssh::keys
         include ssh::server
    }

    node "ns1.dev.inuits.be" {
        include defaults
        include dns::powerdns::server
        include dns::powerdns::resolver
    }

    node “web1.dev.inuits.be” {
        include defaults
        include apache2
        include mysql
    }
External Node Classifier
●   Fixed hostname ?

●   How many nodes

●   Naming schemas solve some issues



●   External script that sends back yaml class descriptions

    •   Custom writtten

    •   Foreman

    •   ...
Classes vs Modules
●   Module :
          ●
              Abstract definition on configuring a service
          ●
              Reusable
●   Class :
          ●
              Specific implementation of your use case of
              such a module

•e.g usernames / passwords / hosts do not belong in
modules
Modules
●   Files

●   Templates

●   Manifests
    •   DSL

    •   Classes

    •   Elements
Parametrized
  Classes
Stored Configs
Use Cases:
●   Ssh keys
●   Reverse proxy configs


●   Monitoring resources
●   Measuring resources
Collection and Export
 Export :           Collect:
 @@resource {       Resource <<|
                    query |>>
 ... }


Clean out nodes that dissapear
puppet node clean
Defining a Service
●   Local class that :
    •   Configures service using a standard
        module call with hiera based parameters
    •   Configures Backup
    •   Configures logrotation
    •   Configures logshipping
    •   Exports Monitoring Needs
●   Abuse modules for git ease
Apache Example:
#monitoringsucks
    Monitoring is AWESOME. Metrics are AWESOME. I love it. Here's what I don't love:

●   Having my hands tied with the model of host and service bindings.

●   Having to set up "fake" hosts just to group arbitrary metrics together

●   Having to either collect metrics twice - once for alerting and another for trending

●   Only being able to see my metrics in 5 minute intervals

●   Having to chose between shitty interface but great monitoring or shitty monitoring but
    great interface

●   Dealing with a monitoring system that thinks IT is the system of truth for my
    environment

●   Not actually having any real choices

               John Vincent (@lusis) on his blog http://lusislog.blogspot.com/2011/06/why-
Monitoring your VM's at Scale
#monitoringlove
●   Puppet
●   Nagios (Icinga)
●   Graphite
●   Collectd
●   Logstash
Graphite
●   Graphing at Scale
●   Graphing at Ease
●   Any metric is a graph


●   echo "somestring $somevalue
    $timestamp" | nc <%= graphitehost
    %> 2003
Graphite Composer

    x
Graphite API
Gdash In action
Puppet and Graphite
●   https://github.com/KrisBuytaert/vagrant-graphite/

●   Includes Graphite / Gdash / Jmxtrans / Logster / Collectd /
    Statsd / Tattle and more modules as submodules !




●   git clone

●   git submodule init

●   git submodule update

●   vagrant up
Collectd
●   Collects
●   Zillion Plugins
    •   Nginx,apache, mysql, disk
●   Graphite Carbon Plugin
●   Send metrics to graphite
Collectd & Graphite
Exporting and Collecting
Triggers on Graphs
●   Export Java Metrics   ●   Collect JMX Exports
                              on JMXTransNode
●   JMXTrans
                          ●   Graph Em
●   Export JMXConfigs
                              Collect Nagios
●   Configure NRPE            Configs on Nagios
    Check                     Server
●   Export NagiosCheck
Triggers on Graphs
Triggers on Graphs
Conclusion:
●   Reproducable monitoring setup
●   Dynamically generated monitoring
    config
●   Code is available at
    github.com/KrisBuytaert/snippets
Contact
Kris Buytaert
Kris.Buytaert@inuits.be

Further Reading
@krisbuytaert
http://www.krisbuytaert.be/blog/
http://www.inuits.be/




                             Inuits

                             Duboistraat 50
                             2060 Antwerpen
                             Belgium
                             891.514.231

                             +32 475 961221
1 of 36

Recommended

OSMC 2008 | Nagios Eventbroker Modules by Andreas Ericsson by
OSMC 2008 | Nagios Eventbroker Modules by Andreas EricssonOSMC 2008 | Nagios Eventbroker Modules by Andreas Ericsson
OSMC 2008 | Nagios Eventbroker Modules by Andreas EricssonNETWAYS
27 views17 slides
Netty training by
Netty trainingNetty training
Netty trainingMarcelo Serpa
96 views64 slides
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka by
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph GaluschkaOpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph GaluschkaNETWAYS
1.1K views17 slides
Introduction to Napa.js by
Introduction to Napa.jsIntroduction to Napa.js
Introduction to Napa.jsDaiyi Peng
346 views30 slides
Netty training by
Netty trainingNetty training
Netty trainingJackson dos Santos Olveira
77 views65 slides
Automating Complex Setups with Puppet by
Automating Complex Setups with PuppetAutomating Complex Setups with Puppet
Automating Complex Setups with PuppetKris Buytaert
1.2K views39 slides

More Related Content

What's hot

Swarm: Native Docker Clustering by
Swarm: Native Docker ClusteringSwarm: Native Docker Clustering
Swarm: Native Docker ClusteringRoyee Tager
1.1K views49 slides
2016-01-16 03 Денис Нелюбин. How to test a million by
2016-01-16 03 Денис Нелюбин. How to test a million2016-01-16 03 Денис Нелюбин. How to test a million
2016-01-16 03 Денис Нелюбин. How to test a millionОмские ИТ-субботники
192 views37 slides
Multi-core Node.pdf by
Multi-core Node.pdfMulti-core Node.pdf
Multi-core Node.pdfAhmed Hassan
71 views20 slides
OpenNebula 5.4 Hands-on Tutorial by
OpenNebula 5.4 Hands-on TutorialOpenNebula 5.4 Hands-on Tutorial
OpenNebula 5.4 Hands-on TutorialOpenNebula Project
19.5K views53 slides
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open... by
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...NETWAYS
885 views21 slides
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity by
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityTechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityOpenNebula Project
12.2K views42 slides

What's hot(20)

Swarm: Native Docker Clustering by Royee Tager
Swarm: Native Docker ClusteringSwarm: Native Docker Clustering
Swarm: Native Docker Clustering
Royee Tager1.1K views
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open... by NETWAYS
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...
OpenNebula Conf 2014 | Building Hybrid Cloud Federated Environments with Open...
NETWAYS885 views
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity by OpenNebula Project
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityTechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
OpenNebula Project12.2K views
Nuxeo World Session: Scaling Nuxeo Applications by Nuxeo
Nuxeo World Session: Scaling Nuxeo ApplicationsNuxeo World Session: Scaling Nuxeo Applications
Nuxeo World Session: Scaling Nuxeo Applications
Nuxeo601 views
[HKOSCON][20200613][ Ansible: From VM to Kubernetes] by Wong Hoi Sing Edison
[HKOSCON][20200613][ Ansible: From VM to Kubernetes][HKOSCON][20200613][ Ansible: From VM to Kubernetes]
[HKOSCON][20200613][ Ansible: From VM to Kubernetes]
Automating complex infrastructures with Puppet by Kris Buytaert
Automating complex infrastructures with PuppetAutomating complex infrastructures with Puppet
Automating complex infrastructures with Puppet
Kris Buytaert3.2K views
Running Containerized Node.js Services on AWS Elastic Beanstalk by zupzup.org
Running Containerized Node.js Services on AWS Elastic BeanstalkRunning Containerized Node.js Services on AWS Elastic Beanstalk
Running Containerized Node.js Services on AWS Elastic Beanstalk
zupzup.org478 views
OpenNebula Conf 2014 | OpenNebula as Open Replacement of vCloud by Javier Fontan by NETWAYS
OpenNebula Conf 2014 | OpenNebula as Open Replacement of vCloud by Javier FontanOpenNebula Conf 2014 | OpenNebula as Open Replacement of vCloud by Javier Fontan
OpenNebula Conf 2014 | OpenNebula as Open Replacement of vCloud by Javier Fontan
NETWAYS795 views
Architectural caching patterns for kubernetes by Rafał Leszko
Architectural caching patterns for kubernetesArchitectural caching patterns for kubernetes
Architectural caching patterns for kubernetes
Rafał Leszko444 views
Automating Monitoring with Puppet by Christian Mague
Automating Monitoring with PuppetAutomating Monitoring with Puppet
Automating Monitoring with Puppet
Christian Mague12.9K views
Kubernetes and OpenStack at Scale by Stephen Gordon
Kubernetes and OpenStack at ScaleKubernetes and OpenStack at Scale
Kubernetes and OpenStack at Scale
Stephen Gordon1.4K views
OpenNebula - OpenNebula and tips for CentOS 7 by OpenNebula Project
OpenNebula - OpenNebula and tips for CentOS 7OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula Project13.8K views
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula by OpenNebula Project
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebulaOpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebula Project3.6K views
MySQL Monitoring with Zabbix by FromDual GmbH
MySQL Monitoring with ZabbixMySQL Monitoring with Zabbix
MySQL Monitoring with Zabbix
FromDual GmbH27.7K views
How Can OpenNebula Fit Your Needs: A European Project Feedback by NETWAYS
How Can OpenNebula Fit Your Needs: A European Project FeedbackHow Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project Feedback
NETWAYS2.7K views

Viewers also liked

ZabbixによるOpenStack監視のご紹介 by
ZabbixによるOpenStack監視のご紹介ZabbixによるOpenStack監視のご紹介
ZabbixによるOpenStack監視のご紹介VirtualTech Japan Inc.
31K views13 slides
“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo... by
“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...
“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...Puppet
4.7K views58 slides
El uso del tiempo de en la clase by
El uso del tiempo de en la claseEl uso del tiempo de en la clase
El uso del tiempo de en la claseflorglo
370 views3 slides
Fisica para-el-blog-eaea by
Fisica para-el-blog-eaeaFisica para-el-blog-eaea
Fisica para-el-blog-eaeaCristian Romero Delgado
445 views17 slides
Dress code art deco by
Dress code art decoDress code art deco
Dress code art decoAndrestb2009
1.1K views75 slides
Roxana Vanessa - Book by
Roxana Vanessa - BookRoxana Vanessa - Book
Roxana Vanessa - BookThe Room installation
227 views68 slides

Viewers also liked(20)

“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo... by Puppet
“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...
“Sensu and Sensibility” - The Story of a Journey From #monitoringsucks to #mo...
Puppet4.7K views
El uso del tiempo de en la clase by florglo
El uso del tiempo de en la claseEl uso del tiempo de en la clase
El uso del tiempo de en la clase
florglo370 views
Dress code art deco by Andrestb2009
Dress code art decoDress code art deco
Dress code art deco
Andrestb20091.1K views
MASTER MBA en Logística. ESTEMA Escuela de Negocios. by ESTEMA
MASTER MBA en Logística. ESTEMA Escuela de Negocios.MASTER MBA en Logística. ESTEMA Escuela de Negocios.
MASTER MBA en Logística. ESTEMA Escuela de Negocios.
ESTEMA388 views
Sistema de Gestión de Formación Online: Moodle by TasoCluster.net
Sistema de Gestión de Formación Online: MoodleSistema de Gestión de Formación Online: Moodle
Sistema de Gestión de Formación Online: Moodle
TasoCluster.net1.5K views
2013-07-16-06-59-04-asfalum by Luis Herrera
 2013-07-16-06-59-04-asfalum 2013-07-16-06-59-04-asfalum
2013-07-16-06-59-04-asfalum
Luis Herrera571 views
Lima 2015 Plan by polo
Lima 2015 PlanLima 2015 Plan
Lima 2015 Plan
polo1.2K views
Integrated Earth Data Applications: Enhancing Reliable Data Services Through ... by iedadata
Integrated Earth Data Applications: Enhancing Reliable Data Services Through ...Integrated Earth Data Applications: Enhancing Reliable Data Services Through ...
Integrated Earth Data Applications: Enhancing Reliable Data Services Through ...
iedadata1K views
CV Diseñador de paginas web by VALEVS
CV Diseñador de paginas webCV Diseñador de paginas web
CV Diseñador de paginas web
VALEVS747 views
Providing Global Gateways to success! by guest28a0624
Providing Global Gateways to success!Providing Global Gateways to success!
Providing Global Gateways to success!
guest28a0624766 views
cover letter and update cv.Septadi N by Septadi Nurbain
cover letter and update cv.Septadi Ncover letter and update cv.Septadi N
cover letter and update cv.Septadi N
Septadi Nurbain1.3K views
Proyecto "No puc esperar!" - 20 de diciembre de 2014. by ACCU Catalunya
Proyecto "No puc esperar!" - 20 de diciembre de 2014.Proyecto "No puc esperar!" - 20 de diciembre de 2014.
Proyecto "No puc esperar!" - 20 de diciembre de 2014.
ACCU Catalunya480 views
Aqua Terra CP # 051 Hacienda El Limon by Aqua Terra
Aqua Terra CP # 051 Hacienda El Limon Aqua Terra CP # 051 Hacienda El Limon
Aqua Terra CP # 051 Hacienda El Limon
Aqua Terra874 views
SashaV_Capabilities (1) by Sasha Flynn
SashaV_Capabilities (1)SashaV_Capabilities (1)
SashaV_Capabilities (1)
Sasha Flynn476 views
Ackermans & van Haaren - 2013 annual results by Katia Waegemans
Ackermans & van Haaren - 2013 annual resultsAckermans & van Haaren - 2013 annual results
Ackermans & van Haaren - 2013 annual results
Katia Waegemans723 views

Similar to Monitoring your VM's at Scale

Monitoring in the cloud with Puppet by
Monitoring in the cloud with PuppetMonitoring in the cloud with Puppet
Monitoring in the cloud with PuppetKris Buytaert
9.9K views48 slides
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme... by
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...Nicolas Brousse
2.4K views32 slides
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w... by
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios
949 views30 slides
The Art and Zen of Managing Nagios With Puppet by
The Art and Zen of Managing Nagios With PuppetThe Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With PuppetMike Merideth
691 views22 slides
Beyond Puppet by
Beyond PuppetBeyond Puppet
Beyond PuppetKris Buytaert
3.4K views34 slides
Continuous delivery of Windows micro services in the cloud by
Continuous delivery of Windows micro services in the cloud Continuous delivery of Windows micro services in the cloud
Continuous delivery of Windows micro services in the cloud Owain Perry
748 views35 slides

Similar to Monitoring your VM's at Scale(20)

Monitoring in the cloud with Puppet by Kris Buytaert
Monitoring in the cloud with PuppetMonitoring in the cloud with Puppet
Monitoring in the cloud with Puppet
Kris Buytaert9.9K views
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme... by Nicolas Brousse
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...
Puppet Camp Silicon Valley 2015: How TubeMogul reached 10,000 Puppet Deployme...
Nicolas Brousse2.4K views
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w... by Nagios
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
Nagios949 views
The Art and Zen of Managing Nagios With Puppet by Mike Merideth
The Art and Zen of Managing Nagios With PuppetThe Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With Puppet
Mike Merideth691 views
Continuous delivery of Windows micro services in the cloud by Owain Perry
Continuous delivery of Windows micro services in the cloud Continuous delivery of Windows micro services in the cloud
Continuous delivery of Windows micro services in the cloud
Owain Perry748 views
Eko10 Workshop Opensource Database Auditing by Juan Berner
Eko10  Workshop Opensource Database AuditingEko10  Workshop Opensource Database Auditing
Eko10 Workshop Opensource Database Auditing
Juan Berner728 views
Puppet Camp Denver 2015: Nagios Management With Puppet by Puppet
Puppet Camp Denver 2015: Nagios Management With PuppetPuppet Camp Denver 2015: Nagios Management With Puppet
Puppet Camp Denver 2015: Nagios Management With Puppet
Puppet1K views
ContainerCon - Test Driven Infrastructure by Yury Tsarev
ContainerCon - Test Driven InfrastructureContainerCon - Test Driven Infrastructure
ContainerCon - Test Driven Infrastructure
Yury Tsarev2.6K views
Scaling Magento by Copious
Scaling MagentoScaling Magento
Scaling Magento
Copious549 views
Eko10 workshop - OPEN SOURCE DATABASE MONITORING by Pablo Garbossa
Eko10 workshop - OPEN SOURCE DATABASE MONITORINGEko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
Pablo Garbossa383 views
The Art & Zen of Managing Nagios with Puppet by VictorOps
The Art & Zen of Managing Nagios with PuppetThe Art & Zen of Managing Nagios with Puppet
The Art & Zen of Managing Nagios with Puppet
VictorOps456 views
Improving Operations Efficiency with Puppet by Nicolas Brousse
Improving Operations Efficiency with PuppetImproving Operations Efficiency with Puppet
Improving Operations Efficiency with Puppet
Nicolas Brousse3.9K views
Puppet Camp Portland: Nagios Management With Puppet (Beginner) by Puppet
Puppet Camp Portland: Nagios Management With Puppet (Beginner)Puppet Camp Portland: Nagios Management With Puppet (Beginner)
Puppet Camp Portland: Nagios Management With Puppet (Beginner)
Puppet1.7K views
My "Perfect" Toolchain Setup for Grails Projects by GR8Conf
My "Perfect" Toolchain Setup for Grails ProjectsMy "Perfect" Toolchain Setup for Grails Projects
My "Perfect" Toolchain Setup for Grails Projects
GR8Conf4.4K views
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012 by Lance Albertson
Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
Lance Albertson5.2K views
Automating MySQL operations with Puppet by Kris Buytaert
Automating MySQL operations with PuppetAutomating MySQL operations with Puppet
Automating MySQL operations with Puppet
Kris Buytaert1.8K views

More from Kris Buytaert

Years of (not) learning , from devops to devoops by
Years of (not) learning , from devops to devoopsYears of (not) learning , from devops to devoops
Years of (not) learning , from devops to devoopsKris Buytaert
65 views44 slides
Observability will not fix your Broken Monitoring ,Ignite by
Observability will not fix your Broken Monitoring ,IgniteObservability will not fix your Broken Monitoring ,Ignite
Observability will not fix your Broken Monitoring ,IgniteKris Buytaert
167 views20 slides
Infrastructure as Code Patterns by
Infrastructure as Code PatternsInfrastructure as Code Patterns
Infrastructure as Code PatternsKris Buytaert
117 views53 slides
From devoops to devops 13 years of (not) learning by
From devoops to devops 13 years of (not) learningFrom devoops to devops 13 years of (not) learning
From devoops to devops 13 years of (not) learningKris Buytaert
185 views40 slides
Pipeline all the Dashboards as Code by
Pipeline all the Dashboards as CodePipeline all the Dashboards as Code
Pipeline all the Dashboards as CodeKris Buytaert
644 views20 slides
Help , My Datacenter is on fire by
Help , My Datacenter is on fireHelp , My Datacenter is on fire
Help , My Datacenter is on fireKris Buytaert
542 views38 slides

More from Kris Buytaert(20)

Years of (not) learning , from devops to devoops by Kris Buytaert
Years of (not) learning , from devops to devoopsYears of (not) learning , from devops to devoops
Years of (not) learning , from devops to devoops
Kris Buytaert65 views
Observability will not fix your Broken Monitoring ,Ignite by Kris Buytaert
Observability will not fix your Broken Monitoring ,IgniteObservability will not fix your Broken Monitoring ,Ignite
Observability will not fix your Broken Monitoring ,Ignite
Kris Buytaert167 views
Infrastructure as Code Patterns by Kris Buytaert
Infrastructure as Code PatternsInfrastructure as Code Patterns
Infrastructure as Code Patterns
Kris Buytaert117 views
From devoops to devops 13 years of (not) learning by Kris Buytaert
From devoops to devops 13 years of (not) learningFrom devoops to devops 13 years of (not) learning
From devoops to devops 13 years of (not) learning
Kris Buytaert185 views
Pipeline all the Dashboards as Code by Kris Buytaert
Pipeline all the Dashboards as CodePipeline all the Dashboards as Code
Pipeline all the Dashboards as Code
Kris Buytaert644 views
Help , My Datacenter is on fire by Kris Buytaert
Help , My Datacenter is on fireHelp , My Datacenter is on fire
Help , My Datacenter is on fire
Kris Buytaert542 views
Devops is Dead, Long live Devops by Kris Buytaert
Devops is Dead, Long live DevopsDevops is Dead, Long live Devops
Devops is Dead, Long live Devops
Kris Buytaert289 views
10 years of #devopsdays, but what have we really learned ? by Kris Buytaert
10 years of #devopsdays, but what have we really learned ? 10 years of #devopsdays, but what have we really learned ?
10 years of #devopsdays, but what have we really learned ?
Kris Buytaert594 views
Continuous Infrastructure First by Kris Buytaert
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
Kris Buytaert568 views
Is there a Future for devops ? by Kris Buytaert
Is there a Future for devops   ? Is there a Future for devops   ?
Is there a Future for devops ?
Kris Buytaert478 views
10 Years of #devopsdays weirdness by Kris Buytaert
10 Years of #devopsdays weirdness10 Years of #devopsdays weirdness
10 Years of #devopsdays weirdness
Kris Buytaert400 views
ADDO 2019: Looking back at over 10 years of Devops by Kris Buytaert
ADDO 2019:    Looking back at over 10 years of DevopsADDO 2019:    Looking back at over 10 years of Devops
ADDO 2019: Looking back at over 10 years of Devops
Kris Buytaert578 views
Continuous Infrastructure First Ignite Edition by Kris Buytaert
Continuous Infrastructure First  Ignite EditionContinuous Infrastructure First  Ignite Edition
Continuous Infrastructure First Ignite Edition
Kris Buytaert476 views
Continuous Infrastructure First by Kris Buytaert
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
Kris Buytaert521 views
Open Source Monitoring in 2019 by Kris Buytaert
Open Source Monitoring in 2019 Open Source Monitoring in 2019
Open Source Monitoring in 2019
Kris Buytaert1.5K views
Devops is a Security Requirement by Kris Buytaert
Devops is a Security RequirementDevops is a Security Requirement
Devops is a Security Requirement
Kris Buytaert699 views

Recently uploaded

Zero to Automated in Under a Year by
Zero to Automated in Under a YearZero to Automated in Under a Year
Zero to Automated in Under a YearNetwork Automation Forum
15 views23 slides
PRODUCT LISTING.pptx by
PRODUCT LISTING.pptxPRODUCT LISTING.pptx
PRODUCT LISTING.pptxangelicacueva6
14 views1 slide
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
31 views35 slides
Network Source of Truth and Infrastructure as Code revisited by
Network Source of Truth and Infrastructure as Code revisitedNetwork Source of Truth and Infrastructure as Code revisited
Network Source of Truth and Infrastructure as Code revisitedNetwork Automation Forum
26 views45 slides
Kyo - Functional Scala 2023.pdf by
Kyo - Functional Scala 2023.pdfKyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdfFlavio W. Brasil
368 views92 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
263 views86 slides

Recently uploaded(20)

Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software263 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn22 views
Empathic Computing: Delivering the Potential of the Metaverse by Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst478 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab19 views
Unit 1_Lecture 2_Physical Design of IoT.pdf by StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec12 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
Special_edition_innovator_2023.pdf by WillDavies22
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdf
WillDavies2217 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi127 views

Monitoring your VM's at Scale

  • 1. Beyond VM deployment Monitoring your VM's at scale Kris Buytaert
  • 2. Kris Buytaert ● I used to be a Dev, ● Then Became an Op ● Chief Trolling Officer and Open Source Consultant @inuits.eu ● Everything is an effing DNS Problem ● Building Clouds since before the bookstore ● Some books, some papers, some blogs ● Evangelizing devops ● But mostly, trying to be good at my job
  • 3. What's different in the cloud ? ● Scale ● Velocity ● Change
  • 4. Challenges ● Reproducability ● Speed ● Auditing ● Keeping stuff in sync • Monitoring • Security
  • 5. Case : Using a configuration management tool to configure, update and keep your cloudscale monitoring and metric infrastructure sane and manageable.
  • 6. Tools ● Puppet ● Chef Cfengine ● Ganglia ● Collectd ● Sensu ● Graphite ● Nagios / Icinga
  • 7. Not quite a Muppet. ● Puppet is... ● OSS ● A DSL language ● Written in Ruby ● Client/server oriented ● Contains abstraction layers ● Repeatable processes
  • 8. Master of Puppets ● Puppet master • CA authority • Hosts Modules • Hosts Node descriptions • Compare, compile, apply ● Master is not a requirement !
  • 9. Puppet Clients ● daemon ● Cron jobs ● External orchestration: • for i in $hosts; do ssh $i “puppetd --test”; done • mCollective, Func, … ● Get catalogs, play them, ● reporting
  • 10. Puppet Environments ● Different code bases on 1 master ● Dev, Uat, Prod ● Only break one environment at once :) ● What about testing your Puppetmaster ?
  • 11. Node definitions ● Nodes.pp class defaults { $search = "inuits.be" $nameservers = ['208.67.220.220', '208.67.222.222'] include dns::resolv include ssh::keys include ssh::server } node "ns1.dev.inuits.be" { include defaults include dns::powerdns::server include dns::powerdns::resolver } node “web1.dev.inuits.be” { include defaults include apache2 include mysql }
  • 12. External Node Classifier ● Fixed hostname ? ● How many nodes ● Naming schemas solve some issues ● External script that sends back yaml class descriptions • Custom writtten • Foreman • ...
  • 13. Classes vs Modules ● Module : ● Abstract definition on configuring a service ● Reusable ● Class : ● Specific implementation of your use case of such a module •e.g usernames / passwords / hosts do not belong in modules
  • 14. Modules ● Files ● Templates ● Manifests • DSL • Classes • Elements
  • 17. Use Cases: ● Ssh keys ● Reverse proxy configs ● Monitoring resources ● Measuring resources
  • 18. Collection and Export Export : Collect: @@resource { Resource <<| query |>> ... } Clean out nodes that dissapear puppet node clean
  • 19. Defining a Service ● Local class that : • Configures service using a standard module call with hiera based parameters • Configures Backup • Configures logrotation • Configures logshipping • Exports Monitoring Needs ● Abuse modules for git ease
  • 21. #monitoringsucks Monitoring is AWESOME. Metrics are AWESOME. I love it. Here's what I don't love: ● Having my hands tied with the model of host and service bindings. ● Having to set up "fake" hosts just to group arbitrary metrics together ● Having to either collect metrics twice - once for alerting and another for trending ● Only being able to see my metrics in 5 minute intervals ● Having to chose between shitty interface but great monitoring or shitty monitoring but great interface ● Dealing with a monitoring system that thinks IT is the system of truth for my environment ● Not actually having any real choices John Vincent (@lusis) on his blog http://lusislog.blogspot.com/2011/06/why-
  • 23. #monitoringlove ● Puppet ● Nagios (Icinga) ● Graphite ● Collectd ● Logstash
  • 24. Graphite ● Graphing at Scale ● Graphing at Ease ● Any metric is a graph ● echo "somestring $somevalue $timestamp" | nc <%= graphitehost %> 2003
  • 28. Puppet and Graphite ● https://github.com/KrisBuytaert/vagrant-graphite/ ● Includes Graphite / Gdash / Jmxtrans / Logster / Collectd / Statsd / Tattle and more modules as submodules ! ● git clone ● git submodule init ● git submodule update ● vagrant up
  • 29. Collectd ● Collects ● Zillion Plugins • Nginx,apache, mysql, disk ● Graphite Carbon Plugin ● Send metrics to graphite
  • 32. Triggers on Graphs ● Export Java Metrics ● Collect JMX Exports on JMXTransNode ● JMXTrans ● Graph Em ● Export JMXConfigs Collect Nagios ● Configure NRPE Configs on Nagios Check Server ● Export NagiosCheck
  • 35. Conclusion: ● Reproducable monitoring setup ● Dynamically generated monitoring config ● Code is available at github.com/KrisBuytaert/snippets