Mise en place d'alertes sur l'utilisation des disques

Objectifs

Pour gérer votre base de données, éviter les problèmes et réduire les temps d'arrêt, il est essentiel de recevoir des alertes en temps voulu sur l'utilisation des ressources. Si vous savez à l'avance que votre base de données est à court de disque, prenez des mesures pour augmenter ces ressources.

Dans ce tutoriel, vous utilisez l'IBM Cloud Et le CLI IBM Cloud Pour mettre en place une alerte qui vous envoie un courrier électronique lorsque l'utilisation du disque de votre base de données dépasse 90 %. Cet exemple spécifique crée une alerte sur un déploiement Databases for Elasticsearch, mais il est applicable à toutes les bases de données du catalogue IBM Cloud Databases.

Commencer à être productif

Mise en place d'une instance de surveillance et de mesures de la plate-forme

Pour commencer, vous devez avoir accès à IBM Cloud® Monitoring dans votre région de base de données et disposer d'une instance de surveillance. Cette instance de surveillance doit se trouver dans la même région que la base de données cible.

Vous devez également avoir activé la fonction Platform Metrics.

Installer les outils de l'interface de ligne de commande

Ensuite, vous avez besoin des IBM Cloud Monitoring CLI et des Cloud Databases CLI plug-in.

Installez l'interface de ligne de commande IBM Cloud Monitoring en exécutant la commande suivante :

ibmcloud plugin install monitoring

Installez le Cloud Databases plug-in CLI en exécutant la commande suivante :

ibmcloud plugin install cloud-databases

Vous êtes maintenant prêt à récupérer et à contrôler votre instance de service.

Récupérer l'instance de votre service de surveillance

Dans cette étape, vous récupérez les informations d'identification nécessaires pour accéder à votre instance de surveillance.

Commencez par vous connecter au CLI IBM Cloud Avec la commande suivante :

ibmcloud login -sso

Suivez les instructions à l'écran pour vous connecter.

Ensuite, ciblez la région appropriée pour votre instance :

ibmcloud target -r <REGION>

Ensuite, dressez la liste des instances de surveillance existantes dans cette région à l'aide de la commande suivante :

ibmcloud monitoring service-instances

Notez le nom de l'instance de service pour laquelle l'option "Platform Metrics" est activée.

Créez maintenant un jeton d'autorisation pour l'API, en utilisant une commande comme :

Les étapes suivantes ne fonctionnent qu'avec Bash.

AUTH_TOKEN=$(ibmcloud iam oauth-tokens | awk '{print $4}')

Vous pouvez maintenant récupérer l'ID de votre instance de service de surveillance pour l'API à l'aide de la commande suivante :

GUID=$(ibmcloud resource service-instance <instance_name_from_step_above> --output json | jq -r '.[].guid')

Configurer le canal de notification

Configurez un canal de notification qui sera informé du déclenchement d'une alerte. Pour configurer votre canal de notification, utilisez la commande suivante :

curl -X POST https://<region>.monitoring.cloud.ibm.com/api/notificationChannels -H "Authorization: Bearer $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "content-type: application/json"  --data-raw '{"notificationChannel":{"id":null,"version":null,"teamId":"","name":"<notification_channel>","type":"EMAIL","enabled":true,"sendTestNotification":true,"options":{"notifyOnOk":true,"notifyOnResolve":true,"emailRecipients":["email@email.com"]}}}'

Le résultat suivant s'affiche :

{"notificationChannel":{"id":39209,"version":1,"customerId":34292,"enabled":true,"sendTestNotification":true,"createdOn":1678967870764,"modifiedOn":1678967870764,"name":"thursTest","options":{"notifyOnOk":true,"emailRecipients":["email@email.com"],"notifyOnResolve":true},"type":"EMAIL"}}% 

Vous avez maintenant créé un canal de notification pour vos alertes.

Notez le champ id renvoyé par l'appel à l'API.

Créez l'alerte

