Aller au contenu principal

Google CloudSQL MySQL

Contenu du connecteur de supervision​

Objets supervisés​

Le connecteur de supervision Google CloudSQL MySQL collecte les données pour:

  • Cpu
  • Innodb
  • Network
  • Queries
  • Storage

Règles de découverte​

Le connecteur de supervision Centreon Google CloudSQL MySQL inclut un provider de découverte d'Hôtes. Celui-ci permet de découvrir l'ensemble des bases de données MySQL rattachées à un projet GCP donné:

image

Le fichier key doit être déployé sur les Collecteurs utilisés pour la découverte en amont de son execution (voir chapitre Prérequis)

Vous trouverez plus d'informations sur la découverte d'Hôtes et son fonctionnement sur la documentation du module: Découverte des hôtes

Métriques collectées​

Pour l'ensemble des métriques collectées, il est possible de choisir aggregation: average, minimum, maximum et total.

Metric nameDescriptionUnit
database_id~aggregation#database.cpu.utilization.percentageUtilization of the reserved CPU%
database_id~aggregation#database.cpu.reserved_cores.countNumber of cores reserved for the database instance

Prérequis​

Privilèges Google Cloud​

Créer une clé de compte de service (télécharger sa clé privée sous la forme d'un fichier JSON) avec les privilèges suivants:

Google ScopeDescription
https://www.googleapis.com/auth/cloud-platformView and manage your data across Google Cloud Platform services

Comment créer une clé de compte de service: https://developers.google.com/identity/protocols/oauth2/service-account

Installation​

  1. Installer le Plugin sur tous les Collecteurs Centreon :
yum install centreon-plugin-Cloud-Gcp-CloudSQL-MySQL-Api
  1. Sur l'interface Web de Centreon, installer le connecteur de supervision Google CloudSQL MySQL depuis la page Configuration > Gestionnaire de connecteurs de supervision

Configuration​

Ce connecteur de supervision est conçu de manière à avoir dans Centreon un hôte par instance Google CloudSQL MySQL. Lorsque vous ajoutez un hôte à Centreon, appliquez-lui le modèle Cloud-Gcp-CloudSQL-MySQL-custom. Une fois celui-ci configuré, certaines macros doivent être renseignées:

MandatoryNameDescription
XGCPKEYFILEPATHService account key json file
XGCPSCOPEENDPOINTGoogle Scope. Default: https://www.googleapis.com/auth/cloud-platform
XGCPDIMENSIONNAMEThe name of the dimension to filter on. Default: resource.labels.database_id
XGCPDIMENSIONOPERATORDefine the type of filter match to use. Default: equals
XGCPDIMENSIONVALUEID of the database you want to monitor.
PROXYURLConfigure proxy URL
GCPEXTRAOPTIONSAny extra option you may want to add to every command_line (eg. a --verbose flag)
DUMMYSTATUSHost state. Default is OK, do not modify it until you know what you are doing
DUMMYOUTPUTHost check output. Default is 'This is a dummy check'. Customize it with your own if needed

WARNING: La clé de service (format json) doit être hébergée sur le collecteur Centreon. L'utilisateur centreon-engine doit avoir les droits en lecture sur ce fichier.

FAQ​

Comment puis-je tester le Plugin et que signifient les options des commandes ?​

Une fois le Plugin installé, vous pouvez tester celui-ci directement en ligne de commande depuis un collecteur Centreon en vous connectant avec l'utilisateur centreon-engine:

/usr/lib/centreon/plugins/centreon_gcp_cloudsql_mysql_api.pl \
--plugin=cloud::google::gcp::cloudsql::mysql::plugin \
--mode=cpu \
--key-file=/var/lib/centreon-engine/centreon-dev-6e5531fc9e82.json \
--dimension-name='resource.labels.database_id' \
--dimension-operator='equals' \
--dimension-value='centreon-dev:centreon-mysql' \
--aggregation='average' \
--warning-utilization='90' \
--critical-utilization='95' \
--verbose

La commande devrait retourner un message de sortie de la forme ci-dessous:

OK: Instance 'centreon-dev:centreon-mysql' aggregation 'average' metrics cpu utilization: 2.40 %, cpu reserved cores: 1.00 | 'centreon-dev:centreon-mysql~average#database.cpu.utilization.percentage'=2.40%;0:95;;0;100 'centreon-dev:centreon-mysql~average#database.cpu.reserved_cores.count'=1.00;;;;
Checking 'centreon-dev:centreon-mysql'
aggregation 'average' metrics cpu utilization: 2.40 %, cpu reserved cores: 1.00

Cette commande contrôle l'utilisation processeur (--mode=cpu) d'une instance Google MySQL ayant pour nom centreon-dev:centreon-mysql (--dimension-name='resource.labels.database_id' --dimension-operator='equals' --dimension-value='centreon-dev:centreon-mysql').

Cette commande déclenchera une alarme WARNING si l'utilisation processeur est supérieur à 90% (--warning-utilization='90') et une alarme CRITICAL si supérieur à 95% (--critical-utilization='95').

Pour chaque mode, la liste de toutes les métriques, seuils associés et options complémentaires peut être affichée en ajoutant le paramètre --help à la commande:

/usr/lib/centreon/plugins/centreon_gcp_cloudsql_mysql_api.pl \
--plugin=cloud::google::gcp::cloudsql::mysql::plugin \
--mode=cpu \
--help

J'obtiens le message d'erreur suivant: UNKNOWN: No metrics. Check your options or use --zeroed option to set 0 on undefined values​

Lors du déploiement de mes contrôles, j'obtiens le message suivant 'UNKNOWN: No metrics. Check your options or use --zeroed option to set 0 on undefined values'.

Cela signifie qu'il n'y a pas de données sur la période.

Vous pouvez ajouter --zeroed à la macro EXTRAOPTIONS du service en question afin de forcer le stockage d'un 0 et ainsi éviter un statut UNKNOWN.