correction readme
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
# Usage
|
# Usage
|
||||||
|
|
||||||
Ce script Powershell permet de créer un point d'écoute pour permettre un check agent via un serveur HAProxy.
|
Ce script Powershell permet de créer un point d'écoute pour permettre un check agent via un serveur HAProxy.
|
||||||
|
|
||||||
Le script calcule automatiquement le poids de la machine sur lequel il tourne en vérifiant l'usage RAM et / ou CPU selon des critères de facteur d'importance, de valeur de réference pour le calcul ou de limite haute forçant le mode drain (aucune nouvelle connexion depuis haproxy)
|
Le script calcule automatiquement le poids de la machine sur lequel il tourne en vérifiant l'usage RAM et / ou CPU selon des critères de facteur d'importance, de valeur de réference pour le calcul ou de limite haute forçant le mode drain (aucune nouvelle connexion depuis haproxy)
|
||||||
|
|
||||||
|
|
||||||
@@ -8,39 +9,54 @@ Le script calcule automatiquement le poids de la machine sur lequel il tourne en
|
|||||||
# Fonctionnement
|
# Fonctionnement
|
||||||
|
|
||||||
Ce script créé un point d'écoute TCP sur un port donné.
|
Ce script créé un point d'écoute TCP sur un port donné.
|
||||||
Lorsqu'un client s'y connecte, il lance le calcul du poids puis renvoie l'information sous un format de tableau de bytes suivi d'un retour à la ligne.
|
|
||||||
|
Lorsqu'un client s'y connecte, il lance le calcul du poids puis renvoie l'information sous un format de tableau de bytes suivi d'un retour à la ligne
|
||||||
|
|
||||||
Lorsqu'un calcul RAM ou CPU dépasse la limite définie dans CPU_THRESHOLD ou RAM_THRESHOLD, il envoie l'information "drain 0%`n" au serveur HAProxy. Dès que la valeur revient sous la limite, elle envoie une valeur calculée toujours précédée de up (ex : "up 12%`n")
|
Lorsqu'un calcul RAM ou CPU dépasse la limite définie dans CPU_THRESHOLD ou RAM_THRESHOLD, il envoie l'information "drain 0%`n" au serveur HAProxy. Dès que la valeur revient sous la limite, elle envoie une valeur calculée toujours précédée de up (ex : "up 12%`n")
|
||||||
|
|
||||||
# Fichier de configuration
|
# Fichier de configuration
|
||||||
|
|
||||||
L'emplacement du fichier de configuration est défini en début de script. Si ce fichier n'existe pas, il est créé en utilisant des valeurs par défaut.
|
L'emplacement du fichier de configuration est défini en début de script. Si ce fichier n'existe pas, il est créé en utilisant des valeurs par défaut.
|
||||||
|
|
||||||
Il est chargé au démarrage du script et un changement de valeur nécessite un arrêt de celui ci.
|
Il est chargé au démarrage du script et un changement de valeur nécessite un arrêt de celui ci.
|
||||||
|
|
||||||
## Activation / désactivation de vérification RAM ou CPU
|
## Activation / désactivation de vérification RAM ou CPU
|
||||||
|
|
||||||
RAM_ENABLED et CPU_ENABLED sont à 1 si actifs, 0 si inactifs.
|
RAM_ENABLED et CPU_ENABLED sont à 1 si actifs, 0 si inactifs.
|
||||||
|
|
||||||
S'ils sont absents ou à une valeur autre, ils sont désactivés.
|
S'ils sont absents ou à une valeur autre, ils sont désactivés.
|
||||||
|
|
||||||
|
|
||||||
## VALUE et THRESHOLD
|
## VALUE et THRESHOLD
|
||||||
|
|
||||||
CPU_THRESHOLD ou RAM_THRESHOLD correspond à une valeur maximale en pourcent à laquelle l'agent renverra forcément une demande de mise en drain (plus de nouvelle ouverture de session).
|
CPU_THRESHOLD ou RAM_THRESHOLD correspond à une valeur maximale en pourcent à laquelle l'agent renverra forcément une demande de mise en drain (plus de nouvelle ouverture de session).
|
||||||
|
|
||||||
Exemple : CPU_THRESHOLD = 80 > la machine passe en mode drain si le processeur est détecté à 81% d'utilisation ou plus
|
Exemple : CPU_THRESHOLD = 80 > la machine passe en mode drain si le processeur est détecté à 81% d'utilisation ou plus
|
||||||
|
|
||||||
CPU_VALUE ou RAM_VALUE définit le pourcentage d'usage de réference utilisé pour le calcul du poids, selon le facteur d'importance de la valeur.
|
CPU_VALUE ou RAM_VALUE définit le pourcentage d'usage de réference utilisé pour le calcul du poids, selon le facteur d'importance de la valeur.
|
||||||
|
|
||||||
Le calcul de poids se base sur une valeur de départ de 100, et chaque élément calculé se soustrait à cette valeur de départ
|
Le calcul de poids se base sur une valeur de départ de 100, et chaque élément calculé se soustrait à cette valeur de départ
|
||||||
|
|
||||||
Exemple : CPU_VALUE = 50 et CPU_IMPORTANCEFACTOR à 100
|
Exemple : CPU_VALUE = 50 et CPU_IMPORTANCEFACTOR à 100
|
||||||
|
|
||||||
Si l'usage du CPU est à 10, la valeur calculée sera :
|
Si l'usage du CPU est à 10, la valeur calculée sera :
|
||||||
|
|
||||||
10/50*100 = 20
|
10/50*100 = 20
|
||||||
|
|
||||||
100 - 20 = 80
|
100 - 20 = 80
|
||||||
|
|
||||||
Le script renverra à HAProxy la valeur "up 80%"
|
Le script renverra à HAProxy la valeur "up 80%"
|
||||||
|
|
||||||
La valeur de THRESHOLD peut être inférieure à VALUE.
|
La valeur de THRESHOLD peut être inférieure à VALUE.
|
||||||
|
|
||||||
Ainsi, si on créé un CPU_THRESHOLD à 80 et un CPU_VALUE à 90, le poids de la machine va diminuer progressivement jusqu'à arriver à 80% d'utilisation CPU, mais prendra en compte dans le calcul 90% de son utilisation.
|
Ainsi, si on créé un CPU_THRESHOLD à 80 et un CPU_VALUE à 90, le poids de la machine va diminuer progressivement jusqu'à arriver à 80% d'utilisation CPU, mais prendra en compte dans le calcul 90% de son utilisation.
|
||||||
|
|
||||||
## IMPORTANCEFACTOR
|
## IMPORTANCEFACTOR
|
||||||
|
|
||||||
Le facteur d'importance permet de réduire le calcul du score pour une métrique afin de la rendre moins importante.
|
Le facteur d'importance permet de réduire le calcul du score pour une métrique afin de la rendre moins importante.
|
||||||
|
|
||||||
Un IMPORTANCEFACTOR à 100 veut dire que la valeur est prise en compte à 100% de son calcul initial.
|
Un IMPORTANCEFACTOR à 100 veut dire que la valeur est prise en compte à 100% de son calcul initial.
|
||||||
|
|
||||||
Un IMPORTANCEFACTOR à 50 ne prendra que la moitié de la valeur dans le calcul initial de poids.
|
Un IMPORTANCEFACTOR à 50 ne prendra que la moitié de la valeur dans le calcul initial de poids.
|
||||||
|
|
||||||
### Exemples pour l'IMPORTANCEFACTOR
|
### Exemples pour l'IMPORTANCEFACTOR
|
||||||
@@ -50,6 +66,7 @@ Un IMPORTANCEFACTOR à 50 ne prendra que la moitié de la valeur dans le calcul
|
|||||||
Ram utilisée : 60%
|
Ram utilisée : 60%
|
||||||
|
|
||||||
60 / 80 * 100 = 75
|
60 / 80 * 100 = 75
|
||||||
|
|
||||||
100 - 75 = 25
|
100 - 75 = 25
|
||||||
|
|
||||||
Poids de la machine renvoyé : 25%
|
Poids de la machine renvoyé : 25%
|
||||||
@@ -59,6 +76,7 @@ Poids de la machine renvoyé : 25%
|
|||||||
Ram utilisée : 60%
|
Ram utilisée : 60%
|
||||||
|
|
||||||
60 / 80 * 50 = 37.5 (arrondi à 37)
|
60 / 80 * 50 = 37.5 (arrondi à 37)
|
||||||
|
|
||||||
100 - 37 = 63
|
100 - 37 = 63
|
||||||
|
|
||||||
Poids de la machine renvoyé : 63%
|
Poids de la machine renvoyé : 63%
|
||||||
|
|||||||
Reference in New Issue
Block a user