Przejdz do tresci
Avanet

Czyszczenie bazy danych Secure Heartbeat na Sophos Firewall w przypadku wsparcia

Ten proces nie jest ogólną wskazówką dotyczącą optymalizacji Sophos Firewall. Opisuje on wąski przypadek wsparcia: Firewall ma zbyt mało wolnego miejsca, a wsparcie Sophos potwierdza, że niektóre tabele związane z Secure Heartbeat w bazie danych corporate stały się niezwykle duże.

W takim przypadku celowa konserwacja z użyciem VACUUM FULL może odzyskać miejsce na dysku. Ponieważ wymaga to bezpośredniego dostępu do wewnętrznej bazy danych PostgreSQL na firewallu, proces ten powinien być przeprowadzany tylko po uzyskaniu aktualnego potwierdzenia od wsparcia Sophos i w oknie konserwacyjnym.

Kiedy ta instrukcja jest istotna

Proces jest istotny, gdy na Sophos Firewall brakuje miejsca, a istnieje podejrzenie, że tabele bazy danych związane z Secure Heartbeat zajmują niezwykle dużo miejsca.

Typowe wskazówki mogą obejmować:

  • Ostrzeżenia o wysokim zużyciu pamięci
  • Mocno zajęte partycje na firewallu
  • Problemy z raportami, logami lub usługami z powodu ograniczonej pojemności dysku
  • Wskazówka od wsparcia Sophos, że baza danych Secure Heartbeat stała się zbyt duża

Jeśli nie jest jasne, dlaczego dysk się zapełnia, najpierw należy przeprowadzić ogólną analizę z Sprawdzanie miejsca na dysku i zarządzanie raportami na Sophos Firewall. Ta konserwacja bazy danych ma sens dopiero wtedy, gdy raporty, logi, kolejka poczty, kwarantanna, rozmiar wirtualnego dysku i inne oczywiste przyczyny nie są rzeczywistym wyjaśnieniem lub wsparcie Sophos wyraźnie wskazuje na ścieżkę bazy danych.

Wymagania

Do tej konserwacji potrzebne są:

  • Dostęp administracyjny do Sophos Firewall
  • Dostęp do Advanced Shell
  • Konkretna rekomendacja lub potwierdzenie od wsparcia Sophos
  • Okno konserwacyjne
  • Aktualna kopię zapasową konfiguracji firewalla
  • Zabezpieczone logi, jeśli przypadek będzie musiał być później dalej analizowany
  • Wystarczająco dużo wolnego miejsca, aby zakończyć konserwację bazy danych

Jeśli dostęp do powłoki nie został jeszcze skonfigurowany, instrukcja Łączenie się z Sophos Firewall przez SSH wyjaśnia, jak nawiązać połączenie SSH z firewallem. Jeśli przygotowywany jest przypadek wsparcia, pomocne są również Zabezpieczanie logów Sophos Firewall do analizy zewnętrznej i Otwieranie zgłoszenia wsparcia Sophos.

⚠️ Te polecenia bezpośrednio uzyskują dostęp do wewnętrznej bazy danych PostgreSQL na Sophos Firewall. Wykonanie powinno być przeprowadzone tylko celowo i po aktualnym potwierdzeniu od wsparcia Sophos dla konkretnego przypadku wsparcia. VACUUM FULL może blokować tabele podczas wykonywania i w zależności od wielkości bazy danych może zająć trochę czasu.

Kiedy nie należy wykonywać poleceń

Poleceń nie należy wykonywać, jeśli występuje tylko ogólne ostrzeżenie o braku miejsca, a przyczyna nie została jeszcze zidentyfikowana. Często problemy z miejscem wynikają z raportów, logów debugowania, plików wsparcia, ochrony poczty, kwarantanny, zbyt małego wirtualnego dysku lub ogólnego przechowywania logów.

Wyraźne sygnały stopu to:

  • Wsparcie Sophos nie potwierdziło konkretnie obu tabel: Wtedy ingerencja w bazę danych byłaby tylko przypuszczeniem, a nie zatwierdzonym przypadkiem.
  • Brak aktualnej kopii zapasowej lub brak okna konserwacyjnego: W przypadku błędu brakuje czystej drogi powrotnej lub wpływ dotyka bieżącej operacji.
  • SSH lub Advanced Shell jest niestabilne: Przerwane polecenie bazy danych utrudnia dalszą analizę.
  • Rola HA, numer seryjny lub dotknięty węzeł jest niejasny: Polecenie może być nieskuteczne na niewłaściwym urządzeniu lub zniekształcić diagnozę.
  • Równolegle usuwane są raporty, logi lub archiwa wsparcia: Później nie jest jasne, która akcja zwolniła miejsce.
  • Firewall już traci krytyczne usługi: Wtedy najpierw należy zabezpieczyć bieżący stan i ocenić go z wsparciem Sophos.

