owned this note
owned this note
Published
Linked with GitHub
---
title: Monitoring@EPFL
tags: Talk
description: Some thoughts about monitoring@EPFL
slideOptions:
transition: convex
theme: black
spotlight:
enabled: false
progress: true
---
<!--
This style apply by default to all slides, unless .slide is used.
Note the use of the reveal class selector: this mean that only the presentation is affected by this style, and the makrdown preview or the book mode of hackmd.io is style intact.
If you want/need a resizable background image, add the background-size: cover; property and change background-position: 0px 0px;
-->
<style>
.reveal {
/*background-color: #eaeaea;*/
background-image: url('https://epfl-si.github.io/elements/svg/epfl-logo.svg');
background-repeat: no-repeat;
background-position: 5px 5px;
}
.reveal {
color: #1c1c1c;
}
.reveal h1, .reveal h2, .reveal h3,
.reveal h4, .reveal h5, .reveal h6 {
color: #eee;
text-shadow: 2px 2px #ff0000;
}
.reveal a {
color: #f009;
}
.reveal a:hover {
color: #f00;
}
.reveal code {
padding-top: 0.2em;
padding-bottom: 0.2em;
margin: 0;
font-size: 85%;
background-color: rgba(255, 255, 255, 0.46);
border-radius: 3px;
}
[data-contrast="on"] > div {
background-color: #ffffff50;
}
[data-contrast="on+"] > div {
background-color: #ffffff99;
}
</style>
<!-- .slide: data-background="https://hackmd.io/_uploads/Ska_7nRP2.png" data-contrast="on+" https://www.stephenwiltshire.co.uk/original/drawings/royal-albert-hall-london-2022/23683 -->
## Monitoring
Extraits de briques technologiques facilitant le montoring et offrant un modèle adapté à l'EPFL.
<small>Nicolas Borboën <<nicolas.borboen@epfl.ch>></small>
----
<!-- .slide: data-background="https://hackmd.io/_uploads/HJ6J4hAP3.png" https://www.stephenwiltshire.co.uk/original/drawings/dubai-skyline-at-night/10727 -->
## Introduction
----
<!-- .slide: data-contrast="on+" data-background="https://hackmd.io/_uploads/Syrm4hCP3.png" https://www.stephenwiltshire.co.uk/original/drawings/canals-venice/9934 -->
## Pourquoi est-on là
- Mieux comprendre nos besoins
- Grouper les efforts
- Partage de connaissance
- Homogénisation des outils
----
<!-- .slide: data-contrast="on+" data-background="https://hackmd.io/_uploads/Bkssm3CPh.png" https://www.stephenwiltshire.co.uk/original/drawings/city-london-ten-years-in-future/23684 -->
## Lien vers la présentation
https://hackmd.io/@ponsfrilus/monitoring
Cette présentation donne suite à une présentation plus spécifique à prometheus, accessible ici : https://hackmd.io/@ponsfrilus/prometheus.
La présentation intègre des images de [Stephen Wiltshire](https://fr.wikipedia.org/wiki/Stephen_Wiltshire) et [Gilles Trehin](https://fr.wikipedia.org/wiki/Gilles_Tr%C3%A9hin).
---
## User story (manager)
<!-- .slide: data-contrast="on+" -->
> En tant que manager j'aimerais une vue d'ensemble des différentes applications gérées par mes équipes pour savoir en un coup d'oeil si des problèmes sont en cours.
----
## User story (service manager)
<!-- .slide: data-contrast="on+" -->
> En tant que service manager j'aimerais une vue d'ensemble des différentes applications de mes services pour savoir en un coup d'oeil si des problèmes sont en cours.
----
## User story (team)
<!-- .slide: data-contrast="on+" -->
> En tant qu'équipe en charge d'une application nous aimerions savoir son état de santé et être alertée si l'un de ses composants est en PLS.
----
## User story (dev)
<!-- .slide: data-contrast="on+" -->
> En tant que développeur j'aimerais avoir accès aux détails des mesures de mon application non seulement pour detecter des problèmes mais aussi pour travailler sur la performance (temps de réponses, etc.) et ainsi pouvoir prouver (en se basant sur des mesures) la véracité de mes améliorations.
----
## User story (dev)
<!-- .slide: data-contrast="on+" -->
> En tant que développeur j'aimerais pouvoir visualiser les corrélations entre les différents systèmes (VM, NAS, DB, A10, réseau, etc.) et ainsi identifier les facteurs impactant les performances de mon application.
----
## User story (dev)
<!-- .slide: data-contrast="on+" -->
> En tant que développeur je dois pouvoir accéder aux logs de mon application visualiser les corrélations entre les différents systèmes (VM, NAS, DB, A10, réseau, etc.) et ainsi identifier les facteurs impactant les performances de mon application.
----
## User story (team/dev)
<!-- .slide: data-contrast="on+" -->
> En tant que développeur ou qu'équipe en charge d'une application, j'aimerais avoir un moyen fiable permettant d'enquêter soit pour résoudre un problème en cours, soit pour expliquer (écrire un post-mortem).
---
## Exemple

Une VM accédant à deux services de l'EPFL, DB + NAS et hébergeant un serveur web.
----
On veut pouvoir collecter des données sur les éléments "visibles"

----
Mais aussi sur les "invisibles", par exemple : la VM de MariaDB, le rack dans lequel se trouve le NAS, l'état du réseau, la connectivité, etc...

---
## What's the plan?
### Des prometheus d'apparement

----
### Des prometheus d'immeuble

----
### Des prometheus de quartier

----
### Des prometheus de ville

---
<!-- .slide: data-contrast="on+" data-background="https://hackmd.io/_uploads/Sy2tH3CP2.png" https://www.stephenwiltshire.co.uk/original/drawings/graduation-tower-bridge-river-thames/9408 -->
# Prometheus
* Exporters
* Federation
* Alerting
* Grafana
----
## Exporters
https://prometheus.io/docs/instrumenting/exporters/
----

----
## Federation
<!-- .slide: data-contrast="on+" data-background="https://hackmd.io/_uploads/SJnFqs0vh.png" -->
----
<!-- .slide: data-contrast="on+" -->
## Alerting
https://prometheus.io/docs/alerting/latest/alertmanager/
The Alertmanager handles alerts sent by client applications. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts.
----
## Grafana (visualization)

----

----
## Kibana (https://kibana-exopge-logs.epfl.ch)

---
# Prom vs OT

https://www.timescale.com/blog/prometheus-vs-opentelemetry-metrics-a-complete-guide/
----

----
<!-- .slide: data-contrast="on+" -->

https://openmetrics.io/
---
<!-- .slide: data-contrast="on+" -->
# Ce qui est important
* collecter des données
* pouvoir les partager entre équipe/service
* parler la même langue
* rendre notre travail plus efficient
----
<!-- .slide: data-contrast="on+" -->
# Mais surtout
Un service, sous la houlette de notre architecte de l'information, permettant d'intégrer les concepts de monitoring, d'alerting, de logging et d'observabilité dans toute l'organisation de manière transversale.
----
<!-- .slide: data-background="https://hackmd.io/_uploads/HJ4S_2Cv2.png" data-contrast="on" https://travelbetweenthepages.com/tag/gilles-trehin/ -->
## Demo as a service
---
<!-- .slide: data-background="https://hackmd.io/_uploads/r10u_hAwh.png" data-contrast="on" https://travelbetweenthepages.com/tag/gilles-trehin/ -->
## This is the end
Encore une question ? Un point à disctuer ?
Nicolas Borboën <<nicolas.borboen@epfl.ch>>