PowerScale: "NFS: serwer v4 zwrócił błąd nieprawidłowego identyfikatora sekwencji w niepotwierdzonej sekwencji".
Summary: OneFS 9.3 i OneFS 9.4: Klient NFSv4 zgłasza błąd: "NFS: serwer v4 zwrócił błąd nieprawidłowego identyfikatora sekwencji w niepotwierdzonej sekwencji". Podczas przechwytywania pakietów firma Dell Technologies widzi również następujący błąd: NFS4ERR_NO_GRACE ...
Symptoms
PowerScale działa na OneFS 9.3 lub 9.4, a klienci NFSv4 zgłaszają błędy, takie jak:
Nov 18 13:00:22 kernel: NFS: v4 server returned a bad sequence-id error on an unconfirmed sequence 00000000c6d21f3b!
Nov 18 13:00:22 kernel: NFS: nfs4_reclaim_open_state: unhandled error -10026
Nov 18 13:00:22 kernel: NFSv4: state recovery failed for open file /test2.txt, error = -10026
Gdy pojawią się te błędy, aplikacja uzyskująca dostęp do systemu plików NFS ulega awarii, więc wpływa to na produkcję i wymaga ręcznej interwencji kilka razy dziennie.
Nawet po ponownym uruchomieniu klientów NFS klienci nadal zgłaszają błędy.
W przechwytywaniu pakietów klienta lub węzła mogą również zostać wyświetlone następujące błędy:
PCAP:
41 13:00:11.313563 10.205.224.32 10.205.224.12 NFS 302 V4 Call (Reply In 42) OPEN DH: 0x1eb1379b/
42 13:00:11.313804 10.205.224.12 10.205.224.32 NFS 122 V4 Reply (Call In 41) OPEN Status: NFS4ERR_NO_GRACE
43 13:00:11.314731 10.205.224.32 10.205.224.12 NFS 330 V4 Call (Reply In 44) OPEN DH: 0xa07785fa/test2.txt
44 13:00:11.314911 10.205.224.12 10.205.224.32 NFS 122 V4 Reply (Call In 43) OPEN Status: NFS4ERR_BAD_SEQIDCause
Ten problem jest spowodowany znaną wadą: PSCALE-162845: Zaakceptuj przyrostowy identyfikator sekwencji dla poprzedniej operacji o NFS4ERR_NO_GRACE or NFS4ERR_GRACE należy wykonać podane czynności.
Dotyczy to wszystkich wersji NFSv4, a nie tylko 4.1 i 4.2.
Szczegóły dotyczące usterki są następujące:
Klient zwiększa swój identyfikator sekwencji, gdy OneFS tego nie oczekuje. W związku z tym OneFS nie zwiększa poprawnie identyfikatora sekwencji.
Wygląda na to, że klient NFS monotonicznie zwiększa numer sekwencji dla OPEN/CLOSE/other operacje, w tym NFS4ERR_NO_GRACE i NFS4ERR_GRACE należy wykonać podane czynności. Jednak PowerScale nie zezwala na przyrostowy identyfikator sekwencji, jeśli poprzednia operacja napotkała NFS4ERR_NO_GRACE or NFS4ERR_GRACE należy wykonać podane czynności. W związku z tym załóżmy, że PowerScale zwraca NFS4ERR_NO_GRACE/NFS4ERR_GRACE błąd poprzedniej operacji. Prowadzi to do: NFS4ERR_BAD_SEQID dla następnej operacji przychodzącej, ponieważ PowerScale nie oczekuje inkrementowanego identyfikatora sekwencji.
Zgodnie z NFSv4 RFC, nie ma definicji NFS4ERR_NO_GRACE/NFS4ERR_GRACE , aby nie zezwalać na wartości inkrementowane.
Istnieje rozróżnienie między systemami Linux i PowerScale w odniesieniu do logiki przyrostu identyfikatorów sekwencji dla NFS4ERR_NO_GRACE Błędy. W związku z tym przyjmijmy inkrementację seqence-id w kodzie Isilon, aby dopasować go do kodu systemu Linux.
Resolution
Obejście problemu polega na przeniesieniu przepływu pracy do NFSv3.
LUB
zainstaluj poprawkę:GA: PSP-3035 PATCH: [9.4.0.11_GA-RUP_2023-01][Multiple User space and Kernel Fixes](January 2023)DA: PSP-3069 PATCH: [9.4.0.10_DA-CUSTOM_2022-12][9.4.0.10_GA-RUP_2022-12 + NFS Fix](VMWARE)