Towards Omnia: a Monitoring Factory for Quality-Aware DevOps
Apr 27th, 2017
Marco MIGLIERINA Damian A. TAMBURRI
Towards Omnia: a Monitoring Factory for Quality-Aware DevOps Apr 27 - - PowerPoint PPT Presentation
Towards Omnia: a Monitoring Factory for Quality-Aware DevOps Apr 27 th , 2017 Marco MIGLIERINA Damian A. TAMBURRI Dev- to Ops: We are moving faster and faster 2 Figures from: http://martinfowler.com/articles/microservices.html and
Apr 27th, 2017
Marco MIGLIERINA Damian A. TAMBURRI
2
Figures from: http://martinfowler.com/articles/microservices.html and https://www.slideshare.net/CiscoDevNet/enabing-devops-in-an-sdn-world
3
4
…back in 2011
5 144 practitioners surveyed
6
7
DEVS
Monitoring Stack
OPS
use manage
Prod Mgr UX Dev QA DB Admin Product Team Product Team Product Team
A P I
Sys Admin Net Admin SAN Admin Platform Team
8
Team organzation at Netflix: https://www.nginx.com/blog/adopting-microservices- at-netflix-lessons-for-team-and-process-design/
9
Product Team Product Team Product Team Omnia Libs
Product Team Platform Team
Omnia CLI Monitoring Stack Monitoring Interface Monitoring factory Omnia Vocabulary
10
automated action manual action Product Team Alfa Service Alfa Dashboard X TDB X Platform Team maintains Agents X learn, configure, deploy Alerting X
The Platform Team decides to use the monitoring stack X
11
automated action manual action Product Team Alfa Service Alfa v0.1 TDB X Lib Dashboard X TDB X Platform Team learn, configure learn, code, release Agents X Alerting X learn, configure
Product Teams have to learn how to use X and instrument their code
12
automated action manual action Product Team Alfa Service Alfa v0.1 TDB X Lib Dashboard X TDB X Platform Team pushData Agents X pushData Alerting X sendAlerts view
Monitoring stack X is now up and running
13
automated action manual action Product Team Alfa Service Alfa v0.1 TDB X Lib Platform Team Agents Y learn, configure, deploy Monitoring Tool Y
The Platform Team decides to migrate to monitoring stack Y
14
automated action manual action Product Team Alfa Platform Team Agents Y Monitoring Tool Y Service Alfa v0.2 AgY Lib learn, configure learn, code, release
Product Teams have to learn how to use Y and re- instrument their code
15
automated action manual action Product Team Alfa Platform Team Agents Y Monitoring Tool Y Service Alfa v0.2 AgY Lib view pullData pushData sendAlerts
Monitoring stack Y is now up and running
16
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Platform Team learn, code, release
v1 learn, code
By using Omnia a single learning step is required for all teams
17
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Dashboard X TDB X Platform Team Agents X Alerting X Omnia CLI
v1 use parse parse configure, deploy
Omnia deploys and configures the monitoring stack X from code
18
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Dashboard X TDB X Platform Team view pushData Agents X pushData Alerting X sendAlerts Omnia CLI
v1
Monitoring stack X is now up and running
19
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Dashboard X TDB X Platform Team Agents X Alerting X Omnia CLI
v2 code
Migration to a new monitoring stack is a simple code change made by the Platform Team
20
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Platform Team Omnia CLI
v2 Monitoring Tool Y Agents Y use parse configure, deploy parse
Omnia takes care of reconfiguring and redeploying the stack
21
automated action manual action
Product Team Alfa Service Alfa v0.1 Omnia Lib Platform Team Omnia CLI
v2 Monitoring Tool Y Agents Y view sendAlerts pushData pullData
Monitoring stack Y is now up and running The Product Teams did not have to change a line
22 Omnia Lib for Spring Boot
23
Spring Boot Omnia Lib
POST “payments,host=vm1,service=payservice 34” http://collector:8125 payments 34
24 dashboard.tmpl Go Template Library dashboard
25
26
v1 v2 Reusing existing monitoring tools Reusing existing adapters Reusing existing provisioning tools
27