Ansible: Jak automatycznie monitorować nowo utworzone instancje Amazon EC2 za pomocą Prometheusa?

Opublikowany: 2021-12-19
Ansible Uzyskaj listę adresów IP i dynamicznie aktualizuj konfigurację Prometheus

Czy masz któreś z poniższych pytań?

  • Użyj wykrywania usług opartego na plikach, aby odkryć cele scrape
  • Jak automatycznie wykryć użycie wielu adresów IP?
  • Automatyczne monitorowanie instancji EC2
  • Monitoring z Prometheusem
  • Używasz Prometheusa do monitorowania nowo utworzonych instancji Amazon EC2?
  • Jak dynamicznie zaktualizować plik listy adresów IP Prometheus Targets po utworzeniu maszyn wirtualnych Amazon EC2?

Ansible jest bez wątpienia najlepszym narzędziem do automatyzacji operacji w branży. Na Crunchify opublikowaliśmy kilkanaście artykułów Ansible na wiele tematów.

W tym samouczku omówimy, jak zaktualizować plik listy adresów IP Prometheus Targets po dynamicznym utworzeniu maszyn wirtualnych Amazon EC2.

Rozważ ten scenariusz:

  1. Korzystasz z Prometheusa do monitorowania infrastruktury produkcyjnej.
    • Zapoznaj się ze szczegółami samouczka konfiguracji Prometheus.
  2. Korzystanie z ansibla odradza 5 nowych maszyn wirtualnych Amazon EC2
    • Śledź całkowicie nowy samouczek dotyczący instancji Amazon EC2.
  3. Zdobądź 5 adresów IP i zaktualizuj grupę [crunchify] w czasie wykonywania
    • Śledź całkowicie samouczek dotyczący aktualizacji plików hostów ansible.
  4. Zaktualizuj plik crunchify_prometheus.txt o zaktualizowany adres IP
  5. Prześlij plik do nowego hosta, na którym działa Prometheus
  6. Prometheus odczyta ten nowy updated IP file dynamicznie
  7. Wszystkie nowe hosts będą monitorowane automatycznie

W przypadku kroków od 4 do 7 omówimy tutaj wszystkie kroki.

Jak zaktualizować plik listy adresów IP Prometheus Targets po dynamicznym utworzeniu maszyn wirtualnych Amazon EC2?

Szczegółowe kroki:

  1. Pobierz listę wszystkich adresów IP z pliku ansible hosts w grupie [Crunchify] .
  2. Dodaj wszystkie adresy IP do pliku crunchify.txt tylko w celach testowych. Nie będziemy używać tego pliku w kolejnych krokach.
  3. Usuń istniejący plik crunchify_prometheus.json.
  4. Utwórz nowy plik crunchify_prometheus.json z przykładowym nowym plikiem listy adresów IP prometheusa.
  5. Zastąp iplist z pliku crunchify_prometheus.json listą adresów IP.
  6. Zamień u' na ' .
  7. Zamień ' na " .
  8. Usuń istniejący plik crunchify_prometheus.json ze zdalnego hosta, na którym działa proces Prometheus.
  9. Skopiuj plik crunchify_prometheus.json z hosta lokalnego na host zdalny, aby prometheus mógł go wykorzystać.

plik crunchify_prometheus_file_update.yml.

Wykonaj Poradnik Ansible:

Wynik Ansible Playbook:

Otóż ​​to. Gratulacje. Pomyślnie skopiowałeś nowy zaktualizowany plik do nowego hosta, a Prometheus automatycznie monitoruje teraz Twoje nowo utworzone instancje Amazon EC2.

Co dalej?

Sprawdź samouczek dotyczący install docker w systemie Linux.

Jak zainstalować kontener Docker w systemie Linux? (Ubuntu i CentOS)