tuto3: Fix and complete cgroup part

This commit is contained in:
nemunaire 2022-10-18 06:14:44 +02:00
commit 412d69a649
2 changed files with 57 additions and 21 deletions

View file

@ -1,11 +1,11 @@
::::: {.exercice}
### Exercice (obligatoire pour les SRS -- optionnel pour les GISTRE)
### Exercice (obligatoire pour les SRS -- optionnel pour les GISTRE) {-}
Poursuivons [notre script de monitoring](#script-monitoring) afin d'envoyer nos
résultats vers InfluxDB : nous l'appellerons `./telegraf.sh`.
#### Rappel d'InfluxDB
### Rappel d'InfluxDB
Commençons par lancer le conteneur Docker d'InfluxDB (pour éviter de
l'installer sur notre machine) :
@ -16,6 +16,15 @@ docker container run --name mytsdb -d -p 8086:8086 influxdb:1.8
```
</div>
::::: {.warning}
Nous utilisons la version 1.8 d'influxDB qui est plus simple à administrer pour
faire des tests. Vous pouvez partir sur la version 2, une API compatible avec
la version 1 est disponible, elle est plus simple à utiliser à partir d'un
shell.
:::::
Il nous faut ensuite créer une base de données pour y stocker nos
métriques. Voici comment on s'était débrouillé précédemment pour interagir avec
InfluxDB :
@ -32,7 +41,7 @@ EOF
Vérifiez que la base de données `metrics` a bien été créée.
#### Monitoring vers InfluxDB
### Monitoring vers InfluxDB
Maintenant, envoyons nos données vers la base
<https://docs.influxdata.com/influxdb/v1.8/guides/write_data/> :
@ -54,7 +63,7 @@ SELECT * from "$my_cgroup_name";
</div>
#### Monitorer davantage de données
### Monitorer davantage de données
Liste non exhaustive de données à monitorer :
@ -70,16 +79,16 @@ accessible ici :
- v2 : <https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html>
#### Permettre à l'utilisateur de monitorer des processus
### Permettre à l'utilisateur de monitorer des processus
Maintenant, séparons notre script en deux parties afin qu'un utilisateur normal
(non-root) puisse utiliser la partie monitoring de notre script.
Un premier script doit s'occuper de créer le(s) *cgroup*s et lui attribuer les
bons droits, tandis que le deuxième va effectuer le monitoring, sans privilèges
particuliers.
bons droits (`chown $EUID`), tandis que le deuxième va effectuer le monitoring,
sans privilèges particuliers.
##### Exemple {-}
#### Exemple {-}
<div lang="en-US">
```