Proces ten nie nadaje się również jako regularna konserwacja, zadanie Cron lub prewencyjne czyszczenie. Jeśli tabele szybko ponownie rosną, jest to symptom, a nie normalny stan operacyjny. Wtedy przypadek wsparcia powinien być kontynuowany z aktualnymi logami, wynikami dysku i przebiegiem czasu.

Zgoda wsparcia i kryteria przerwania

Przed wykonaniem powinno być nie tylko dostępne backup. Powinno być również jasne, kto zatwierdził krok, jaki obraz błędu jest nim traktowany i kiedy proces zostanie przerwany.

Sensowne minimalne informacje:

  • Zgoda wsparcia: Numer zgłoszenia, osoba kontaktowa i konkretna rekomendacja.
  • Dotknięty firewall: Numer seryjny, model, wersja firmware, rola HA.
  • Obraz błędu: Ostrzeżenie o braku miejsca, dotknięta partycja, dotknięte usługi.
  • Czas rozpoczęcia: Czas przed pierwszym poleceniem.
  • Wartości przed: Wynik df -h, df -hkm i system diagnostics show disk.
  • Kryterium przerwania: Komunikat o błędzie, niezwykle długi czas działania, niestabilna sesja SSH lub nowe błędy systemowe.

Jeśli połączenie SSH jest niestabilne, firewall już traci krytyczne usługi lub wsparcie Sophos nie potwierdziło konkretnie tabel, nie należy eksperymentować z poleceniami bazy danych. W takich przypadkach aktualne wyniki dysku, logi i czysty przypadek wsparcia są cenniejsze niż półwykonana próba konserwacji.

Sprawdzenie miejsca przed konserwacją

Przed konserwacją bazy danych należy sprawdzić, jak bardzo zajęte są partycje:

df -h

Dla dokładniejszego wyświetlenia w megabajtach można użyć następującego polecenia:

df -hkm

Wynik powinien być udokumentowany przed konserwacją, aby później można było porównać, czy zwolniono miejsce. Dodatkowo pomocny jest specyficzny dla Sophos status dysku z konsoli urządzenia:

system diagnostics show disk

W przypadku klastrów HA oba węzły powinny być sprawdzone osobno. Lokalne bazy danych, logi i wolne miejsce mogą się różnić między Primary a Auxiliary.

Przed konserwacją powinno być również jasne, czy równolegle inne przyczyny zajmują miejsce. Należą do nich stare archiwa wsparcia, duże bazy danych raportów, kolejka poczty, kwarantanna, logi debugowania lub ręcznie umieszczone pliki. Jeśli te punkty nie zostały sprawdzone, baza danych Secure Heartbeat jest tylko przypuszczeniem.

Wykonanie konserwacji bazy danych

Następujące polecenia wykonuje się w Advanced Shell. Podczas wykonywania sesja SSH powinna pozostać stabilna. Firewall nie powinien być restartowany, dopóki polecenie jest w trakcie wykonywania.

Najpierw czyszczona jest tabela tbleacappcache:

psql -U pgroot -d corporate -c "VACUUM FULL tbleacappcache"

Następnie czyszczona jest tabela tblappstoeps:

psql -U pgroot -d corporate -c "VACUUM FULL tblappstoeps"

Polecenia zazwyczaj zwracają VACUUM po pomyślnym wykonaniu. Jeśli polecenie wyświetla komunikat o błędzie lub zawiesza się na dłużej, nie należy kontynuować z dalszymi eksperymentalnymi poleceniami bazy danych. W takim przypadku wynik, czas i aktualny status dysku są istotne dla wsparcia Sophos.

Podczas wykonywania nie powinna druga osoba równolegle czyścić miejsca, raportów lub plików bazy danych. W przeciwnym razie później nie będzie jasne, która akcja miała jaki efekt. W przypadku firewalli produkcyjnych krótki wpis zmiany z czasem rozpoczęcia, poleceniem i wynikiem jest sensowny.

Sprawdzenie miejsca po konserwacji

Po zakończeniu poleceń należy ponownie sprawdzić miejsce:

df -h

Jeśli baza danych Secure Heartbeat rzeczywiście była przyczyną, powinna zmniejszyć się zajętość dotkniętej partycji. Jak duży będzie efekt, zależy od tego, jak duże były tabele wcześniej i ile danych PostgreSQL mógł zwolnić.

Po konserwacji należy dodatkowo sprawdzić:

  • Czy system diagnostics show disk pokazuje ponownie wiarygodne wartości?
  • Czy Log Viewer, raporty i dotknięte usługi są ponownie użyteczne?
  • Czy są nowe błędy w odpowiednich Usługach i logach?
  • Czy zużycie miejsca ponownie szybko rośnie w ciągu najbliższych godzin lub dni?
  • Czy wykonane kroki są udokumentowane w zgłoszeniu lub zmianie?

