PowerScale: rpcbind kończy się niepowodzeniem podczas aktualizacji w przypadku korzystania z niestandardowej wartości sysctl
Summary: Prawidłowe uruchomienie "rpcbind" podczas uaktualniania do określonych wersji OneFS, jeśli ustawiono wartość niestandardową dla "kern.ipc.somaxconn".
Symptoms
Po uaktualnieniu do jednej z następujących wersji OneFS:
- 9.7.1.3
- 9.10.0.0
Dostęp klienta jest przerywany przez wszystkie protokoły i uruchomiony isi auth Polecenia w klastrze powodują wyświetlenie następującego błędu:
p970-1# isi auth users list Unable to connect to authentication daemon. Please wait until authentication daemon has restarted and retry.
Wiadomości w /var/log/messages wskazujący na niepowodzenie połączenia z serwerem zdalnego wywołania procedury (RPC):
2024-11-25T14:59:51.084340+00:00 <1.3> p970-1(id1) isi_celog_capture[4169]: drive_d_connect: Failed to connect to RPC server at 127.0.0.1 (errno=Invalid argument, rpc clnt_stat=15); retrying 2 of 3.
Cause
Ten problem jest spowodowany problemem w logice, która oceniała to ustawienie w dwóch wersjach OneFS, których dotyczy problem. Jest on adresowany we wszystkich innych wersjach.
Resolution
Tego problemu można uniknąć, jeśli zostanie rozwiązany przed aktualizacją do wersji OneFS, której dotyczy problem. Jeśli klaster jest już dotknięty, istnieją również kroki odzyskiwania.
Przed aktualizacją
Sprawdź wartość niestandardową, korzystając z poniższego skryptu:
sys_files="/etc/mcp/templates/sysctl.conf /etc/mcp/override/sysctl.conf /etc/local/sysctl.conf"; while read -r file; do grep "somaxconn" "$file" 2>/dev/null done <<<"$sys_files"
Jeśli jest wyjście; Zapisz wartość (512 jest typowe), a następnie użyj następującego skryptu, aby usunąć wpis:
sys_files="/etc/mcp/templates/sysctl.conf /etc/mcp/override/sysctl.conf /etc/local/sysctl.conf"; while read -r file; do sed -i bak "s/^kern.ipc.somaxconn.*//g" "$file" 2>/dev/null done <<<"$sys_files"
Aktualizację można teraz przeprowadzić bezpiecznie. Po uaktualnieniu przywróć ustawienie do wcześniej zapisanej wartości za pomocą następującego polecenia. Zastąpić $val z zanotowaną wartością.
isi_sysctl_cluster kern.ipc.somaxconn=$val
Następnie uruchom ponownie węzły ręcznie, jeden po drugim, korzystając z dowolnego procesu, jeśli jest to preferowane.
Po zderzeniu
Wymagane jest ponowne uruchomienie węzłów, których dotyczy problem.
shutdown -r now