GuilleSQL :: Microsoft SQL Server, SSIS, y más !!

VMWare, rendimiento de red, y dispositivos de red ocultos en el Device Manager


Hace poco he estado pegándome con unos problemas de rendimiento, que aunque inicialmente se pensaba que estarían localizados en SQL Server, finalmente se encontró buena parte en la Virtualización, en particular, sobre el rendimiento de la red Máquinas Virtuales de VMWare con dispositivos de red ocultos en el Device Manager. Algo bastante absurdo, ya que si bien es conocido desde hace tiempos inmemoriables la existencia de problemas con los dispositivos de red ocultos (al menos, desde Windows 2000), otro tema es el rendimiento de pena que se produce con VMWare.

Descripción del Problema

No me quedo claro, cuál fue el origen de los dispositivos de red ocultos de las Máquinas Virtuales de VMWare. Quizás, proviniesen de las máqueta original, la Máquina Virtual que preparas inicialmente y en la que ejecutas el SysPrep de turno antes de utilizarla para desplegar nuevas máquinas. O quizás, viniesen de alguna actualización de las VMWare Tools al mover las máquinas a algún Host con una versión más moderna de VMWare, en algún momento de la vida de la máquina.

El caso es, que en la vorágine de estos problemas de rendimiento, en los que se ponía en duda los Problemas de Rendimiento de SQL Server (un Cluster físico de dos Nodos, con 48 CPUs y 72 GB de RAM cada Nodo), preparé una pequeña Tool con Visual Studio (nuestro gran amigo), que leía una tabla desde SQL Server, la cargaba en memoria en un DataSet, y seguidamente recorría el Dataset ejecutando un INSERT para cada una de las filas (hablamos de unos 200.000 inserts) en otra tabla destino previamente TRUNCADA.

Realizada dicha prueba en diferentes escenarios (localmente desde el Nodo del Cluster que ejecuta la instancia de SQL Server, desde otra máquina física en la misma VLAN, desde otra máquina física en una VLAN distinta, desde una VM en la misma VLAN, y desde una VM de otra VLAN), el problema quedó claramente localizado: al ejecutar dicha Tool desde una VM en la misma VLAN, el tiempo necesario para finalizar su ejecución era el doble que desde una máquina física en la misma VLAN (de 5min pasábamos a 10min, aprox).

Esto ayudó a que surgiese el tema de los dispositivos de red ocultos en el Device Manager sobre Máquinas Virtuales de VMWare. Llegados a este punto, tras eliminar los dispositivos de red ocultos en el Device Manager, al repetir la ejecución de dicha Tool, los tiempos volvían prácticamente parejos.

Procedimiento para su corrección

El procedimiento que seguimos fue el siguiente. Desde una ventana de símbolo del sistema (abierta como Administrador, si es w2008 o superior), ejecutar:

  • set devmgr_show_nonpresent_devices=1
  • start devmgmt.msc

Tras esto, en la herramienta administrativa Device Manager, activar la opción de Mostrar Dispositivos ocultos (View -> Show hidden devices).

Probablemente, aparezca alguna tarjeta de red "en gris", la cual (o cuales) representan antiguos dispositivos que ya no existen en la máquina, pero que quedan referenciados en el sistema. Estas tarjetas de red, se pueden eliminar.

En principio, con esto debería de ser suficiente, pero no. En el caso que me encontré, eran Máquinas Virtuales con Windows Server 2008 R2, y alguna con Windows Server 2003 R2. En las 2003, fue suficiente, sin embargo, en las máquinas Windows Server 2008 R2, tras realizar esto me encontré que dejó de funcionar la resolución de nombres (esto se comprobaba fácilmente con un ping a un FQDN), entre otras cosas raras. Por ello, hubo que hacer alguna cosilla más:

  • Apuntar previamente la configuración de red de todas las NIC (ej: deshabilitado ipv6, ip, mascara, orden de sufijos de resolución DNS, servidores DNS, Gateway, WINS, etc.).
  • Eliminar todas las tarjetas de red desde el Device Manager, sean ocultas o no.
  • Darle a Buscar nuevo hardware.
  • Volver a configurar la Red en cada tarjeta (el IPv4, IPv6, etc.).

