Na dysku zostało 20% wolnego miejsca. Dla jednej aplikacji to zapas na kilka miesięcy, dla innej — do najbliższego importu danych. Gdy trzeba zamówić sprzęt i znaleźć termin na rozbudowę, bardziej przydaje się odpowiedź na pytanie: ile czasu mamy na działanie? Zabbix dostarcza pomiary, z których można przygotować taką ocenę.

Dlaczego sam procent zajętości nie wystarcza?

Procent ułatwia szybki przegląd wielu serwerów, ale przy planowaniu rozbudowy potrzebujemy jeszcze ilości wolnego miejsca i tempa przyrostu danych. Wolne 100 GiB znaczy coś innego przy wzroście o 1 GiB dziennie niż przy wzroście o 20 GiB. Równie istotne jest to, jak długo potrwa zatwierdzenie zakupu, dostawa i wdrożenie.

Dlatego proponujemy patrzeć na pojemność w trzech wymiarach: ile miejsca jest dostępne, jak szybko go ubywa i ile dni potrzeba na wykonanie uzgodnionej zmiany. Dopiero ich zestawienie pozwala zdecydować, czy spokojnie obserwować wykres, czy już rozpoczynać przygotowania.

Najpierw ustal, co dokładnie mierzysz

W Zabbix klucz vfs.fs.size[/,free] zwraca wolne miejsce w bajtach dla systemu plików zamontowanego pod /. Tryb pfree podaje procent wolnego miejsca. Dla osobnego wolumenu podstaw jego rzeczywisty punkt montowania. Dane z systemu plików wewnątrz maszyny wirtualnej odpowiadają na inne pytanie niż pojemność storage udostępniającego jej dyski. [S1]

Przed analizą zapisz nazwę serwera, punkt montowania, klucz elementu i jednostkę. Odczytaj tę samą wartość w panelu systemu operacyjnego i porównaj ją z najnowszą próbką monitoringu, uwzględniając różnicę czasu. Jeśli wyniki się rozchodzą, wyjaśnij jednostki, zakres pomiaru i rezerwację przestrzeni, zanim policzysz tempo wzrostu.

W środowisku Proxmox Virtual Environment szablon Proxmox VE by HTTP dostarcza dane przez API. Jego zakres zależy od wersji szablonu i konfiguracji. Zestaw listę obserwowanych zasobów z wolumenami ważnymi dla aplikacji; brak potrzebnego pomiaru wewnątrz VM trzeba uzupełnić odpowiednią metodą, na przykład agentem w systemie gościa. [S4]

Przykład: ile dni zostało do przyjętej rezerwy?

Przyjmijmy hipotetyczny wolumen aplikacji. Czternaście dni temu miał 600 GiB wolnego miejsca, dzisiaj ma 390 GiB. W tym okresie nie zmieniano jego rozmiaru ani zasad usuwania danych. Dla ćwiczenia przyjmujemy rezerwę 90 GiB oraz 21 dni potrzebnych na przygotowanie i wykonanie rozbudowy. To założenia przykładu, a nie zalecane wartości dla każdego serwera.

Średni ubytek miejsca: (600 − 390) / 14 = 15 GiB na dzień.

Miejsce do wykorzystania przed osiągnięciem rezerwy: 390 − 90 = 300 GiB.

Orientacyjny czas do rezerwy: 300 / 15 = 20 dni.

W tym scenariuszu warto rozpocząć działanie od razu: szacowane 20 dni jest krótsze od przyjętych 21 dni potrzebnych na zmianę. Nie jest to prognoza momentu awarii. Rezerwa została wybrana wcześniej, aby zachować przestrzeń na bieżącą pracę aplikacji.

Do własnego obliczenia pobierz dwa odczyty tego samego elementu z oznaczonym czasem. Różnicę wolnego miejsca podziel przez liczbę dni między próbkami; następnie różnicę między aktualnym wolnym miejscem a rezerwą podziel przez otrzymane tempo. Wszystkie wartości pojemności muszą mieć tę samą jednostkę. Jeżeli korzystasz z bajtów, przeliczenie na GiB oznacza podzielenie przez 1 073 741 824.

Taki rachunek jest punktem wyjścia do obejrzenia całego wykresu. Dwa odczyty mogą ukryć weekendowy import lub cykliczne kasowanie danych. Wybierz okres obejmujący pełny cykl pracy aplikacji i porównaj dzienne zmiany. Gdy wolnego miejsca przybywa albo tempo wynosi zero, nie wyliczaj daty zapełnienia przez dzielenie przez tę wartość.

Jak wykorzystać timeleft w Zabbix?

Funkcja timeleft szacuje liczbę sekund do osiągnięcia wskazanego progu na podstawie historii elementu. Dla pomiaru w bajtach próg także musi być podany w bajtach lub w zgodnym zapisie jednostki. Okno historii i próg dobierz do konkretnego wolumenu, a wynik w sekundach podziel przez 86 400, jeśli potrzebujesz dni. [S3]

Predykcja ma uzupełniać alarm o aktualnym stanie. Zachowaj więc osobny warunek dla już przekroczonej rezerwy. Obsłuż również brak danych oraz błąd obliczenia: timeleft może zwrócić −1, a bardzo duża wartość może oznaczać, że model nie przewiduje osiągnięcia progu. Żaden z tych wyników nie powinien być przedstawiany jako wiarygodna liczba dni. [S2] [S3]