Dla kontroli po konserwacji pojedyncze udane porównanie df -h nie zawsze wystarcza. Jeśli partycja jest tylko krótko odciążona, a potem ponownie szybko się zapełnia, konserwacja nie jest zakończeniem, lecz wskazówką diagnostyczną. Wtedy przebieg czasu z nowymi wynikami dysku, okresem logów i dotkniętymi usługami powinien być przekazany do wsparcia Sophos.

Ważne uwagi

  • Ta konserwacja nie rozwiązuje automatycznie przyczyny, dlaczego tabele rosły.
  • Jeśli miejsce ponownie szybko się zapełnia, należy otworzyć zgłoszenie wsparcia Sophos.
  • VACUUM FULL jest bardziej intensywne niż zwykłe VACUUM, ponieważ tabele są przepisywane.
  • Polecenia nie powinny być używane jako regularny zadanie Cron lub rutyna bez diagnozy.
  • W przypadku firewalli produkcyjnych zaleca się okno konserwacyjne, ponieważ niektóre funkcje mogą reagować z opóźnieniem podczas konserwacji bazy danych.
  • W przypadku klastrów HA musi być jasne, na którym węźle konieczna jest konserwacja.
  • Przed dalszymi poleceniami bazy danych wsparcie Sophos powinno być ponownie zaangażowane.

Częste błędy

Wykonywanie poleceń bez diagnozy

Pełna partycja nie oznacza automatycznie, że Secure Heartbeat jest przyczyną. Przed poleceniami bazy danych należy sprawdzić wyniki dysku, logi i oczywiste zużycie miejsca.

Brak planowania okna konserwacyjnego

VACUUM FULL może w zależności od wielkości tabeli trwać i blokować tabele. Na firewallach produkcyjnych krok ten nie powinien być wykonywany w trakcie krytycznej fazy operacyjnej.

Brak dalszej obserwacji po czyszczeniu

Jeśli miejsce jest tylko krótko zwolnione, a potem ponownie szybko rośnie, przyczyna nie została usunięta. Wtedy potrzebna jest dalsza analiza z wsparciem Sophos.

Pomylenie węzła HA

W środowiskach HA lokalna sytuacja z miejscem na dysku może się różnić w zależności od węzła. Dlatego przed każdym poleceniem powinno być jasne, czy pracuje się na Primary czy Auxiliary i który numer seryjny jest dotknięty. Polecenie na niewłaściwym węźle może być nieskuteczne i niepotrzebnie utrudniać późniejszą analizę.

Klasyfikacja przypadku

W konkretnym przypadku wsparcia przyczyną była zbyt duża baza danych Secure Heartbeat. Dwa wymienione polecenia VACUUM FULL służą do celowego czyszczenia dotkniętych tabel i zwolnienia niepotrzebnego miejsca. Nie należy jednak z tego wyciągać ogólnej konserwacji bazy danych dla Sophos Firewall.

Artykuł dotyczy tylko tego wąskiego przypadku braku miejsca. Jeśli Secure Heartbeat nie działa, punkty końcowe nie zgłaszają statusu Heartbeat, synchronizacja Central zawodzi lub reguły firewalla z warunkami Heartbeat nie działają zgodnie z oczekiwaniami, jest to inny obraz błędu. Wtedy ważniejsze są połączenie Sophos Central, status punktów końcowych, reguły firewalla, Log Viewer i odpowiednie logi usług niż bezpośrednia ingerencja w bazę danych.

Dla ogólnych problemów z miejscem pierwszym krokiem pozostaje systematyczne sprawdzenie miejsca, logów, raportów i danych wsparcia. Dla operacji wokół Sophos Central dodatkowo pasuje Łączenie Sophos Firewall z Sophos Central, dla plików logów Rozwiązywanie problemów z Sophos Firewall: Usługi i logi.

FAQ

Czy należy regularnie czyścić bazę danych Secure Heartbeat?

Nie. Ten proces nie jest rutynową konserwacją. Jeśli tabele ponownie szybko rosną, przyczyna powinna być wyjaśniona z wsparciem Sophos.

Czy ostrzeżenie o braku miejsca wystarczy jako powód do wykonania tych poleceń?

Nie. Najpierw należy sprawdzić normalne przyczyny braku miejsca, takie jak raporty, logi, kolejka poczty, kwarantanna, archiwa wsparcia i rozmiar wirtualnego dysku. Polecenia są odpowiednie dopiero wtedy, gdy wsparcie Sophos potwierdzi ścieżkę bazy danych dla konkretnego przypadku.

Co należy zabezpieczyć przed VACUUM FULL?

Przynajmniej aktualną kopię zapasową konfiguracji, odpowiednie logi, wyniki przed df -h i system diagnostics show disk, numer zgłoszenia, numer seryjny, wersję firmware i rolę HA.