PowerScale: rpcbind mislykkes under opdatering, hvis der bruges en brugerdefineret systemværdi
Summary: "rpcbind" starter ikke korrekt under opgraderinger til bestemte OneFS-versioner, hvis der er angivet en brugerdefineret værdi for "kern.ipc.somaxconn".
Symptoms
Efter opgradering til en af følgende OneFS-versioner:
- 9.7.1.3
- 9.10.0.0
Klientadgang afbrydes på tværs af alle protokoller, og kørsel isi auth Kommandoer på klyngen medfører, at følgende fejl vises:
p970-1# isi auth users list Unable to connect to authentication daemon. Please wait until authentication daemon has restarted and retry.
Meddelelser i /var/log/messages indikerer en fejl i forbindelse med oprettelse af forbindelse til RPC-serveren (Remote Procedure Call):
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
Et problem i logikken, der evaluerede denne indstilling i de to påvirkede versioner af OneFS, forårsager dette problem. Det behandles i alle andre versioner.
Resolution
Dette problem kan undgås, hvis det løses, før du opgraderer til en berørt OneFS-version. Hvis klyngen allerede er påvirket, er der også trin til genoprettelse.
Før opgradering
Kontroller, om der er en brugerdefineret værdi ved hjælp af scriptet nedenfor:
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"
Hvis der er output; Skriv værdien ned (512 er almindelig), og brug derefter følgende script til at fjerne posten:
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"
Opgraderingen kan nu udføres sikkert. Efter opgraderingen skal du gendanne indstillingen til den tidligere nedskrevne værdi med følgende kommando. Erstatte $val med den angivne værdi.
isi_sysctl_cluster kern.ipc.somaxconn=$val
Genstart derefter noderne manuelt, en ad gangen ved hjælp af en hvilken som helst proces, hvis det foretrækkes.
Efter sammenstød
Det er nødvendigt at genstarte de berørte noder.
shutdown -r now