CodeGym /Kursy /Docker SELF /Wbudowane narzędzia monitorowania

Wbudowane narzędzia monitorowania

Docker SELF
Poziom 21 , Lekcja 2
Dostępny

3.1 Komenda docker stats

Docker oferuje wbudowane narzędzie do monitorowania kontenerów w czasie rzeczywistym — komendę docker stats. Ta komenda pozwala śledzić podstawowe metryki wydajności kontenerów, takie jak użycie CPU, pamięci, sieci i dysku. Zobaczmy, jak używać docker stats, żeby mieć wgląd w stan i wydajność swoich kontenerów.

Komenda docker stats podaje dynamiczne statystyki dotyczące pracy kontenerów w czasie rzeczywistym. Wyświetla następujące metryki dla każdego kontenera:

  • CPU %: procent użycia CPU przez kontener.
  • MEM USAGE / LIMIT: użycie pamięci przez kontener i ustawiony limit.
  • MEM %: procent użycia pamięci przez kontener.
  • NET I/O: ruch sieciowy (przychodzący i wychodzący).
  • BLOCK I/O: liczba operacji wejścia/wyjścia na dysku.
  • PIDS: liczba procesów uruchomionych w kontenerze.

Podstawowe użycie komendy docker stats

Uruchomienie komendy docker stats bez parametrów wyświetla metryki dla wszystkich uruchomionych kontenerów:

Terminal


docker stats 

Przykład wyniku komendy docker stats:

Terminal


CONTAINER ID   NAME                CPU %     MEM USAGE / LIMIT     MEM %     NET I/O           BLOCK I/O         PIDS
d9b100f2f636   my_nginx            0.07%     1.24MiB / 1.952GiB    0.06%     1.68kB / 0B       0B / 12.3MB       2
fa3f3f3f3f3f   my_postgres         2.13%     230.5MiB / 1.952GiB   11.52%    2.12MB / 2.05MB   85.6MB / 45.2MB   10

Monitorowanie konkretnego kontenera

Możesz śledzić metryki dla konkretnego kontenera, podając jego nazwę lub ID:

Terminal


docker stats my_nginx 

3.2 Ustawienia komendy docker stats

Parametry komendy docker stats

Komenda docker stats obsługuje kilka opcji, które pozwalają dostosować wyświetlane dane:

  • --all lub -a: pokazuje metryki dla wszystkich kontenerów, w tym zatrzymanych.
  • --no-stream: wyświetla metryki tylko raz i kończy wykonywanie komendy.
  • --format: dostosowuje wyświetlanie danych za pomocą szablonów.

Przykład użycia parametru --no-stream

Wyświetlenie metryk jednorazowo dla wszystkich kontenerów:

Terminal

docker stats --no-stream

Przykład użycia parametru --format

Sformatowany wyświetl danych:

Terminal

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Przykładowy output:

Terminal

CONTAINER ID   CPU %     MEM USAGE / LIMIT
d9b100f2f636   0.07%     1.24MiB / 1.952GiB
fa3f3f3f3f3f   2.13%     230.5MiB / 1.952GiB

3.3 Praktyczne użycie docker stats

Przykład 1: śledzenie obciążenia serwera

Możesz używać docker stats do monitorowania kontenerów na serwerze i identyfikacji tych z dużym obciążeniem CPU lub pamięci. To pomoże zoptymalizować wykorzystanie zasobów i poprawić wydajność aplikacji.

Terminal

docker stats

Przykład 2: monitorowanie konkretnego kontenera podczas testowania

Podczas testowania nowych wersji aplikacji lub zmian w konfiguracjach możesz śledzić metryki konkretnego kontenera, aby upewnić się, że nie ma negatywnego wpływu na wydajność.

Terminal

docker stats my_test_container

Przykład 3: integracja z systemami monitoringu

Możesz zintegrować wynik polecenia docker stats z zewnętrznymi systemami monitorowania, używając opcji --format, aby stworzyć format kompatybilny z twoim narzędziem monitorującym.

Terminal

docker stats --no-stream --format "{{.Container}}: CPU {{.CPUPerc}}, MEM {{.MemUsage}}"

Ograniczenia polecenia docker stats

Chociaż docker stats dostarcza przydatnych metryk w czasie rzeczywistym, ma pewne ograniczenia:

  • Ograniczone metryki: polecenie pokazuje tylko podstawowe metryki i nie dostarcza szczegółowych informacji o stanie kontenerów.
  • Ręczne użycie: docker stats jest wygodny w użyciu ręcznym, ale do zautomatyzowanego monitoringu i alertowania lepiej wykorzystać specjalistyczne narzędzia, takie jak Prometheus i Grafana.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION