Impostazione degli avvisi per l'utilizzo del disco
Obiettivi
Ricevere avvisi tempestivi sull'utilizzo delle risorse è fondamentale per gestire il database, evitare problemi e ridurre i tempi di inattività. Se sapete in anticipo che il vostro database sta esaurendo il disco, prendete provvedimenti per scalare le risorse.
In questa esercitazione, si utilizza l'API IBM Cloud API e la CLI IBM Cloud per impostare un avviso che invia un'email ogni volta che l'utilizzo del disco del database supera il 90% Per impostare un avviso che invii una e-mail ogni volta che l'utilizzo del disco del database supera il 90%. Questo esempio specifico crea un avviso su una distribuzione Databases for Elasticsearch, ma è applicabile a tutti i database del catalogo IBM Cloud Databases.
Diventare produttivi
Impostare l'istanza di monitoraggio e le metriche della piattaforma
Per iniziare, è necessario accedere a IBM Cloud® Monitoring nell'area del database e disporre di un'istanza di monitoraggio. Questa istanza di monitoraggio deve trovarsi nella stessa regione della destinazione del database.
È inoltre necessario che le metriche della piattaforma siano abilitate.
Installare gli strumenti dell'interfaccia a riga di comando
Successivamente, sono necessari i simboli IBM Cloud Monitoring CLI e Cloud Databases CLI plug-in.
Installa la IBM Cloud CLI di monitoraggio eseguendo il seguente comando:
ibmcloud plugin install monitoring
Installa il Cloud Databases plug-in CLI eseguendo il seguente comando:
ibmcloud plugin install cloud-databases
Ora si è pronti a recuperare e monitorare l'istanza del servizio.
Recuperare l'istanza del servizio di monitoraggio
In questa fase si recuperano le credenziali necessarie per accedere all'istanza di monitoraggio.
Iniziare con l'accesso al IBM Cloud Con il seguente comando:
ibmcloud login -sso
Seguire le istruzioni sullo schermo per accedere.
Quindi, selezionare la regione appropriata per l'istanza:
ibmcloud target -r <REGION>
Quindi, elencare le istanze di monitoraggio esistenti in quell'area con il seguente comando:
ibmcloud monitoring service-instances
Notare il nome dell'istanza del servizio con "Platform Metrics" abilitato.
Ora create un token di autorizzazione per l'API, usando un comando come:
I passaggi seguenti funzionano solo con Bash.
AUTH_TOKEN=$(ibmcloud iam oauth-tokens | awk '{print $4}')
Ora è possibile recuperare l'ID dell'istanza del servizio di monitoraggio per l'API con il seguente comando:
GUID=$(ibmcloud resource service-instance <instance_name_from_step_above> --output json | jq -r '.[].guid')
Configura il canale di notifica
Configurare un canale di notifica per essere avvisati quando viene attivato un avviso. Per impostare il canale di notifica, utilizzare il seguente 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"]}}}'
Viene visualizzato il seguente output:
{"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"}}%
È stato creato un canale di notifica per gli avvisi.
Prendere nota del campo id restituito dalla chiamata API.
Creare l'avviso
Ora che avete un canale di notifica, create la vostra regola di avviso. La regola di avviso descrive la query metrica da monitorare,
il valore di soglia e l'azione da intraprendere quando la soglia viene superata. In questo caso, si sta monitorando il ibm_service_instance_name per assicurarsi che max l'utilizzo non superi il 90%. Se ciò accade,
viene attivato un allarme e si riceve una notifica.
Questo avviso viene attivato al 90% di utilizzo del disco. Tuttavia, è preferibile un utilizzo del disco pari al 50-70%.
Per recuperare il nome dell'istanza del database per cui si vuole impostare l'avviso, elencare tutte le istanze del database con un comando come:
ibmcloud cdb ls
Assicurarsi di selezionare un database nella stessa regione dell'istanza di monitoraggio.
Viene visualizzato un risultato come il seguente:
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
Ora, utilizzare il nome del database per creare l'avviso utilizzando un comando come:
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"
}
}'
Questo comando prende l'utilizzo massimo del disco di qualsiasi membro disponibile, indipendentemente dal numero di membri.
Verificare che l'avviso sia stato creato
Viene creato un avviso ogni volta che si raggiunge il 90% delle dimensioni del disco. L'avviso viene inviato allo stesso indirizzo e-mail creato nel canale di notifica. È inoltre possibile utilizzare il seguente comando per controllare gli avvisi attivi correnti:
ibmcloud monitoring alert list --name <monitoring instance name>
Ora si riceve un avviso ogni volta che l'utilizzo del disco dell'istanza Databases for Elasticsearch supera il 90%, in modo da poter intervenire prima che il disco sia troppo pieno.
Passi successivi
Per modificare l'avviso o per saperne di più sul Monitoraggio, vedere Per iniziare con{{site{{site.data.keyword.mon_full_notm}}.
Ridimensionamento delle risorse
Se si riceve un avviso di utilizzo del disco superiore al 90%, ridimensionare il disco in modo da non superare il 50-70% di utilizzo. Gestire manualmente le risorse del servizio o autoscalare.
| service | Gestione delle risorse | Ridimensionamento automatico |
|---|---|---|
| IBM Cloud® Databases for MongoDB | Scalare disco, RAM e CPU | Ridimensionamento automatico |
| IBM Cloud® Databases for PostgreSQL | Scalare disco, RAM e CPU | Ridimensionamento automatico |
| IBM Cloud® Databases for Redis | Scalare disco, RAM e CPU | Ridimensionamento automatico |
| IBM Cloud® Databases for MySQL | Scalare disco, RAM e CPU | Ridimensionamento automatico |
| IBM Cloud® Messages for RabbitMQ | Scalare disco, RAM e CPU | Ridimensionamento automatico |
Cloud Databases metriche di servizio
Questa esercitazione utilizza IBM Cloud® Databases for Elasticsearch. Tuttavia, lo stesso processo si applica ad altri servizi Cloud Databases: