PowerScale: rpcbind mislykkes under oppdatering hvis du bruker en egendefinert sysctl-verdi
Summary: "rpcbind" starter ikke på riktig måte under oppgraderinger til bestemte OneFS-versjoner hvis en egendefinert verdi er angitt for "kern.ipc.somaxconn."
Symptoms
Når du har oppgradert til én av følgende OneFS-versjoner:
- 9.7.1.3
- 9.10.0.0
Klienttilgangen avbrytes på tvers av alle protokoller, og kjøres isi auth Kommandoer på klyngen fører til at følgende feil vises:
p970-1# isi auth users list Unable to connect to authentication daemon. Please wait until authentication daemon has restarted and retry.
Meldinger i /var/log/messages som angir en feil ved tilkobling 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 som evaluerte denne innstillingen i de to berørte versjonene av OneFS, forårsaker dette problemet. Det er adressert i alle andre versjoner.
Resolution
Dette problemet kan unngås hvis problemet løses før du oppgraderer til en OneFS-versjon som er rammet. Hvis klyngen allerede er berørt, finnes det også gjenopprettingstrinn.
Før oppgradering
Se etter en egendefinert verdi ved hjelp av skriptet 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 det er utgang; Skriv ned verdien (512 er vanlig), og bruk deretter følgende skript for å fjerne oppføringen:
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"
Oppgraderingen kan nå utføres på en sikker måte. Etter oppgraderingen, tilbakestill innstillingen til den tidligere nedskrevne verdien med følgende kommando. Erstatte $val med verdien notert.
isi_sysctl_cluster kern.ipc.somaxconn=$val
Start deretter noder på nytt, én om gangen, ved å bruke den prosessen som er foretrukket.
Etter påvirkning
En omstart av de berørte nodene er nødvendig.
shutdown -r now