Ansible: come monitorare automaticamente le istanze Amazon EC2 appena create utilizzando Prometheus?

Pubblicato: 2021-12-19
Ansible Ottieni l'elenco di IP e aggiorna la configurazione di Prometheus in modo dinamico

Hai una delle seguenti domande?

  • Usa il rilevamento dei servizi basato su file per scoprire gli obiettivi di scraping
  • Come scoprire automaticamente l'uso di più IP?
  • Monitoraggio automatico delle istanze EC2
  • Monitoraggio con Prometeo
  • Utilizzi Prometheus per monitorare le istanze Amazon EC2 appena create?
  • Come aggiornare dinamicamente il file dell'elenco IP di Prometheus Targets dopo aver creato le macchine virtuali Amazon EC2?

Ansible è senza dubbio il miglior strumento di automazione delle operazioni disponibile nel settore. Su Crunchify, abbiamo pubblicato più di dozzine di articoli Ansible su numerosi argomenti.

In questo tutorial esamineremo come aggiornare il file dell'elenco IP di Prometheus Targets dopo aver creato VM Amazon EC2 in modo dinamico.

Considera questo scenario:

  1. Stai eseguendo Prometheus per monitorare la tua infrastruttura di produzione.
    • Segui il tutorial di installazione di Prometheus nei dettagli.
  2. Utilizzando ansible genera 5 nuove VM Amazon EC2
    • Segui completamente il tutorial sulla generazione della nuova istanza Amazon EC2.
  3. Ottieni 5 IP e aggiorna il gruppo [crunchify] in fase di esecuzione
    • Segui completamente il tutorial del gruppo di aggiornamento dei file hosts di ansible.
  4. Aggiorna il file crunchify_prometheus.txt con IP aggiornato
  5. Invia il file al nuovo host in cui hai prometheus in esecuzione
  6. Prometheus leggerà questo nuovo updated IP file in modo dinamico
  7. Tutti i nuovi hosts verranno monitorati automaticamente

Per i passaggi da 4 a 7 esamineremo tutti i passaggi qui.

Come aggiornare il file dell'elenco IP di Prometheus Targets dopo aver creato VM Amazon EC2 in modo dinamico

Passaggi dettagliati:

  1. Ottieni l'elenco di tutti gli IP dal file ansible hosts nel gruppo [Crunchify] .
  2. Aggiungi tutti gli IP al file crunchify.txt solo a scopo di test. Non utilizzeremo questo file nei passaggi successivi.
  3. Elimina il file crunchify_prometheus.json esistente.
  4. Crea un nuovo file crunchify_prometheus.json con un nuovo file di elenco IP di prometheus di esempio.
  5. Sostituisci iplist dal file crunchify_prometheus.json con l'elenco di IP.
  6. Sostituisci u' con ' .
  7. Sostituisci ' con " .
  8. Elimina il file crunchify_prometheus.json esistente dall'host remoto in cui è in esecuzione il processo Prometheus.
  9. Copia il file crunchify_prometheus.json dall'host locale all'host remoto in modo che Prometeo possa consumarlo.

crunchify_prometheus_file_update.yml.

Esegui Ansible Playbook:

Risultato di Ansible Playbook:

Questo è tutto. Congratulazioni. Hai copiato correttamente il nuovo file aggiornato sul nuovo host e Prometheus ora sta monitorando automaticamente le tue istanze Amazon EC2 appena create.

Qual è il prossimo?

Dai un'occhiata al tutorial su come install docker su Linux.

Come installare Docker Container su Linux? (Ubuntu e CentOS)