Installation Prometheus-postgres-exporter #53

Merged
pz2891 merged 29 commits from prometheus_postgres_exporter into master 2021-04-14 20:19:59 +02:00
Member

Hello !
[x] Installation de postgres-exporter (package debian) sur les VM de bdd (groupe bdd: re2o-db, bdd.adm.auro.re, bdd-ovh.adm.auro.re), et les VM radius (nouveau groupe fait pour)
[x] Découpe des alertes en plusieurs fichiers
[x] Création d'alertes pour Docker
[x] Création d'alertes pour Postgres (+ adaptations)

Hello ! [x] Installation de postgres-exporter (package debian) sur les VM de bdd (groupe bdd: re2o-db, bdd.adm.auro.re, bdd-ovh.adm.auro.re), et les VM radius (nouveau groupe fait pour) [x] Découpe des alertes en plusieurs fichiers [x] Création d'alertes pour Docker [x] Création d'alertes pour Postgres (+ adaptations)
pz2891 added 16 commits 2021-04-12 10:09:19 +02:00
Configure Prometheus and Prometheus federate to scrape Postgres Exporter
Some checks failed
continuous-integration/drone/push Build is failing
dd48302585
Fix docker rules
Some checks failed
continuous-integration/drone/push Build is failing
9d18ebb7f1
Install postgresql on radius. Monitore it on prometheus-aurore
Some checks failed
continuous-integration/drone/push Build is failing
ca3d89e671
Install postgres exporter when it is bullseye or buster
Some checks failed
continuous-integration/drone/push Build is failing
764f0f106d
fix CI
Some checks failed
continuous-integration/drone/push Build is failing
6c64bb214c
fix CI
Some checks failed
continuous-integration/drone/push Build is failing
6e376a72e3
fix CI
Some checks failed
continuous-integration/drone/push Build is failing
1908deee9c
Fix CI
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
d891559e28
pz2891 added 1 commit 2021-04-12 10:10:28 +02:00
Merge branch 'master' into prometheus_postgres_exporter
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
8c666151d6
pz2891 requested review from jeltz 2021-04-12 10:11:16 +02:00
pz2891 requested review from otthorn 2021-04-12 10:11:16 +02:00
otthorn approved these changes 2021-04-12 10:53:12 +02:00
otthorn left a comment
Owner

Quelques petits choses à discuter. Je ne sais pas si j'ai raison pour les traductions mais ça vaut le coup de se poser la question je pense.

Sinon c'est très bien dans son ensemble 👍

Quelques petits choses à discuter. Je ne sais pas si j'ai raison pour les traductions mais ça vaut le coup de se poser la question je pense. Sinon c'est très bien dans son ensemble 👍
@ -88,4 +123,3 @@
- key: 05-prometheus
message: >-
Prometheus est déployé sur cette machine (voir /etc/prometheus)
...
Owner

Pourquoi avoir retirer ça ?
C'est la fin correct pour un fichier yaml.

Pourquoi avoir retirer ça ? C'est la fin correct pour un fichier yaml.
pz2891 marked this conversation as resolved
@ -0,0 +17,4 @@
severity: critical
annotations:
summary: >-
Container Docker mort
Owner

éteind ?

éteind ?
Owner

Je sais pas trop, je trouve que mort en français ça fait bizzare. Mais en même temps "dead" semble être le terme correct en Anglais.

Je sais pas trop, je trouve que mort en français ça fait bizzare. Mais en même temps "dead" semble être le terme correct en Anglais.
Owner

Pour postgres en dessous on utilise "down", ce qui est un Anglissisme mais c'est pas mal.
Sinon on peut dire "tombé" qui est un traduction un peu abusive, mais ça je trouve pas ça choquant.

Pour postgres en dessous on utilise "down", ce qui est un Anglissisme mais c'est pas mal. Sinon on peut dire "tombé" qui est un traduction un peu abusive, mais ça je trouve pas ça choquant.
pz2891 marked this conversation as resolved
@ -0,0 +43,4 @@
severity: critical
annotations:
summary: >-
Container Docker utilise beaucoup de CPU
Owner

Faudrait peut être faire des phrases.

C'est comme si on disait "Server utilise beaucoup de CPU", c'est pas syntaxiquement correct.
"Le container Docker utilise beaucoup de CPU" peut etre ?

Faudrait peut être faire des phrases. C'est comme si on disait "Server utilise beaucoup de CPU", c'est pas syntaxiquement correct. "Le container Docker utilise beaucoup de CPU" peut etre ?
pz2891 marked this conversation as resolved
@ -0,0 +55,4 @@
severity: warning
annotations:
summary: >-
La table n'a pas été aspirée depuis 24h
Owner

Je suis pas sûr que des gens utilisent vraiment "aspirée" pour traduire "autovacuum"

https://docs.postgresql.fr/8.1/runtime-config-autovacuum.html (seul source que j'ai trouvé en français)

Je suis pas sûr que des gens utilisent vraiment "aspirée" pour traduire "autovacuum" https://docs.postgresql.fr/8.1/runtime-config-autovacuum.html (seul source que j'ai trouvé en français)
pz2891 marked this conversation as resolved
@ -0,0 +93,4 @@
severity: warning
annotations:
summary: >-
PostgreSQL a des cadenas morts
Owner

Pareil je pense pas que ça se traduise

Source random https://forum.postgresql.fr/viewtopic.php?id=5643

Pareil je pense pas que ça se traduise Source random https://forum.postgresql.fr/viewtopic.php?id=5643
pz2891 marked this conversation as resolved
@ -0,0 +128,4 @@
severity: critical
annotations:
summary: >-
Réplication de Postgresql WALE stopée
Owner

WALE ?
https://www.postgresql.org/search/?u=%2Fdocs%2F13%2F&q=WALE

WAL peut être ?
Sinon je ne sais pas ce que c'est.

WALE ? https://www.postgresql.org/search/?u=%2Fdocs%2F13%2F&q=WALE WAL peut être ? Sinon je ne sais pas ce que c'est.
Author
Member
J'ai repris la source : https://awesome-prometheus-alerts.grep.to/rules.html#rule-postgresql-15
pz2891 marked this conversation as resolved
@ -0,0 +183,4 @@
severity: critical
annotations:
summary: >-
Split Brain, trop de bases de données Postgresql primaires en mode lecture-écriture
Owner

proposition: "Split Brain : trop de bases [...]"

proposition: "Split Brain : trop de bases [...]"
pz2891 marked this conversation as resolved
@ -0,0 +210,4 @@
severity: critical
annotations:
summary: >-
Trop de verrous acquis sur la base de données.
Owner

Pareil, je ne pense pas que ça se traduise. Ou alors peut etre plutot par "Verouillages" non ?
J'ai pas de source pour ça.

Pareil, je ne pense pas que ça se traduise. Ou alors peut etre plutot par "Verouillages" non ? J'ai pas de source pour ça.
pz2891 marked this conversation as resolved
pz2891 added 5 commits 2021-04-12 11:11:11 +02:00
pz2891 added 3 commits 2021-04-14 19:37:44 +02:00
Alerts repository owned by prometheus
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
fde52f2e42
pz2891 added 1 commit 2021-04-14 19:52:11 +02:00
Fix deployment and add prometheus groups for hosts
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
1b0bff4c51
pz2891 added 1 commit 2021-04-14 19:55:02 +02:00
typo in docker rules
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
013743f910
pz2891 added 2 commits 2021-04-14 20:11:45 +02:00
remove port for docker
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
f409fb53cb
jeltz approved these changes 2021-04-14 20:14:38 +02:00
@ -22,0 +21,4 @@
notify: Restart Prometheus
- name: Creates directory for alerts
file:
Owner

Ça pourrait être bien de préciser le propriétaire et le groupe du dossier.

Ça pourrait être bien de préciser le propriétaire et le groupe du dossier.
pz2891 marked this conversation as resolved
@ -22,0 +26,4 @@
state: directory
mode: 0644
- name: Remove old files
Owner

Est-ce que c'est la peine de garder ces règles une fois que ça a été exécuté une fois sur le parc ?

Peut-être que le fichier alert.rules.yml est créé par défaut dans l'installation Debian ?

Est-ce que c'est la peine de garder ces règles une fois que ça a été exécuté une fois sur le parc ? Peut-être que le fichier `alert.rules.yml` est créé par défaut dans l'installation Debian ?
pz2891 marked this conversation as resolved
@ -76,2 +104,4 @@
when: prometheus_docker_targets is defined
- name: Configure Prometheus postgres monitoring
copy:
Owner

Ajout propriétaire et groupe ?

Ajout propriétaire et groupe ?
@ -0,0 +18,4 @@
annotations:
summary: >-
Le container Docker est éteint / tombé
(instance {{ raw('$labels.instance') }}, container {{ raw('$labels.name') }})
Owner

Pas la peine de mettre l'instance, on l'affiche déjà avec Alertbot automatiquemenet.

Pas la peine de mettre l'instance, on l'affiche déjà avec Alertbot automatiquemenet.
pz2891 marked this conversation as resolved
@ -0,0 +28,4 @@
annotations:
summary: >-
Le container Docker redémarre souvent
(instance {{ raw('$labels.instance') }}, container {{ raw('$labels.name') }})
Owner

Idem (instance superflue).

Idem (instance superflue).
pz2891 marked this conversation as resolved
@ -0,0 +44,4 @@
annotations:
summary: >-
Le container Docker utilise beaucoup de CPU
(instance {{ raw('$labels.instance') }}, container {{ raw('$labels.name') }},
Owner

Idem (instance superflue).

Idem (instance superflue).
pz2891 marked this conversation as resolved
@ -0,0 +15,4 @@
labels:
severity: critical
annotations:
summary: Serveur PostgreSQL down (instance {{ raw('$labels.instance') }})
Owner

Idem (instance superflue).

Idem (instance superflue).
pz2891 marked this conversation as resolved
@ -0,0 +23,4 @@
labels:
severity: critical
annotations:
summary: Serveur PostgreSQL redémarré (instance {{ raw('$labels.instance') }})
Owner

Idem (instance superflue).

Idem (instance superflue).
pz2891 marked this conversation as resolved
@ -0,0 +31,4 @@
labels:
severity: critical
annotations:
summary: Erreur dans l'exporter Postgresql (instance {{ raw('$labels.instance') }})
Owner

Idem (instance superflue).

Idem (instance superflue).
pz2891 marked this conversation as resolved
@ -0,0 +44,4 @@
annotations:
summary: >-
La réplication PostgreSQL lag ({{ raw('$value') }} > 30s)
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname')}} )
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +56,4 @@
annotations:
summary: >-
Le démon autovacuum n'a pas été lancé depuis 24h
(Instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }} )
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +68,4 @@
annotations:
summary: >-
Table non-analysée depuis 24h
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }})
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +84,4 @@
summary: >-
PostgreSQL a trop de connexions
({{ raw('$value | printf "%.1f"') }} > 80%)
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }})
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +94,4 @@
annotations:
summary: >-
PostgreSQL a plus de 5 deadlocks.
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }} )
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +104,4 @@
annotations:
summary: >-
Présence de requêtes lentes (slow-queries)
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }} )
Owner

Idem (instance superflue).
Mettre "database" en français ?

Idem (instance superflue). Mettre "database" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +119,4 @@
annotations:
summary: >-
PostgreSQL a un taux de retour en arrière (rollback) élevé
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value | printf "%.1f"') }} %)
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +129,4 @@
annotations:
summary: >-
Réplication de PostgreSQL WALE stopée
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }} )
Owner

Idem (instance superflue).
Mettre "database" en français ?
"stoppée".

Idem (instance superflue). Mettre "database" en français ? "stoppée".
pz2891 marked this conversation as resolved
@ -0,0 +139,4 @@
annotations:
summary: >-
Beaucoup de requêtes PostgreSQL sont timeout
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value | printf "%.1f"') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +149,4 @@
annotations:
summary: >-
PostgreSQL a un fort taux de deadlock
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value | printf "%.1f"') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +160,4 @@
# labels:
# severity: critical
# annotations:
# summary: La réplication Postgresql a des octets de retard (instance {{ raw('$labels.name') }}, value {{ raw('$value') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +174,4 @@
annotations:
summary: >-
Les tuples morts PostgreSQL sont trop volumineux
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value | printf "%.1f"') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +184,4 @@
annotations:
summary: >-
Split Brain : trop de bases de données PostgreSQL primaires en mode lecture-écriture
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +197,4 @@
annotations:
summary: >-
Le serveur de secours PostgreSQL a été promu comme nœud principal
(instance {{ raw('$labels.instance') }}, database {{ raw('$labels.datname') }}, value {{ raw('$value') }})
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
@ -0,0 +213,4 @@
Trop de deadlocks acquis sur la base de données.
Si cette alerte se produit fréquemment, nous devrons peut-être augmenter
le paramètre postgres max_locks_per_transaction
(instance {{ raw('$labels.instance') }}, value = {{ raw('$value | printf "%.1f"') }} )
Owner

Idem (instance superflue).
Mettre "database" et "value" en français ?

Idem (instance superflue). Mettre "database" et "value" en français ?
pz2891 marked this conversation as resolved
pz2891 merged commit 1520ad92c8 into master 2021-04-14 20:19:44 +02:00
pz2891 deleted branch prometheus_postgres_exporter 2021-04-14 20:21:05 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: aurore/ansible#53
No description provided.