Aktualizacja NetWorker NMC do wersji 19.10.0.5 w systemie Linux nie powiodła się — migracja do nowej wersji Postgres 12
Summary: Po uaktualnieniu pakietu NetWorker NMC częścią procedury uaktualnienia jest przejście do nowej wersji Postgres, jeśli jest to konieczne. Aktualizacja kończy się niepowodzeniem z następującymi informacjami: - Problem z przestrzenią: Nie można zapisać pliku. Brak miejsca na urządzeniu - Problem z czyszczeniem: RM: Nie można usunąć '/nsr/nmc/nmcdb': Device or resource busy ...
Symptoms
Postgres nie uruchamia się po zainstalowaniu pakietu NMC. Błędy występują w /opt/lgtonmc/logs/install.log.
W dzienniku instalacji widzimy:
error while copying relation "public.gst_action_saveset": could not write file "/nsr/nmc/nmcdb12/pgdata/base/16401/17097.2": No space left on device
Failure, exiting
lub:
./delete_old_cluster.sh
10/10/24 08:30:06.697501 gstdbinit-D0 pg_upgrade Succeeded
Upgrade to Postgres 12 Successful
rm: cannot remove '/nsr/nmc/nmcdb': Device or resource busy
Cause
Przejście do nowszej wersji Postgres jest częścią procesu aktualizacji NMC.
pg_upgrade uruchamia i zrzuca pliki bazy danych do nowej lokalizacji (/nsr/nmc/nmcdb12).
Wymaga to wystarczającej ilości miejsca w katalogu /nsr/nmc.
Gdy aktualizacja Postgres zakończy się pomyślnie, stara ścieżka /nsr/nmc/nmcdb zostanie usunięta przez skrypt ./delete_old_cluster.sh.
Istnieją różne scenariusze niepowodzenia polecenia rm:
- Ścieżka jest w użyciu; Coś aktywnie korzysta z /nsr/nmc/nmcdb podczas procesu uaktualniania.
- Zmodyfikowano domyślne ustawienia uprawnień /nsr/nmcdb.
- Baza NMCDB znajduje się w zdalnym punkcie montowania, a nie na urządzeniu lokalnego systemu plików. NetWorker ma określone ograniczenia dotyczące punktów montowania /nsr w pamięci masowej NFS. Ograniczenia te są szczegółowo opisane w Podręczniku instalacji NetWorker, dostępnym na stronie: https://www.dell.com/support/home/product-support/product/networker/docs.
Resolution
Przed uaktualnieniem do nowej wersji NMC NetWorker wykonaj następujące testy:
- Sprawdź wykorzystanie miejsca przez nmcdb; biegać:
du -sk /nsr/nmc/nmcdb
- Sprawdź wolne miejsce w systemie plików dla ścieżki /nsr/nmc/; biegać:
df -h
Proces uaktualnienia usuwa starą bazę danych przy użyciu polecenia "rm -rf /nsr/nmc/nmcdb"
Additional Information
NetWorker 19.10.0.x obsługuje NFS w wersjach 4.0, 4.1 i 4.2 tylko dla konfiguracji udziału NFS. Instalacja udziału NFS NetWorker 19.10.0.x jest kwalifikowana na platformach Linux (SLES 15 SP1, RHEL 9.0, Ubuntu 18.04 LTS, Oracle Linux (jądro UEK) 8.8).
Przykład domyślnych uprawnień systemu plików nmcdb:
[root@nsr ~]# ls -ltr /nsr/nmc/ total 0 drwx------. 3 nsrnmc nsrnmc 40 Oct 16 12:36 nmcdb drwx------. 2 root root 6 Oct 28 14:00 nmcdb_stage [root@nsr ~]# ls -ltr /nsr/nmc/nmcdb total 8 -rw-------. 1 nsrnmc nsrnmc 65 Jun 7 14:30 gstd_db.conf drwx------. 20 nsrnmc nsrnmc 4096 Oct 28 11:35 pgdata [root@nsr ~]# ls -ltr /nsr/nmc/nmcdb/pgdata/ total 72 -rw-------. 1 nsrnmc nsrnmc 3 Oct 16 12:36 PG_VERSION drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_twophase drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_tblspc drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_snapshots drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_serial drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_replslot drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_dynshmem drwx------. 2 nsrnmc nsrnmc 6 Oct 16 12:36 pg_commit_ts -rw-------. 1 nsrnmc nsrnmc 88 Oct 16 12:36 postgresql.auto.conf -rw-------. 1 nsrnmc nsrnmc 1636 Oct 16 12:36 pg_ident.conf drwx------. 2 nsrnmc nsrnmc 18 Oct 16 12:36 pg_subtrans -rw-r--r--. 1 nsrnmc nsrnmc 26821 Oct 16 12:36 postgresql.conf -rw-------. 1 nsrnmc nsrnmc 1679 Oct 16 12:36 server.key -rw-------. 1 nsrnmc nsrnmc 981 Oct 16 12:36 server.crt drwx------. 2 nsrnmc nsrnmc 18 Oct 16 12:36 pg_xact drwx------. 4 nsrnmc nsrnmc 36 Oct 16 12:36 pg_multixact drwx------. 6 nsrnmc nsrnmc 58 Oct 16 12:36 base -rw-r--r--. 1 nsrnmc nsrnmc 4245 Oct 16 12:36 pg_hba.conf drwx------. 2 nsrnmc nsrnmc 188 Oct 22 00:00 pg_log drwx------. 2 nsrnmc nsrnmc 18 Oct 28 11:35 pg_notify -rw-------. 1 nsrnmc nsrnmc 70 Oct 28 11:35 postmaster.opts -rw-------. 1 nsrnmc nsrnmc 33 Oct 28 11:35 current_logfiles -rw-------. 1 nsrnmc nsrnmc 82 Oct 28 11:35 postmaster.pid drwx------. 2 nsrnmc nsrnmc 6 Oct 28 11:35 pg_stat drwx------. 2 nsrnmc nsrnmc 4096 Oct 28 11:35 global drwx------. 4 nsrnmc nsrnmc 68 Oct 28 14:05 pg_logical drwx------. 3 nsrnmc nsrnmc 92 Oct 28 14:05 pg_wal drwx------. 2 nsrnmc nsrnmc 126 Oct 28 14:44 pg_stat_tmp
Dodatkowe bazy wiedzy:
NetWorker: Problemy z usługą NMC i dostępnością (ogólny przewodnik rozwiązywania problemów)
NetWorker: Jak odzyskać bazę danych NMC?