Puncte:0

Unele procese sunt într-o stare de repaus care nu poate fi oprită în timp ce i/o este scăzut

drapel es

Sunt administratorul de sistem al unei stații de lucru bazate pe Arch Linux. Stația noastră de lucru folosește Slurm ca manager de încărcare și constă dintr-o mașină principală și alte 4 noduri de calcul. În ultimele luni, observăm că procesele de pe unele noduri sunt blocate din când în când, iar repornirea nodului rezolvă problema. Am descoperit că procesele blocate sunt în starea D (disc sleeping), dar când folosim comenzi de sus sau alte comenzi pentru a verifica i/o nodului, am constatat că i/o este de fapt destul de scăzut.

Când unele procese de pe nod sunt în starea D, totul pe nod este lent, dar acest lucru este doar pentru utilizatorii normali. Când folosim superutilizator pentru a rula comenzi (inclusiv python) pe nodurile blocate, totul funcționează bine. Dar când schimbăm utilizatorul prin su NORMAL_USER, procesul este din nou blocat. Noi am folosit ps aux și a constatat că procesul -bash rulat de NORMAL_USER este în starea D. Am încercat să folosim strace pentru a urmări procesul blocat, și am săpa, de asemenea, în /proc/PID, dar nu am reușit să găsim nimic util. De asemenea, nu am reușit să identificăm niciun mesaj utile de la jurnalctl. Poate ne lipsește ceva. Suntem dispuși să primim orice sfat sau comentariu.

Versiunea noastră de kernel este 5.10.47-1-lts.

Aici este /proc/PID/status pentru procesul în starea D. Procesul este cel bash proces atunci când folosim su NORMAL_USER. Este un proces cu un singur fir.

Nume: bash
Umask: 0022
Stare: D (repaus disc)
Tgid: 3136723
Ngid: 0
Cod: 3136723
PPid: 3136722
TracerPid: 0
Uid: 1000093 1000093 1000093 1000093
Gid: 1000000 1000000 1000000 1000000
Dimensiune FDS: 256
Grupuri: 1000000 1000083
NStgid: 3136723
NSpid: 3136723
NSpgid: 3136723
NSsid: 3110369
VmPeak: 16904 kB
VmSize: 16904 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 3788 kB
VmRSS: 3744 kB
RssAnon: 412 kB
Fișier RSS: 3332 kB
RssShmem: 0 kB
VmData: 608 kB
VmStk: 132 kB
VmExe: 588 kB
VmLib: 1948 kB
VmPTE: 52 kB
VmSwap: 0 kB
HugetlbPagini: 0 kB
CoreDumping: 0
THP_activat: 1
Fire: 1
SigQ: 12/772094
SigPnd: 0000000000000000
ShdPnd: 0000000008000002
SigBlk: 0000000000000000
Semn: 0000000000384004
SigCgt: 000000004b813efb
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: 000001ffffffffff
CapAmb: 0000000000000000
NoNewPrivs: 0
Seccomp: 0
Seccomp_filters: 0
Speculation_Store_Bypass: fire vulnerabile
Procesor_permis: ffff,ffffffff
Lista_permise_procesoare: 0-47
Mems_allowed: 00000003
Listă_permise_Mems: 0-1
voluntary_ctxt_switches: 4
comutatoare_ctxt_nonvoluntary: 1

Aici este /proc/PID/stack pentru acelasi proces.

[<0>] nfs_wait_bit_killable+0x1e/0x90 [nfs]
[<0>] nfs4_wait_clnt_recover+0x60/0x90 [nfsv4]
[<0>] nfs4_client_recover_expired_lease+0x17/0x50 [nfsv4]
[<0>] nfs4_do_open+0x2f4/0xbe0 [nfsv4]
[<0>] nfs4_atomic_open+0xe7/0x100 [nfsv4]
[<0>] nfs_atomic_open+0x1e1/0x520 [nfs]
[<0>] path_openat+0x5f5/0xfc0
[<0>] do_filp_open+0x91/0x130
[<0>] do_sys_openat2+0x96/0x150
[<0>] __x64_sys_openat+0x53/0x90
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
drapel jp
Un proces care este blocat pe NFS poate fi oprit cu semnalul SIGKILL (kill -9).
David Chiang avatar
drapel es
@AlexD Am încercat să omor acele procese și într-adevăr pot fi ucise! Mulțumesc! Vă puteți gândi la vreun motiv pentru care procesul este blocat pe NFS? Rețeaua dintre nodul de calcul și NFS funcționează normal și nu am găsit niciun mesaj de eroare care să se plângă de NFS în `journalctl`.
Michael Hampton avatar
drapel cz
De ce nodul nu este actualizat?
David Chiang avatar
drapel es
@MichaelHampton Te referi la versiunea nucleului?
David Chiang avatar
drapel es
Am descoperit că procesul blocat pe NFS poate fi cauzat de argumentele pe care le scriem în `/etc/fstab`. Folosim parametrii impliciti și credem că problemele noastre pot fi rezolvate dacă specificăm `fsc` (prestabilit este `nofsc`). Vom actualiza întrebarea dacă aceasta rezolvă problema. Multumesc tuturor!
David Chiang avatar
drapel es
După ce modificăm parametrii de montare NFS, problema persistă în continuare.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.