Maintenant que vous disposez d'un canal de notification, créez votre règle d'alerte. Votre règle d'alerte décrit la requête métrique à surveiller, la valeur seuil et l'action à entreprendre lorsque le seuil est dépassé. Dans ce cas, vous surveillez votre ibm_service_instance_name pour vous assurer que max l'utilisation ne dépasse pas 90 %. Si cela se produit, une alerte est déclenchée et vous en êtes informé.

Cette alerte est déclenchée lorsque l'utilisation du disque atteint 90 %. Toutefois, une utilisation de 50 à 70 % du disque est préférable.

Pour retrouver le nom de l'instance de la base de données pour laquelle vous voulez configurer l'alerte, listez toutes vos instances de base de données avec une commande comme :

ibmcloud cdb ls

Veillez à sélectionner une base de données dans la même région que l'instance de surveillance.

Vous voyez alors s'afficher le résultat suivant :

Retrieving instances for all database types in all resource groups in all locations under IBM as …
OK
Name                          Location   State
Databases for PostgreSQL-76   us-south   inactive
testelastic                   eu-gb      active
Databases for MySQL-9j        us-south   active

Maintenant, utilisez le nom de votre base de données pour créer l'alerte en utilisant une commande comme :

curl --request POST \
  --url https://<region>.monitoring.cloud.ibm.com/api/alerts \
  --header "Authorization: Bearer  $AUTH_TOKEN" \
  --header 'Content-Type: application/json' \
  --header "IBMInstanceID: $GUID" \
  --data-raw  '{
	"alert":
		{
			"type": "MANUAL",
			"name": "Disk Alert",
			"description": "",
			"enabled": true,
			"severity": 1,
			"timespan": 60000000,
			"notificationChannelIds": [
				<id_from_previous_step>
			],
			"filter": "ibm_service_instance_name in (\"<db_instance_name_from_previous_step>\")",
		  "condition": "max(max(ibm_databases_for_elasticsearch_disk_used_percent)) > 0.9"
		}
}'

Cette commande prend en compte l'utilisation maximale du disque de n'importe quel membre disponible, quel que soit le nombre de membres.

Vérifiez que votre alerte est créée

Une alerte est créée lorsque vous atteignez 90 % de la taille du disque. Vous recevez l'alerte dans le même courriel que celui que vous avez créé dans le canal de notification. Vous pouvez également utiliser la commande suivante pour vérifier les alertes actives en cours :

ibmcloud monitoring alert list --name <monitoring instance name>

Vous recevez désormais une alerte lorsque l'utilisation du disque de votre instance Databases for Elasticsearch dépasse 90 %, ce qui vous permet d'agir avant que le disque ne soit trop plein.

Etapes suivantes

Pour modifier votre alerte ou en savoir plus sur la surveillance, reportez-vous à la section Démarrer avec{{site.{{site.data.keyword.mon_full_notm}}

Mise à l'échelle des ressources

Si vous recevez une alerte indiquant que l'utilisation de votre disque dépasse 90 %, adaptez votre disque de manière à ne pas dépasser une utilisation de 50 à 70 %. Gérez manuellement les ressources de votre service ou procédez à une mise à l'échelle automatique.

Mise à l'échelle des ressources
Service Gestion des ressources Mise à l'échelle automatique
IBM Cloud® Databases for MongoDB Mise à l'échelle du disque, de la mémoire RAM et de l'UC Mise à l'échelle automatique
IBM Cloud® Databases for PostgreSQL Mise à l'échelle du disque, de la mémoire RAM et de l'UC Mise à l'échelle automatique
IBM Cloud® Databases for Redis Mise à l'échelle du disque, de la mémoire RAM et de l'UC Mise à l'échelle automatique
IBM Cloud® Databases for MySQL Mise à l'échelle du disque, de la mémoire RAM et de l'UC Mise à l'échelle automatique
IBM Cloud® Messages for RabbitMQ Mise à l'échelle du disque, de la mémoire RAM et de l'UC Mise à l'échelle automatique

Cloud Databases mesures des services

Ce tutoriel utilise IBM Cloud® Databases for Elasticsearch Toutefois, le même processus s'applique aux autres services Cloud Databases