Le strict minimum dont vous aurez besoin est:
check_mysql [-d database][-H host][-P port][-u user][-p password]
Le texte que Icinga2 est:
object CheckCommand "mysql" {
import "plugin-check-command"
command = [ PluginDir + "/check_mysql" ]
timeout = 1m
arguments += {
"-C" = "$mysql_cacert$"
"-D" = "$mysql_cadir$"
"-H" = "$mysql_hostname$"
"-L" = "$mysql_ciphers$"
"-P" = "$mysql_port$"
"-S" = {
set_if = "$mysql_check_slave$"
}
"-a" = "$mysql_cert$"
"-c" = "$mysql_critical$"
"-d" = "$mysql_database$"
"-f" = "$mysql_file$"
"-g" = "$mysql_group$"
"-k" = "$mysql_key$"
"-l" = {
set_if = "$mysql_ssl$"
}
"-n" = {
set_if = "$mysql_ignore_auth$"
}
"-p" = "$mysql_password$"
"-s" = "$mysql_socket$"
"-u" = "$mysql_username$"
"-w" = "$mysql_warning$"
}
vars.check_address = {
type = "Function"
}
vars.check_ipv4 = false
vars.check_ipv6 = false
vars.mysql_hostname = "$check_address$"
}
donc sur la définition de votre hôte, vous aurez besoin d'avoir:
vars.mysql_port = [port]
vars.mysql_database = [database]
vars.mysql_password = [password]
vars.mysql_username = [user]
vars.mysql_critical = [critical threshold]
vars.mysql_warning = [warning threshold]
Si vous utilisez Icinga2 Director c'est beaucoup plus facile. Vous pouvez simplement créer un clone de la commande et créer vos propres champs.
J'utilise un service géré et je n'ai que des points de terminaison mais aucune configuration d'hôtes pour cela! –
Ajoutez simplement le service mysql en tant qu'hôte et utilisez la commande check_mysql pour la vérification de l'hôte au lieu de ping ou host en vie. – cflinspach