Na początek obserwuj prognozę razem z wykresem, bez automatycznego wykonywania zmian. Porównuj szacowany czas z faktycznym ubytkiem miejsca w kolejnych dniach. Jeśli prognoza gwałtownie skacze, sprawdź kształt historii i zdarzenia w aplikacji; samo wydłużenie okresu obliczeń nie wyjaśni przyczyny.

Kiedy prognoza wymaga ponownej oceny?

Duży import, zmiana retencji lub powiększenie wolumenu zmieniają punkt odniesienia. Oznacz takie zdarzenie przy analizowanym wykresie i oceń, czy wcześniejsze próbki nadal opisują normalną pracę. Planowane wdrożenie nowej aplikacji potraktuj osobno: historia sprzed jej uruchomienia nie obejmuje przyszłych danych.

W ocenie gotowości pomiaru zastosuj trzy kryteria. Odczyty dotyczą właściwego zasobu i mają spójną jednostkę; historia obejmuje reprezentatywny cykl pracy; znasz źródła większych skoków. Niespełnienie któregoś kryterium oznacza potrzebę poprawienia danych wejściowych, zanim wynik posłuży do decyzji zakupowej.

Od pomiaru do terminu rozbudowy

Czas na reakcję ustal z osobami, które zatwierdzają i wykonują zmianę. Jeśli capacity planning robisz dopiero przy okazji audytu przed migracją, warto te same progi i rezerwy przenieść też do bieżącego monitoringu. Wpisz do planu konkretne etapy: decyzję zakupową, dostawę, przygotowanie, test oraz okno wdrożenia. Jeżeli któryś etap może odbyć się równolegle, uwzględnij to w terminie zakończenia zamiast mechanicznie sumować wszystkie czasy. Orientacyjny koszt samego sprzętu możesz sprawdzić w kalkulatorze cen Proxmox już na etapie planowania budżetu.

Rezultatem analizy powinien być krótki zapis: obserwowany wolumen, przyjęta rezerwa, oszacowany termin jej osiągnięcia, potrzebny czas na zmianę i właściciel decyzji. Gdy warunki się zmienią, łatwo będzie wskazać, którą przesłankę należy zaktualizować.

Takie dane pomagają także określić zakres usług infrastruktury i monitoringu: czy najpierw uzupełnić pomiary, wyjaśnić wzrost danych, czy przygotować rozbudowę. Rozmowa zaczyna się wtedy od konkretnego zasobu i terminu.

Najczęściej zadawane pytania

Co zrobić, gdy aplikacja ma wolne GiB, ale nie może utworzyć nowego pliku?

Na systemie plików korzystającym z ograniczonej liczby inode sprawdź także ich dostępność. W Zabbix służy do tego m.in. vfs.fs.inode[/,pfree]; podstaw właściwy punkt montowania. Niska wartość może wyjaśniać problem mimo wolnej pojemności, ale diagnoza powinna uwzględniać również uprawnienia i limity aplikacji. [S1]

Czy timeleft nadaje się do automatycznego wywoływania akcji (np. tworzenia zgłoszenia)?

Na początek nie. Prognoza może się gwałtownie zmieniać przy jednorazowym imporcie lub czyszczeniu danych, więc automatyczna akcja podjęta na jej podstawie może się okazać przedwczesna albo spóźniona. Bezpieczniejsze podejście to osobny trigger dla już przekroczonej rezerwy (na podstawie bieżącego odczytu, nie prognozy) oraz obserwowanie timeleft ręcznie przez kilka tygodni, zanim podepnie się je pod eskalację. Pamiętaj też o obsłużeniu przypadków −1 i bardzo dużej wartości zwracanej przez funkcję — żaden z nich nie powinien uruchamiać akcji jako "godzina zapełnienia dysku". [S2]

Mam rezerwę zapisaną w GiB, a element zwraca bajty — jak podać próg w timeleft?

Parametr threshold w timeleft musi być w tej samej jednostce co historia elementu — dla vfs.fs.size to bajty, choć Zabbix pozwala też zapisać próg z sufiksem jednostki (np. 90G) zamiast przeliczać ręcznie. Niezależnie od zapisu warto dwa razy sprawdzić, że próg i odczyty historyczne mówią o tej samej wielkości — pomyłka o rząd wielkości (GiB vs GB, MiB vs MB) da prognozę, która wygląda wiarygodnie, ale jest błędna. [S3]

Dokumentacja i źródła

[S1] Zabbix 7.0 — pomiary systemu plików i inode

[S2] Zabbix 7.0 — zasady i ograniczenia predykcji

[S3] Zabbix 7.0 — funkcja timeleft

[S4] Zabbix — integracja Proxmox VE by HTTP

Zaplanuj rozbudowę na podstawie danych

Chcesz ustalić, jakie pomiary pomogą ocenić zapas miejsca w Twojej infrastrukturze? Porozmawiajmy o zakresie monitoringu i danych potrzebnych przed rozbudową.

Porozmawiaj o monitoringu