NFSv4 trava na montagem

1

Os comandos de montagem do NFS travam no cliente indefinidamente após a reinicialização do servidor.

Estou executando este comando: mount -t nfs -v 10.17.25.27:/DATA/projects/assets-db/log-apache test

Meu servidor NFS é: 10.17.25.27 , o IP do cliente é 10.17.25.152

Eu habilitei o debug do syslog para o nfs e vejo estes erros:

Aug 31 16:26:06 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a6d8c0000)
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS call  setclientid auth=UNIX, 'Linux NFSv4.0 10.17.25.152/10.17.25.27 tcp'
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS reply setclientid: 0
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a6e8c0000)
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs_put_client({8})
Aug 31 16:26:06 SEFRAPP05155 kernel: NFS: <-- nfs40_walk_client_list status = -10008
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs4_create_server()
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs4_init_server()
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs4_set_client()
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs_get_client(10.17.25.27,v4)
Aug 31 16:26:06 SEFRAPP05155 kernel: <-- nfs_found_client found nfs_client ffff8801e93a0400 for 10.17.25.27
Aug 31 16:26:06 SEFRAPP05155 kernel: <-- nfs4_set_client() = 0 [new ffff8801e93a0400]
Aug 31 16:26:06 SEFRAPP05155 kernel: <-- nfs4_init_server() = 0
Aug 31 16:26:06 SEFRAPP05155 kernel: --> nfs4_get_rootfh()
...
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a6f8c0000)
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid auth=UNIX, 'Linux NFSv4.0 10.17.25.152/10.17.25.27 tcp'
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid: 0
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a708c0000)
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_put_client({9})
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS: <-- nfs40_walk_client_list status = -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: nfs4_get_rootfh: getroot error = 512
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs4_get_rootfh() = -512
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_free_server()
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_put_client({8})
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs_free_server()
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs4_create_server() = error -512
...
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a6f8c0000)
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid auth=UNIX, 'Linux NFSv4.0 10.17.25.152/10.17.25.27 tcp'
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid: 0
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a708c0000)
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_put_client({9})
Aug 31 16:26:08 SEFRAPP05155 kernel: NFS: <-- nfs40_walk_client_list status = -10008
Aug 31 16:26:08 SEFRAPP05155 kernel: nfs4_get_rootfh: getroot error = 512
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs4_get_rootfh() = -512
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_free_server()
Aug 31 16:26:08 SEFRAPP05155 kernel: --> nfs_put_client({8})
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs_free_server()
Aug 31 16:26:08 SEFRAPP05155 kernel: <-- nfs4_create_server() = error -512
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a708c0000)
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS call  setclientid auth=UNIX, 'Linux NFSv4.0 10.17.25.152/10.17.25.27 tcp'
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS reply setclientid: 0
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS call  setclientid_confirm auth=UNIX, (client ID 9ee5cc5a718c0000)
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS reply setclientid_confirm: -10008
Aug 31 16:26:09 SEFRAPP05155 kernel: --> nfs_put_client({8})
Aug 31 16:26:09 SEFRAPP05155 kernel: NFS: <-- nfs40_walk_client_list status = -10008

Eu vejo esses tipos de linhas de log repetidas.

Quando executo rpcinfo -p 10.17.25.27 no cliente, vejo:

   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    662  status
    100005    1   udp    892  mountd
    100024    1   tcp    662  status
    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
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  32768  nlockmgr
    100021    3   udp  32768  nlockmgr
    100021    4   udp  32768  nlockmgr
    100021    1   tcp  32768  nlockmgr
    100021    3   tcp  32768  nlockmgr
    100021    4   tcp  32768  nlockmgr

Observe que a montagem com a versão 3 do NFS funciona, mas eu preciso de recursos da versão 4, por isso não posso fazer o downgrade para essa versão mais antiga do protocolo.

Estou em CentOS 7.2 com o kernel 3.10.0-514.26.2.el7.x86_64

    
por jobou 31.08.2018 / 16:38

1 resposta

0

Não descobrimos por que nosso NFS caiu repentinamente e após a reinicialização, os clientes não conseguiram montar nenhum sistema de arquivos exportado. Tentamos reiniciar todos os servidores, para abrir todas as portas entre as máquinas, mas nada funcionou.

No entanto, conseguimos fazer com que funcionasse novamente depois que atualizamos o kernel da versão 3.10.0-514.26.2.el7.x86_64 para 3.10.0-862.11.6.el7.x86_64

    
por 04.09.2018 / 11:01