Puncte:3

Performanță deschisă NFS extrem de lent

drapel kz

Am instalat un server NFS pe Ubuntu 20.04 și un client FreeIPA Ubuntu 20.04 cu directoarele de acasă ale utilizatorilor servite de serverul NFS. Performanța este extrem de lentă la accesarea fișierelor. Când parcurg procesul cu timpul petrecut în apeluri de sistem, constat că openat poate dura peste 1 secundă uneori pentru fișierele NFS! (vezi mai jos).Inutil să spunem că accesul la fișiere pe server nu afișează o astfel de problemă. openat este singura operațiune lentă.

Am atașat o histogramă a timpilor petrecuți în openat (am tăiat recipientul de sus, astfel încât coada să poată fi văzută). Există peste 800 de apeluri deschise care se finalizează în mai puțin de 10mSec, dar coada este cea care face diferența în timpul total și există o mulțime de apeluri care durează peste 100mSec, ceea ce este nerezonabil.

Bănuiesc că poate avea de-a face cu autorizația Kerberos sau ceva de genul, dar nu știu cum să investighez problema.

Opțiuni în /etc/exports:

/home *(rw,sec=krb5:krb5i:krb5p,async,no_subtree_check)

Montare pe client:

server:/home/... pe /home/... tastați nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans= 2, sec=krb5,clientaddr=xx.xx.xx.x1,local_lock=none,addr=xx.xx.xx.x2)

Orice ajutor sau indiciu ar fi apreciat,

Yuval.

0.000064 : stat("/home/.../lib/python3.8/site-packages/pandas/core", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
0.000040 : stat("/home/.../lib/python3.8/site-packages/pandas/core/nanops.py", {st_mode=S_IFREG|0664, st_size=50002, ...}) = 0
0.000095 : stat("/home/.../lib/python3.8/site-packages/pandas/core/nanops.py", {st_mode=S_IFREG|0664, st_size=50002, ...}) = 0
0.664737 : openat(AT_FDCWD, "/home/.../lib/python3.8/site-packages/pandas/core/__pycache__/nanops.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 6
0,000122 : fstat(6, {st_mode=S_IFREG|0664, st_size=36431, ...}) = 0
0,000116 : ioctl(6, TCGETS, 0x7ffed1278d60) = -1 ENOTTY (ioctl neadecvat pentru dispozitiv)
0,000049 : lseek(6, 0, SEEK_CUR) = 0
0,000024 : lseek(6, 0, SEEK_CUR) = 0
0,000028 : fstat(6, {st_mode=S_IFREG|0664, st_size=36431, ...}) = 0
0.000052 : citiți(6, „U\r\r\n\0\0\0\0\216t\362aR\303\0\0\343\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0"..., 36432) = 36431
0,000024 : citiți(6, "", 1) = 0
0,000438 : închidere(6) = 0
0,000083 : mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f23fcbaf000
0,000100 : stat("/home/.../bin", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
0.000120 : stat("/usr/lib/python3.8", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0
0.000122 : stat("/usr/lib/python3.8/lib-dynload", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
0.000037 : getcwd("/home/yuval/src/themis", 1024) = 23
0.000046 : stat("/home/yuval/src/themis", {st_mode=S_IFDIR|0775, st_size=130, ...}) = 0
0.000037 : stat("/home/.../lib/python3.8/site-packages", {st_mode=S_IFDIR|0775, st_size=12288, ...}) = 0
0.000051 : stat("/home/.../lib/python3.8/site-packages/pandas/core/array_algos", {st_mode=S_IFDIR|0775, st_size=163, ...}) = 0
0.000041 : stat("/home/.../lib/python3.8/site-packages/pandas/core/array_algos/masked_reductions.py", {st_mode=S_IFREG|0664, st_size=3721, ...}) = 0
0.000085 : stat("/home/.../lib/python3.8/site-packages/pandas/core/array_algos/masked_reductions.py", {st_mode=S_IFREG|0664, st_size=3721, ...}) = 0
0.411113 : openat(AT_FDCWD, "/home/.../lib/python3.8/site-packages/pandas/core/array_algos/__pycache__/masked_reductions.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 6
0,000053 : fstat(6, {st_mode=S_IFREG|0664, st_size=3329, ...}) = 0
0,000027 : ioctl(6, TCGETS, 0x7ffed1278d60) = -1 ENOTTY (ioctl neadecvat pentru dispozitiv)
0,000043 : lseek(6, 0, SEEK_CUR) = 0
0,000037 : lseek(6, 0, SEEK_CUR) = 0
0,000025 : fstat(6, {st_mode=S_IFREG|0664, st_size=3329, ...}) = 0
0.000032 : citiți(6, „U\r\r\n\0\0\0\0\216t\362a\211\16\0\0\343\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\0"..., 3330) = 3329
0,000025 : citiți(6, "", 1) = 0
0,000438 : închidere(6) = 0
0.000105 : stat("/home/.../lib/python3.8/site-packages/pandas/core/arrays", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
0.000102 : stat("/home/.../lib/python3.8/site-packages/pandas/core/arrays/categorical.py", {st_mode=S_IFREG|0664, st_size=94502, ...}) = 0
0.000101 : stat("/home/.../lib/python3.8/site-packages/pandas/core/arrays/categorical.py", {st_mode=S_IFREG|0664, st_size=94502, ...}) = 0
0.413090 : openat(AT_FDCWD, "/home/.../lib/python3.8/site-packages/pandas/core/arrays/__pycache__/categorical.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 6
0,000063 : fstat(6, {st_mode=S_IFREG|0664, st_size=77947, ...}) = 0
0,000041 : ioctl(6, TCGETS, 0x7ffed127b180) = -1 ENOTTY (ioctl neadecvat pentru dispozitiv)
0,000037 : lseek(6, 0, SEEK_CUR) = 0
0,000023 : lseek(6, 0, SEEK_CUR) = 0
0,000031 : fstat(6, {st_mode=S_IFREG|0664, st_size=77947, ...}) = 0
0,000085 : citiți(6, „U\r\r\n\0\0\0\0\216t\362a&q\1\0\343\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0"..., 77948) = 77947

Histograma timpului petrecut în openat pentru deschiderea Python și importul pytorch

drapel fr
Am o problemă foarte asemănătoare și chiar mai extremă. Openat() pentru a deschide efectiv fișierul durează aproximativ 5 secunde! Tot ceea ce este legat de parcurgerea arborelui director sau a statisticilor se află în intervalul µs. Te-ai apropiat mai mult de problemă?
YuvGM avatar
drapel kz
Da. Dar nu sunt sigur cum. Am reatașat clientul la domeniu și am aflat că chronyd nu funcționează corect (nu am acces la un NTP extern și nu s-ar actualiza dintr-o singură sursă dintr-un motiv oarecare). Am fost atât de frustrat de ea încât am ajuns să rulez o comandă ssh către serverul de domeniu în crontab și actualizată de la data returnării. data Nu foarte precisă, dar a fost suficient de bună. Nu sunt sigur care modificare a rezolvat problema.

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.