Tras esto, debería funcionar, sin necesidad de reiniciar.

En este entorno, no me he encontrado con configuraciones de máquinas con múltiples tarjetas de red, ni con NLBs, ni otras configuraciones, las cuales, habría que ver sí es suficiente con estos pasos, o si hay algún otro detalle adicional a tener en cuenta.

Información adicional

Por último, aprovecho para incluir algunos artículos de Microsoft que hablan del tema de los dispositivos ocultos.

Poco más por hoy. Como siempre, confío que la lectura resulte de interés.

 

 


]
[Autor: GuilleSQL]



Miembros de
Miembros de GITCA (Global IT Community Association)

Menu de Usuario
  Iniciar Sesión
  Registrarse
  Restablecer Contraseña
  Ventajas de Registrarse

Acerca de
  Contigo desde Oct 2007
  771 usuarios registrados
  86146 pageloads/mes
  Ranking Alexa 498160

Social Networks
Sigue a Portal GuilleSQL en Linkedin !!
Sigue a Portal GuilleSQL en Twitter !!



Archivo

Junio de 2017 (3)
Mayo de 2017 (1)
Marzo de 2017 (3)
Enero de 2017 (4)
Junio de 2016 (1)
Mayo de 2016 (2)
Abril de 2016 (2)
Septiembre de 2015 (2)
Agosto de 2015 (2)
Junio de 2015 (10)
Mayo de 2015 (4)
Abril de 2015 (8)
Marzo de 2015 (11)
Octubre de 2014 (3)
Septiembre de 2014 (7)
Agosto de 2014 (5)
Julio de 2014 (2)
Mayo de 2014 (4)
Abril de 2014 (4)
Marzo de 2014 (4)
Febrero de 2014 (1)
Enero de 2014 (5)
Diciembre de 2013 (8)
Noviembre de 2013 (2)
Octubre de 2013 (7)
Septiembre de 2013 (6)
Agosto de 2013 (1)
Julio de 2013 (6)
Junio de 2013 (11)
Mayo de 2013 (7)
Abril de 2013 (6)
Febrero de 2013 (5)
Enero de 2013 (7)
Diciembre de 2012 (12)
Noviembre de 2012 (13)
Octubre de 2012 (5)
Septiembre de 2012 (3)
Agosto de 2012 (6)
Julio de 2012 (4)
Junio de 2012 (1)
Mayo de 2012 (2)
Abril de 2012 (7)
Marzo de 2012 (16)
Febrero de 2012 (9)
Enero de 2012 (5)
Diciembre de 2011 (10)
Noviembre de 2011 (10)
Octubre de 2011 (4)
Septiembre de 2011 (5)
Agosto de 2011 (2)
Julio de 2011 (2)
Junio de 2011 (4)
Mayo de 2011 (2)
Abril de 2011 (6)
Marzo de 2011 (4)
Febrero de 2011 (10)
Enero de 2011 (5)
Diciembre de 2010 (6)
Noviembre de 2010 (4)
Octubre de 2010 (8)
Septiembre de 2010 (4)
Agosto de 2010 (1)
Julio de 2010 (3)
Mayo de 2010 (5)
Abril de 2010 (6)
Marzo de 2010 (8)
Febrero de 2010 (3)
Enero de 2010 (1)
Diciembre de 2009 (9)
Noviembre de 2009 (14)
Octubre de 2009 (2)
Septiembre de 2009 (8)
Agosto de 2009 (2)
Julio de 2009 (10)
Junio de 2009 (9)
Mayo de 2009 (10)
Abril de 2009 (9)
Marzo de 2009 (3)
Febrero de 2009 (2)
Enero de 2009 (3)
Noviembre de 2008 (2)
Octubre de 2008 (2)
Septiembre de 2008 (2)
Agosto de 2008 (5)
Julio de 2008 (5)
Junio de 2008 (1)
Mayo de 2008 (3)
Abril de 2008 (2)
Marzo de 2008 (2)
Febrero de 2008 (2)
Enero de 2008 (5)
Noviembre de 2007 (2)
Octubre de 2007 (2)






Copyright © 2007 GuilleSQL, todos los derechos reservados.