Dell Unity: Los hosts NFS que utilizan Netgroup no pueden conectarse al recurso compartido NFS. (Corregible por Dell)
Summary: Los hosts NFS no pueden conectarse a recursos compartidos NFS de Unity a través de "Netgroup"; sin embargo, NFS funciona cuando se utiliza la dirección IP o el nombre de host explícitos del servidor NAS de Unity sin problemas. Cuando los mismos hosts intentan conectarse al recurso compartido NFS de Unity a través de un "netgroup", el servidor no responde: RPC: Se agotó el tiempo de espera y se perdió el acceso al recurso compartido NFS ...
Symptoms
Se implementaron netgroups después de actualizar Unity a la versión de Unity: 4.0.1.8404134
El host NFS no puede acceder a los recursos compartidos NFS de Unity a través de "netgroups". El mismo host NFS puede conectarse directamente a los recursos compartidos NFS de Unity a través de la dirección IP del servidor NAS de Unity o a través del "nombre de host" del servidor NAS de Unity; sin embargo, si el mismo host NFS intenta conectarse al recurso compartido NFS del servidor NAS de Unity a través de un "netgroup", se pierde el acceso al recurso compartido NFS de Unity.
Aparece una alerta en la GUI de Unisphere de Unity, en la sección "alertas": "Network Information Service (NIS) configurado para el servidor NAS no pudo proporcionar información de mapeo de usuarios y no responde. Compruebe la disponibilidad del servidor NIS y asegúrese de que el nombre de dominio y las direcciones utilizadas para el servidor sean correctos".
Se puede ver y observar una alerta similar a través de la CLI de Unity:21:08:58 root@(none) spa:/home/service> uemcli /event/alert/hist show
Storage system address: 127.0.0.1
Storage system port: 443
HTTPS connection
1: ID = alert_804
Time = 2016-09-26 21:07:59.088
Message = NAS server n125d061: There is no NIS server on-line for the domain nb-engr.
Description = "The Network Information Service (NIS) configured for the NAS server was unable to provide user mapping information and is not responding. Check the availability of the NIS server, and ensure that the domain name and addresses used for the server are accurate."
Severity = error
Acknowledged = no
2: ID = alert_803
Time = 2016-09-26 21:07:44.102
Message = NAS server n125d061: There is no NIS server on-line for the domain nb-engr.
Description = "The Network Information Service (NIS) configured for the NAS server was unable to provide user mapping information and is not responding. Check the availability of the NIS server, and ensure that the domain name and addresses used for the server are accurate."
Severity = error
Acknowledged = no
3: ID = alert_802
Time = 2016-09-26 21:07:29.174
Message = NAS server n125d061: There is no NIS server on-line for the domain nb-engr.
Description = "The Network Information Service (NIS) configured for the NAS server was unable to provide user mapping information and is not responding. Check the availability of the NIS server, and ensure that the domain name and addresses used for the server are accurate."
Severity = error
Acknowledged = no
Una comprobación de si rpc.d se está ejecutando en el servidor NAS de Unity indica que rpc.mountd, rpc,nfsd, y rpc.portmapper están corriendo.root@spa:/cores/service>/sbin/rpcinfo -p 10.#.#.##
program vers proto port service
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100003 4 tcp 2049 nfs
100005 1 udp 1234 mountd
100005 2 udp 1234 mountd
100005 3 udp 1234 mountd
100005 1 tcp 1234 mountd
100005 2 tcp 1234 mountd
100005 3 tcp 1234 mountd
100003 3 tcp 2049 nfs
100021 4 tcp 4001 nlockmgr
100021 1 tcp 4001 nlockmgr
100021 2 tcp 4001 nlockmgr
100021 3 tcp 4001 nlockmgr
100024 1 tcp 4000 status
100003 3 udp 2049 nfs
100021 4 udp 4001 nlockmgr
100021 1 udp 4001 nlockmgr
100021 2 udp 4001 nlockmgr
100021 3 udp 4001 nlockmgr
100024 1 udp 4000 status
536870914 2 tcp 4658
536870914 2 udp 4658
824395111 1 udp 39850
824395111 1 tcp 50600
102660 1 tcp 37185
102660 1 udp 52008
De manera similar, la comprobación del estado de "rpc.d" desde el host NFS, que apunta al servidor NAS de Unity, también indica querpc.mountd, rpc,nfsd, y rpc.portmapper se ejecutan en el servidor NAS de Unitybash-2.03# rpcinfo -p 10.#.#.#0
program vers proto port service
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100003 4 tcp 2049 nfs
100005 1 udp 1234 mountd
100005 2 udp 1234 mountd
100005 3 udp 1234 mountd
100005 1 tcp 1234 mountd
100005 2 tcp 1234 mountd
100005 3 tcp 1234 mountd
100003 3 tcp 2049 nfs
100021 4 tcp 4001 nlockmgr
100021 1 tcp 4001 nlockmgr
100021 2 tcp 4001 nlockmgr
100021 3 tcp 4001 nlockmgr
100024 1 tcp 4000 status
100003 3 udp 2049 nfs
100021 4 udp 4001 nlockmgr
100021 1 udp 4001 nlockmgr
100021 2 udp 4001 nlockmgr
100021 3 udp 4001 nlockmgr
100024 1 udp 4000 status
536870914 2 tcp 4658
536870914 2 udp 4658
824395111 1 udp 39850
824395111 1 tcp 50600
102660 1 tcp 37185
102660 1 udp 52008
El host NFS puede conectarse correctamente (montar) al recurso compartido NFS del servidor NAS de Unity a través de la dirección IP de Unity y el nombre de host del servidor NAS de Unity, pero después de que el usuario intenta conectar el host NFS al recurso compartido NAS de Unity a través de "netgroup", falla con lo siguiente: bash-2.03# showmount -e 10.#.#.#0
export list for 10.#.#.#0:
/steventestfs (everyone)
stevetestshare (everyone)
/tejasshare n#-e###-a##,10.#.#.##1/255.255.255.255,10.#.#.##/255.255.255.255
bash-2.03# mount 10.#.#.#0:/tejasshare /mwtest/
nfs mount: 10.#.#.#0:/tejasshare: server not responding : RPC: Timed out
nfs mount: retrying: /mwtest
nfs mount: 10.#.#.#0:/tejasshare: server not responding : RPC: Timed out
Cause
Unity descarta las respuestas de Legal YP MATCH en el formato "host.byaddr". Unity utiliza un "firewall" interno estricto que descarta paquetes de red. El contenedor del servidor NAS de Unity no permite que el servidor NIS envíe datagramas cuando el servidor NIS utiliza un valor de puerto diferente para su puerto de origen que el valor de puerto que devuelve en las solicitudes "PORTMAP".
La política de firewall interno predeterminada de Unity es: DROP si ninguna regla coincide. Por lo tanto, cualquier puerto aleatorio coincide con la regla "-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT".
Resolution
Actualmente, se está desarrollando una corrección de software de Unity. Actualmente se rastrea a través del número de RA 858778. Comuníquese con el soporte técnico de Dell-EMC para obtener una actualización sobre la "corrección de código".
Mientras tanto, tenemos una solución alternativa. La solución alternativa requiere un cambio de las cadenas IP.
conéctese a Unity e inyecte Root.
Agregue una regla en la casilla del cliente para aceptar cualquier paquete UDP de los servidores NIS. Después de agregar la regla, NIS debería funcionar. Esta no es realmente una solución permanente, sino una solución alternativa, verifique el número de RA 858778 para obtener una solución de software.
Para añadir:iptables -A IN_DATA -p udp -s <ip address of the NIS server> -j ACCEPT
realice el comando anterior para cada una de las direcciones IP de los servidores NIS, luego puede confirmar que los netgroups funcionan, puede ejecutar el siguiente comando para eliminar.
Para eliminar:iptables -D IN_DATA -p udp -s <ip address of the NIS server> -j ACCEPT
ejemplo: root@spa:/cores/service>iptables -S IN_DATA
-N IN_DATA
-A IN_DATA -p tcp -m tcp --dport 445 -j ACCEPT
....
-A IN_DATA -i eve_br0 -p udp -m multiport --dports 22 -j ACCEPT
-A IN_DATA -s 10.#.#.##/32 -p udp -j ACCEPT
-A IN_DATA -s 10.#.#.##/32 -p udp -j ACCEPT