Configuração de alertas de disco para utilização de disco

Objetivos

Receber alertas oportunos sobre a utilização de recursos é fundamental para gerenciar seu banco de dados, evitar problemas e reduzir o tempo de inatividade. Se você souber de antemão que seu banco de dados está ficando sem disco, tome medidas para dimensionar esses recursos.

Neste tutorial, você usa a API IBM Cloud E a IBM Cloud Para configurar um alerta que lhe envia um e-mail sempre que a utilização do disco do seu banco de dados ultrapassa 90%. Este exemplo específico cria um alerta em uma implementação Databases for Elasticsearch, mas é aplicável a todos os bancos de dados no catálogo IBM Cloud Databases.

Entrando em ação

Configurar a instância de monitoramento e as métricas da plataforma

Para começar, você precisa acessar IBM Cloud® Monitoring na região do seu banco de dados e ter uma instância de monitoramento disponível. Essa instância de monitoramento deve estar na mesma região que o destino do banco de dados.

Você também deve ter o Platform Metrics ativado.

Instalar ferramentas de interface de linha de comando

Em seguida, você precisa da IBM Cloud CLI de monitoramento e Cloud Databases CLI plug-in.

Instale o IBM Cloud Monitoring CLI executando o seguinte comando:

ibmcloud plugin install monitoring

Instale o Cloud Databases plug-in CLI executando o seguinte comando:

ibmcloud plugin install cloud-databases

Agora você está pronto para recuperar e monitorar sua instância de serviço.

Recupere sua instância de serviço de monitoramento

Nesta etapa, você recupera as credenciais necessárias para obter acesso à sua instância de monitoramento.

Comece fazendo login na IBM Cloud Com o seguinte comando:

ibmcloud login -sso

Siga as instruções na tela para fazer login.

Em seguida, direcione a região apropriada para sua instância:

ibmcloud target -r <REGION>

Em seguida, liste as instâncias de monitoramento existentes nessa região com o seguinte comando:

ibmcloud monitoring service-instances

Observe o nome da instância de serviço que tem a opção "Platform Metrics" ativada.

Agora, crie um token de autorização para a API, usando um comando como:

As etapas a seguir funcionam apenas no Bash.

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

Agora você pode recuperar a ID da instância do serviço de monitoramento para a API com o seguinte comando:

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

Configure o canal de notificação

Configure um canal de notificação para ser notificado quando um alerta for acionado. Para configurar seu canal de notificação, use o seguinte comando:

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"]}}}'

Você vê a seguinte saída:

{"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"}}% 

Agora você criou um canal de notificação para seus alertas.

Anote o campo id que é retornado pela chamada de API.

Criar o alerta

Agora que você tem um canal de notificação, crie sua regra de alerta. Sua regra de alerta descreve a consulta métrica a ser monitorada, o valor limite e a ação a ser tomada quando o limite for ultrapassado. Nesse caso, você está monitorando seu ibm_service_instance_name para garantir que a max utilização não ultrapasse 90%. Se isso acontecer, um alerta será acionado e você será notificado.

Esse alerta é acionado com 90% de utilização do disco. No entanto, é preferível uma utilização de disco de 50 a 70%.

Para recuperar o nome da instância do banco de dados para a qual você deseja configurar o alerta, liste todas as instâncias do banco de dados com um comando como:

ibmcloud cdb ls

Certifique-se de selecionar um banco de dados na mesma região que a instância de monitoramento.

Você verá uma saída semelhante à seguinte:

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

Agora, use o nome de seu banco de dados para criar o alerta usando um comando como:

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"
		}
}'

Esse comando obtém a utilização máxima de disco de qualquer membro disponível, independentemente do número de membros.

Verifique se seu alerta foi criado

Um alerta é criado sempre que você atinge 90% do tamanho do disco. Você recebe o alerta no mesmo e-mail que criou no canal de notificação. Você também pode usar o seguinte comando para verificar os alertas ativos atuais:

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

Agora você recebe um alerta sempre que a utilização do disco da instância Databases for Elasticsearch exceder 90%, para que você possa agir antes que o disco fique muito cheio.

Próximas etapas

Para modificar seu alerta ou saber mais sobre o Monitoramento, consulte Introdução ao{{site{{site.data.keyword.mon_full_notm}}.

Recursos de ajuste de escala

Se você receber um alerta de que a utilização do disco excede 90%, dimensione o disco para que não exceda 50-70% de uso. Gerencie manualmente os recursos do seu serviço ou faça a autoescala.

Escalando recursos
Serviço Gerenciando Recursos Auto-scaling
IBM Cloud® Databases for MongoDB Ajuste de escala de disco, de RAM e de CPU Auto-scaling
IBM Cloud® Databases for PostgreSQL Ajuste de escala de disco, de RAM e de CPU Auto-scaling
IBM Cloud® Databases for Redis Ajuste de escala de disco, de RAM e de CPU Auto-scaling
IBM Cloud® Databases for MySQL Ajuste de escala de disco, de RAM e de CPU Auto-scaling
IBM Cloud® Messages for RabbitMQ Ajuste de escala de disco, de RAM e de CPU Auto-scaling

Cloud Databases métricas de serviço

Este tutorial usa IBM Cloud® Databases for Elasticsearch. No entanto, o mesmo processo se aplica a outros serviços Cloud Databases: