Назад | Перейти на главную страницу

Почему почти все мои вызовы NFS для syscltid и syscltidconf?

Я управляю установкой с 1 сервером под управлением Ubuntu 12.04 и 60 микроконтроллерами Raspberry Pi под управлением raspbian. Каждый Pi подключает к серверу диск NFS для чтения нового кода и хранения журналов.

Мы испытываем серьезную задержку в сети, и количество входящих и исходящих байтов сервера резко увеличилось (с 500 кБ / с до 8 МБ / с).

После выполнения nfsstat я заметил, что почти все вызовы - это "setcltid" и "setcltidconf". Я нигде не могу найти описание этих вызовов (google, man nfs / nfsstat, здесь), но что-то мне подсказывает, что они не должны составлять 99,99999% всех вызовов. Вот результат nfsstat:

Server rpc stats:
calls      badcalls   badclnt    badauth    xdrcall
79155136   0          0          0          0

Server nfs v3:
null         getattr      setattr      lookup       access       readlink
1       100% 0         0% 0         0% 0         0% 0         0% 0         0%
read         write        create       mkdir        symlink      mknod
0         0% 0         0% 0         0% 0         0% 0         0% 0         0%
remove       rmdir        rename       link         readdir      readdirplus
0         0% 0         0% 0         0% 0         0% 0         0% 0         0%
fsstat       fsinfo       pathconf     commit
0         0% 0         0% 0         0% 0         0%

Server nfs v4:
null         compound
4         0% 79057350 99%

Server nfs v4 operations:
op0-unused   op1-unused   op2-future   access       close        commit
0         0% 0         0% 0         0% 14461     0% 27901     0% 0         0%
create       delegpurge   delegreturn  getattr      getfh        link
0         0% 0         0% 0         0% 93133     0% 36808     0% 0         0%
lock         lockt        locku        lookup       lookup_root  nverify
0         0% 0         0% 0         0% 2927      0% 0         0% 0         0%
open         openattr     open_conf    open_dgrd    putfh        putpubfh
66698     0% 0         0% 2586      0% 8         0% 128989    0% 0         0%
putrootfh    read         readdir      readlink     remove       rename
3998      0% 1810      0% 13        0% 92        0% 0         0% 0         0%
renew        restorefh    savefh       secinfo      setattr      setcltid
10299     0% 0         0% 0         0% 0         0% 370       0% 39754648 49%
setcltidconf verify       write        rellockowner bc_ctl       bind_conn
39689677 49% 0         0% 7319      0% 0         0% 0         0% 0         0%
exchange_id  create_ses   destroy_ses  free_stateid getdirdeleg  getdevinfo
0         0% 0         0% 0         0% 0         0% 0         0% 0         0%
getdevlist   layoutcommit layoutget    layoutreturn secinfononam sequence
0         0% 0         0% 0         0% 0         0% 0         0% 0         0%
set_ssv      test_stateid want_deleg   destroy_clid reclaim_comp
0         0% 0         0% 0         0% 0         0% 0         0%

Client rpc stats:
calls      retrans    authrefrsh
0          0          0

Если кто-то может дать хоть какой-то совет, он будет очень признателен.

Какой твой clientaddr установка на клиентов? Похоже на те же симптомы, что и эта ошибка:

При clientaddr = 0.0.0.0 команда nfsstat -s показала быстрое увеличение операций setcltid и setcltidconf на сервере и высокую загрузку операций ввода-вывода на корневом томе из-за записи информации v4recovery.