Na serwerze Postgres kończy się miejsce na dysku

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Krótki opis problemu

Na serwerze Postgres, który zawiera dane Analytics, skończyło się miejsce na dysku.

W poniższym przykładzie widać, że dysk /u01 zapełnił 90% (176 GB/207 GB) miejsca na dysku.

$df -g

Filesystem Size User Avail Use% Mounted on
/dev/mapper/sysvg-syslv09 207G 176G 176G 21G 90% /u01

Komunikaty o błędach

Komunikat o błędzie może pojawić się dopiero wtedy, gdy miejsce na dysku zostanie całkowicie zapełnione Serwer Postgres.

Możliwe przyczyny

W tabeli poniżej znajdziesz możliwe przyczyny tego problemu:

Przyczyna Dla:
Za mało miejsca na dysku Użytkownicy Edge Private Cloud
Brak przycinania danych w Analytics Użytkownicy Edge Private Cloud

Za mało miejsca na dysku

Diagnostyka

Jedną z typowych przyczyn błędów związanych z miejscem na dysku na serwerach Postgres jest brak wystarczającą ilość miejsca na dysku do przechowywania dużych ilości danych analitycznych. Opisane poniżej czynności pomaga określić, czy masz wystarczającą ilość miejsca na dysku, i podejmować odpowiednie działania, i rozpoznają problem.

  1. Ustal natężenie ruchu przychodzącego z interfejsu API do Edge, korzystając z serwera proxy Analytics Panel wydajności.

    Przykładowa wydajność serwera proxy przedstawiająca średni TPS

  2. Przyjrzyjmy się temu scenariuszowi:
    1. Przychodzący ruch do interfejsu API dla Twojej organizacji wynosi 22 TPS (transakcje na sekundę).
      1. Oznacza to, że ruch API to 1 900 800 transakcji dziennie (22 * 60 * 60 * 24)
      2. Pamiętaj, że każda transakcja/wiadomość w Analytics ma rozmiar 1,5 tys.bajtów.
      3. W efekcie każdy dzień generuje 2,7 GB danych Analytics (1 900 800 * 1,5 tys.).
    2. Musisz przechowywać w Postgres dane Analytics z 30 dni Serwery do wglądu.
      1. Łączna ilość danych wygenerowanych przez 30 dni = 81 GB (2,7 GB * 30)
    3. Dlatego, aby przechowywać dane Analytics z 30 dni z częstotliwością ruchu wynoszącą 22 TPS, potrzebne są: aby mieć dostępne 150 GB miejsca na dysku.
      1. 81 GB (dane analityczne) + 50 GB (inne dane, np. dzienniki) + 20 GB (dodatkowe bufora) = 150 GB.
  3. Jeśli masz w systemie mniej miejsca, np. mniej niż 150 GB miejsca (zgodnie z przykładowy scenariusz powyżej), oznacza to, że brakuje miejsca na dysku do przechowywania danych i skalowalnych danych.

Rozdzielczość

Dodaj odpowiednią ilość miejsca na dysku maszynie Postgres Server.

Brak przycinania danych Analytics

Diagnostyka

Wraz ze wzrostem ruchu API do Edge ilość danych analitycznych Baza danych Postgres również zostanie zwiększona. Ilość danych analitycznych, które można przechowywać w Postgres jest ograniczona ilością miejsca na dysku dostępnego w systemie.

Dlatego nie możesz dalej przechowywać dodatkowych danych analitycznych w Postgres. bazy danych bez wykonywania jednego z tych działań:

  1. Dodaj więcej miejsca na dysku.

    Nie jest to skalowalna opcja, ponieważ nie możemy stale dodawać miejsca na dysku, ponieważ drogie.

  2. Przytnij dane poza wymagany okres przechowywania.

    Jest to preferowane rozwiązanie, ponieważ dzięki temu dane, które nie są już potrzebne, w regularnych odstępach czasu.

Jeśli nie przycinasz danych w regularnych odstępach czasu ręcznie lub za pomocą zadania cron, ilość danych analitycznych stale rośnie i mogą doprowadzić do wyczerpania miejsca na dysku w systemie.

Rozdzielczość

Aby przyciąć dane, które przekraczają wymagany okres przechowywania:

  1. Określ interwał przechowywania, czyli czas, przez jaki ma być przechowywana danych Analytics w bazie danych Postgres.
  2. Uruchom to polecenie, aby przyciąć dane dla określonej organizacji i środowiska:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge
      org env number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Skip-confirmation-prompt - N/Y]
    

Skrypt zawiera te opcje:

  • Delete-from-parent-fact Wartość domyślna : nie. Dane starsze niż okres przechowywania będą też usuwane. dni od nadrzędnej tabeli faktów.
  • Skip-confirmation-prompt Domyślnie: Nie. Jeśli nie, skrypt wyświetli prośbę o potwierdzenie. przed usunięciem danych z faktu nadrzędnego. Ustaw wartość Tak, jeśli skrypt trwałego usuwania jest automatyczny.

Więcej informacji znajdziesz w artykule Przycinanie danych Analytics.

Jeśli problem będzie nadal występował, skontaktuj się z zespołem pomocy Apigee Edge.