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.
| 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: