Клиент NFS не берет сервер после перезапуска

РЕДАКТИРОВАНИЕ:

Для суммирования проблемы это - проблема с сервером NFS, изменяющим IP-адрес и клиенты NFS, не берущие новый адрес. Я вижу через tcpdump то, что клиент все еще пытается связаться со старым IP-адресом на порте 2049.

У нас есть несколько точек монтирования NFS, определенных как это в /etc/fstab. Как Вы видите, это - NFS v3.

storage-1:/data/medias/media /var/www/myproject/data/media nfs rsize=32768,wsize=32768,hard,intr,actimeo=300,nfsvers=3,async,noatime,sec=sys 0 0
storage-1:/data/medias/secure /var/www/myproject/web/secure nfs rsize=32768,wsize=32768,hard,intr,actimeo=300,nfsvers=3,async,noatime,sec=sys 0 0
storage-1:/data/tobeprocessed /var/www/myproject/data/tobeprocessed nfs rsize=32768,wsize=32768,hard,intr,actimeo=300,nfsvers=3,async,noatime,sec=sys 0 0
storage-1:/data/ftp /var/ftp nfs rsize=32768,wsize=32768,hard,intr,actimeo=300,nfsvers=3,async,noatime,sec=sys 0 0

Когда мы перезапускаем сервер, мы должны размонтировать и повторно смонтировать каждую конечную точку, иначе клиенты не могут получить доступ к серверу NFS. Я попробовал спустя 5 минут после перезагрузки прежде, чем размонтироваться и повторно смонтироваться.

После перезапуска сервера NFS, простого ls /var/www/myproject/data/media заставляет консоль зависнуть.

Я могу также видеть следующие сообщения в /var/log/syslog :

Sep 16 11:24:36 encoder-1 kernel: [69688.160102] nfs: server storage-1 not responding, still trying
Sep 16 11:30:15 encoder-1 kernel: [70027.744042] nfs: server storage-1 not responding, still trying

Когда я umount и затем mount один из каталогов nfs на клиенте, я могу затем получить доступ к нему. Но я не могу получить доступ к другим если я также umount и mount их.

Я любой знает возможное решение для этого, я внимательно слушаю. Отметьте это rpcinfo шоу, что клиент может связаться с сервером, как показано ниже.

Существует один сервер NFS, 4 клиента NFS для в общей сложности 12 точек монтирования.

Результат rpcinfo -p storage-1 от клиента:

[0]root@encoder-1:/var/log # rpcinfo -p storage-1
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp  52115  status
    100024    1   tcp  57907  status
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    2   tcp   2049
    100227    3   tcp   2049
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    2   udp   2049
    100227    3   udp   2049
    100021    1   udp  59603  nlockmgr
    100021    3   udp  59603  nlockmgr
    100021    4   udp  59603  nlockmgr
    100021    1   tcp  47716  nlockmgr
    100021    3   tcp  47716  nlockmgr
    100021    4   tcp  47716  nlockmgr
    100005    1   udp    892  mountd
    100005    1   tcp    892  mountd
    100005    2   udp    892  mountd
    100005    2   tcp    892  mountd
    100005    3   udp    892  mountd
    100005    3   tcp    892  mountd

Когда включение NFS отлаживает трассировки, как объяснено здесь, мы получаем следующее сообщение журнала:

Sep 17 05:35:00 encoder-1 kernel: [135112.160230] nfs: server storage-1 not responding, still trying
Sep 17 05:53:47 encoder-1 kernel: [136240.018538] NFS: nfs_lookup_revalidate(///) is valid
Sep 17 05:53:47 encoder-1 kernel: [136240.018538] NFS: revalidating (0:12/5242881)
Sep 17 05:53:47 encoder-1 kernel: [136240.018538] NFS call  getattr
1
задан 13 February 2015 в 19:28
1 ответ

Думаю, проблема в разрешении имени хоста. Я заметил, что даже если разрешение работает нормально, в противном случае в системе и сети у процессов монтирования NFS иногда возникают проблемы. Я бы изменил имя хоста на фактический IP-адрес и попробовал его. Допустим, полное доменное имя - storage-1.example.org, и оно разрешится до 192.0.2.11, затем выполните:

192.0.2.11:/data/medias/media /var/www/myproject/data/media nfs bg,rsize=32768,wsize=32768,hard,intr,actimeo=300,nfsvers=3,async,noatime,sec=sys 0 0

Даже если это не решит проблему Лично я считаю, что использование IP-адреса вместо имени хоста или FQDN предпочтительнее. Но я понимаю, что могут быть причины, по которым вы не захотите этого делать.

Примечание : я добавил параметр bg , который будет фоновым процессом монтирования на случай, если монтирование займет больше времени , чтобы ускорить загрузку. Вам решать, хотите ли вы этого. Я подумал, что упомянул бы об этом, поскольку при наличии нескольких точек монтирования NFS, каждая из которых требует больше времени (или тайм-аута) для монтирования, время загрузки может легко превысить один час.

1
ответ дан 4 December 2019 в 00:18

Теги

Похожие вопросы