Você pode atualizar sua pergunta com mais informações?
No servidor NFS, execute
chkconfig --list | egrep "nfs|rpc"
iptables --list -n -v
rpcinfo -p
O próximo não deve retornar nada se as configurações do servidor nfs não forem personalizadas.
grep -v "^#" /etc/sysconfig/nfs
No entanto, se você estiver executando o iptables, ele deverá ser personalizado. Veja aqui link
No seu cliente executado,
chkconfig --list | egrep "nfs|rpc"
iptables --list -n -v
rpcinfo -p
mount | grep nfs
Se você estiver executando o NFSV2 ou o NFSV3, também será necessário executar o nfslock no cliente
O que parece estranho em sua saída ao iniciar o NFS - está abaixo da linha
FATAL: Module nfsd not found.
FATAL: Error running install command for nfsd
E eu acabei de perceber uma coisa - já que você está rodando no openvz - o link abaixo se aplica à sua situação. Veja se isso ajuda
Editar 1:
Eu fiz testes hoje em contêineres openvz.
Mensagem que você vê
FATAL: Module nfsd not found.
FATAL: Error running install command for nfsd
é inofensivo. É descrito aqui link
Não consegui reproduzir o seu problema. Após a reinicialização do servidor nfs, o cliente nfs ainda era capaz de procurar arquivos, criar novos arquivos, excluir arquivos do compartilhamento nfs.
Agora você pode postar sua configuração de montagem automática e também a saída de
mount|grep nfs
Na caixa A, que você já fez. Mas você fez isso enquanto o sistema de arquivos montado automaticamente estava desmontado. Então, agora no Box A cd para auto montado dir e, em seguida, execute o comando acima. Isso fornecerá informações sobre quais opções foram usadas durante a montagem.
Da próxima vez que você reiniciar a sua Caixa B e você tiver este problema de automount presente - a partir do Site A, execute este comando
netstat -anp|grep ipofB
Isso dará informações sobre quais portas estão envolvidas.
Neste tipo de situações também é bom coletar tcpdumps em B e A.
Eu costumo pensar que não há nada errado com a sua configuração - mas algo estranho está acontecendo com o iptables no vzhosts. Não nos contêineres, mas nos hosts.
O que você também pode tentar fazer é instalar o nmap em seu host A e, no momento do problema - varrer seu host B para ver quais portas estão abertas do ponto de vista de A (alguns podem sugerir netstat ou ss , mas neste caso há também firewall de host openvz na frente do container e não sabemos se eles estão bloqueando algo ou não)
Editar 2 (25 de novembro) Algo é muito estranho com suas opções de montagem
Compare sua saída
$ mount | grep nfs
mount |grep nfs
nfsd on /proc/fs/nfsd type nfsd (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
boxb:/srv/nfs/xdata on /mnt/nfs/xdata type nfs (rw,sloppy,vers=4,addr={boxb ip},clientaddr={boxa ip})
Para o meu abaixo. Aqui está o meu /etc/auto.misc. A linha 6 é o padrão. Linha 16 eu adicionei
[root@vznfsclient /]# egrep -vn "^#|^$" /etc/auto.misc
6:cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
16:nfs -fstype=nfs 192.168.0.54:/nfs_export
Então, quando eu cd para / misc / nfs - meu compartilhamento é montado. Mas olhe para as opções padrão na linha 12.
[root@vznfsclient ~]# mount|egrep -n "nfs|auto"
4:nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
5:sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
10:/etc/auto.misc on /misc type autofs (rw,relatime,fd=6,pgrp=768,timeout=300,minproto=5,maxproto=5,indirect)
11:-hosts on /net type autofs (rw,relatime,fd=12,pgrp=768,timeout=300,minproto=5,maxproto=5,indirect)
12:192.168.0.54:/nfs_export/ on /misc/nfs type nfs (rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.54,mountvers=3,mountport=42089,mountproto=udp,local_lock=none,addr=192.168.0.54)
Primeiro é o nfsv3 e está usando o udp. Ok udp podemos mudar para tcp alterando /etc/auto.misc para este
[root@vznfsclient /]# egrep -vn "^#|^$" /etc/auto.misc
6:cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
16:nfs -fstype=nfs,proto=tcp 192.168.0.54:/nfs_export
E as opções de montagem serão alteradas para
192.168.0.54:/nfs_export/ on /misc/nfs type nfs (rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.54,mountvers=3,mountport=45378,mountproto=tcp,local_lock=none,addr=192.168.0.54)
Quando eu tento usar em /etc/auto.misc -fstype=nfs4
- eu não consigo nem gravar em cd / misc / nfs, o que faz sentido já que por openvz nfsv4 não é suportado dentro de container link
Observe que você tem em suas opções de montagem sloppy
e simples rw
. Isso basicamente significa que
- As opções passadas para mount.nfs não estão exatamente corretas, por isso está tentando contornar isso. Leia man mount.nfs e procure por / sloppy.
- Suponho que esteja tentando usar o nfsv4. Nem sei como funciona se não for suportado dentro do contêiner.
Sugiro alterar seus mapas de montagem automática para corrigir a sintaxe (consulte meu exemplo) ou veja exemplos aqui link
e teste. Acabei de executar testes com o autofs nesses mesmos 2 contêineres executados em dois hosts openvz diferentes - e após a reinicialização do servidor nfs - o cliente ainda está feliz.
Editar 3 Eu não consigo nem reproduzir seu cenário. Eu mudei meu /etc/auto.misc para abaixo, que é basicamente o que você tem
[root@vznfsclient nfs]# egrep -nv "^#|^$" /etc/auto.misc
6:cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
16:nfs -rw 192.168.0.54:/nfs_export
E após a reinicialização e cd / misc / nfs eu ainda tenho isso
[root@vznfsclient nfs]# mount|grep nfs
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
192.168.0.54:/nfs_export/ on /misc/nfs type nfs (rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.54,mountvers=3,mountport=46453,mountproto=udp,local_lock=none,addr=192.168.0.54)
Então, no meu caso, está tentando usar o nfsv3 corretamente.
A única coisa que resta fazer agora é
Ative a depuração no /etc/autofs.conf
[root@vznfsclient nfs]# grep -i debug /etc/autofs.conf|grep -v "^#"
logging = debug
Ative a gravidade de depuração a ser enviada para /var/log/messages
no /etc/rsyslog.conf
. Mude isto
[root@vznfsclient nfs]# grep info /etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none -/var/log/messages
Para isso (.info para .debug)
[root@vznfsclient nfs]# grep debug /etc/rsyslog.conf
*.debug;mail.none;authpriv.none;cron.none -/var/log/messages
Reinicie o autofs e o rsyslog e, em seguida, ao alterar para a localização montada automaticamente, você deverá ver a saída de depuração no /var/log/messages
Aqui está a saída do meu sistema de teste
Nov 25 03:06:00 vznfsclient automount[583]: attempting to mount entry /misc/nfs
Nov 25 03:06:00 vznfsclient automount[583]: lookup_mount: lookup(file): looking up nfs
Nov 25 03:06:00 vznfsclient automount[583]: lookup_mount: lookup(file): nfs -> -rw#011#011#011192.168.0.54:/nfs_export
Nov 25 03:06:00 vznfsclient automount[583]: parse_mount: parse(sun): expanded entry: -rw#011#011#011192.168.0.54:/nfs_export
Nov 25 03:06:00 vznfsclient automount[583]: parse_mount: parse(sun): gathered options: rw
Nov 25 03:06:00 vznfsclient automount[583]: parse_mount: parse(sun): dequote("192.168.0.54:/nfs_export") -> 192.168.0.54:/nfs_export
Nov 25 03:06:00 vznfsclient automount[583]: parse_mount: parse(sun): core of entry: options=rw, loc=192.168.0.54:/nfs_export
Nov 25 03:06:00 vznfsclient automount[583]: sun_mount: parse(sun): mounting root /misc, mountpoint nfs, what 192.168.0.54:/nfs_export, fstype nfs, options rw
Nov 25 03:06:00 vznfsclient automount[583]: mount_mount: mount(nfs): root=/misc name=nfs what=192.168.0.54:/nfs_export, fstype=nfs, options=rw
Nov 25 03:06:00 vznfsclient automount[583]: mount_mount: mount(nfs): nfs options="rw", nobind=0, nosymlink=0, ro=0
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: called with host 192.168.0.54(192.168.0.54) proto 6 version 0x40
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: called with host 192.168.0.54(192.168.0.54) proto 6 version 0x70
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: nfs v3 rpc ping time: 0.000366
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: host 192.168.0.54 cost 365 weight 0
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: called with host 192.168.0.54(192.168.0.54) proto 17 version 0x70
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: nfs v3 rpc ping time: 0.000507
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: nfs v2 rpc ping time: 0.000692
Nov 25 03:06:00 vznfsclient automount[583]: get_nfs_info: host 192.168.0.54 cost 599 weight 0
Nov 25 03:06:00 vznfsclient automount[583]: prune_host_list: selected subset of hosts that support NFS3 over TCP
Nov 25 03:06:00 vznfsclient automount[583]: mount_mount: mount(nfs): calling mkdir_path /misc/nfs
Nov 25 03:06:00 vznfsclient automount[583]: mount_mount: mount(nfs): calling mount -t nfs -s -o rw 192.168.0.54:/nfs_export /misc/nfs
Nov 25 03:06:00 vznfsclient automount[583]: spawn_mount: mtab link detected, passing -n to mount
Nov 25 03:06:00 vznfsclient automount[583]: mount(nfs): mounted 192.168.0.54:/nfs_export on /misc/nfs
Nov 25 03:06:00 vznfsclient automount[583]: ioctl_send_ready: token = 28
Nov 25 03:06:00 vznfsclient automount[583]: mounted /misc/nfs