Archivo

Archivo para la categoría ‘Hyper-V Windows 2K12’

Roll-up de Hyper-V sobre W2K12

jueves, 22 de agosto de 2013 Sin comentarios

En entornos de hyper-v bajo Windows 2012, con y sin CSV, existen algunas revisiones fundamentales de roll-up.

Por ejemplo al realizar Live Migration, en ocasiones se pueden producir un bugcheck D1 DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1), la recomendación de Microsoft para resolver el problema, pasa por instalar el roll-up KB2855336, publicado en julio de 2013, fijaos que destaco en rojo roll-up, por que el problema surge al instalar la versión original del KB2855336, y ahora tras aparecer el problema se ha vuelto a generar el paquete y se ha sacado un fix nuevo con el paquete corregido. Aquí os adjunto varios KBs imprescindibles, junto con las notas técnicas y el acceso a la descarga del roll-up;

1.- KB2855336

Éste KB, incluye otros dos KBs (2862073 y 2866029) 0x000000 D1″ Stop error when you perform a live migration of a virtual machine on a Windows Server 2012-based cluster;

http://support.microsoft.com/kb/2866029/en-us

The issue is fixed in the reoffered update rollup 2855336;

http://support.microsoft.com/kb/2855336/

2.- KB2870270

Éste roll-up hotfix reemplaza al KB2848344.

El problema que resuelve este fix viene de hace unos meses en los que se detectó en cluster w2k12 con CSV event Id  con 5120 STATUS_IO_TIMEOUT y uno de los workaround era deshabilitar TRIM y ODX

El propósito de este hotfix es la corrección para TRIM y ODX. Con esta revisión del roll-up, ya no es necesario desactivar TRIM o ODX

Muchos sistemas de almacenamiento ofrecen la posibilidad de habilitar ODX, para que desde los host de Windows 2012 podamos hacer Live Migration, la VM se copia por intercambio de token, con SHARED NOTHING LIVE MIGRATION, esto significa que las máquinas físicas no deben compartir nada más que una conexión de red en donde las máquinas virtuales a migrar, se mueven en vivo de un chasis a otro con todo con las aplicaciones y sesiones que están ejecutando al momento de la migración. Con ODX las VMs se migran en vivo -por la red- al almacenamiento local, del volumen local 1 al volumen local 2, siempre y cuando la cabina, tenga el firmware para ODX y si ese es el caso;

Update that improves cloud service provider resiliency in Windows Server 2012;

http://support.microsoft.com/kb/2870270

3.- KB2869923

Hyper-V, Clustering y DPM de HP. Este fix es crítico para cualquier implementación de clústeres de Hyper-V que está siendo respaldada por el software de backup de HP, DPM (Data Protector Manager)
Durante el proceso de copia de seguridad de un volumen CSV puede hacer que se detengan algunos recursos;

http://support.microsoft.com/kb/2869923

4.- KB2838043

Éste es otro fix crítico, que si bien no es tan nuevo, como los dos anteriores, es un alto generador de llamada CSS y debe ser conocido e implementado.
No se puede acceder a un recurso que está alojada en un equipo con Windows 8 o Windows Server 2012 con CSV

http://support.microsoft.com/kb/2838043

En resumidas cuentas, existe un solo lugar que os invito a añadir a vuestros site favoritos donde encontrar las revisiones recomendadas para entornos de virtualización Windows 2012;
http://support.microsoft.com/kb/2784261
Categories: Hyper-V Windows 2K12 Tags:

SR-IOV para Hyper-V en W2K12

martes, 16 de abril de 2013 Sin comentarios

Hyper-V sobre Windows Server 2012 ó en su versión free de Hyper-V server, implementa una de las mejoras para los nuevos Virtual Switch y sus características avanzadas, siempre y cuando tanto el hardware de red como el sistema operativo e hypervisor lo ofrezcan.

Es SR-IOV algo muy útil para máquinas virtuales con mucha E/S de red.

¿En qué consiste?

Básicamente en asignarle una tarjeta de red física a la máquina virtual sin que esta pase por el hypervisor, una especie de pass-through para las nics de red de tu sistema servidor.

sriov2

Aquí podemos ver como una máquina virtual accede de forma directa a la nic del servidor mediante SR-IOV sin pasar por Hyper-V.

Requisitos Hardware

La tarjeta de red debe de soporta SR-IOV.

PCI-SIG SR-IOV requiere el soporte del Sistema Operativo y plataforma de hardware. Algunos sistemas soporte SR-IOV a través algunas ranuras PCI Express, pero no en algunas otras ranuras. Se debe consultar la documentación del fabricante para SR-IOV en el sistema.(Al final dejo varias tarjetas de red que soportan SR-IOV)

Requisitos Software

  • Entorno Microsoft Hyper-V sobre W2K12
  • VMware vSphere 5.1
  • Xen
  • KVM

Ventajas

  • Reduce el uso de CPU hasta en un 50%
  • Menor latencia de red, hasta 50%
  • Mayor rendimiento de red, hasta 30%

¿Dónde se implementa?

iov

 

Tarjetas de Red que soportan SR-IOV

  • Familia Intel® Controlador Ethernet X540
    • Controlador Ethernet Intel® X540-AT1
    • Controladora Intel® Ethernet X540-AT2
    • Intel 10GbE X520, 1GbE 82576, and 1GbE I350 controllers
  • Adaptador de redes convergentes sobre Ethernet Intel® X540 familia
    • Adaptador de redes convergentes sobre Ethernet Intel® X540-T1
    • Adaptador de redes convergentes sobre Ethernet Intel® X540-T2
  • Controlador Intel® 10 Gigabit Ethernet 82599 Familia
    • Intel® 82599EB 10 Gigabit Ethernet Controlador Ethernet
    • Ethernet Intel® 82599ES 10 Gigabit Ethernet Controller
    • Ethernet Intel® 82599EN 10 Gigabit Ethernet
  • Adaptador de redes convergentes sobre Ethernet Intel® X520 familia
    • Adaptador Intel® Ethernet X520-DA2 para servidor
    • Adaptador Intel® Ethernet X520-SR1 para servidor
    • Adaptador Intel® Ethernet X520-SR2 para servidor
    • Adaptador Intel® Ethernet X520-LR1 para servidor
    • Adaptador de servidor Intel® Ethernet X520-T2
  • Controlador Ethernet Intel® Familia I350
    • Controlador Ethernet Intel® I350-AM4
    • Controlador Ethernet Intel® I350-AM2
    • Controlador Ethernet Intel® I350-BT2
  • Adaptador de servidor Intel® Ethernet I350 familia
    • Adaptador de servidor Intel® Ethernet I350-T2
    • Adaptador de servidor Intel® Ethernet I350-T4
    • Adaptador de servidor Intel® Ethernet I350-F2
    • Adaptador de servidor Intel® Ethernet I350-F4
  • Controladora Ethernet Gigabit Intel® 82576 Familia
    • Controlador Ethernet Gigabit Intel® 82576EB
    • Controlador Ethernet Gigabit Intel® 82576NS
  • Intel® Gigabit ET/EF Familia de adaptadores para servidor
    • Adaptador Intel® Gigabit ET de doble puerto para servidor
    • Adaptador Intel® Gigabit EF de doble puerto para servidor
    • Intel® Gigabit ET2 de cuatro puertos para servidor Adaptador
  • Otros
    • Broadcom 10GbE 57712 controller
    • Emulex 10GbE OneConnect controller

Finalmente os adjunto un interesante enlace que explica como un controlador Ethernet de Intel que soporta SR-IOV da apoyo a un entorno virtualizado.

http://www.youtube.com/watch?v=hRHsk8Nycdg

Categories: Hyper-V Windows 2K12 Tags:

Configurar Live Migration en máquinas virtuales no organizadas en CSV (Cluster Shared Volumen)

viernes, 5 de abril de 2013 Sin comentarios

Vamos a configurar los servidores de origen y destino para que envíen y reciban migraciones en vivo sobre la versión de hyper-v de Windows 2012.

Al configurar los anfitriones, debemos elegir si vamos a permitir Live Migration (en adelante LM) en cualquier red disponible o solamente en redes específicas. Por motivos de seguridad es recomendado seleccionar redes específicas para pasar el tráfico de LM y si vamos sobrados de NICs, hacerlo utilizando el propio Team de Windows 2012.

NICs

Como configurar los anfitriones de origen y destino para la migración en vivo

1.- Abrir el Administrador de Hyper-V

2.- Desde el panel de navegación, seleccionamos uno de los servidores que vamos a configurar para LM.

3.- En el panel Acción, clic en Configuración de Hyper-V.

4.- En el cuadro de diálogo Configuración de Hyper-V, haga clic en Migraciones en vivo.

5.- En el panel Migraciones en vivo, activemos Habilitar migraciones en vivo entrantes y salientes.

6.- En Protocolo de autenticación, seleccione Kerberos si configuró la delegación restringida, que será en la inmensa mayoría de los casos.

LM1

7.- En Migraciones en vivo simultáneas, el valor predeterminado es 2, podemos modificarlo de acuerdo a nuestras necesidades.

8.- En Migraciones en vivo entrantes, y si disponemos de suficientes NICs, podemos usar conexiones de red específicas para aceptar tráfico de LM. Clic en Agregar para escribir la información de la dirección IP, sino, haga clic en Usar cualquier red disponible para la migración en vivo. Haga clic en Aceptar y finalmente debemos seleccione otro servidor en el Administrador de Hyper-V para repetir la misma operativa.

Si lo queremos automatizar vía PowerShell

Escriba cada cmdlet Enable-VMMigration, Set-VMMigrationNetwork y Set-VMHost dependiendo del modo en que quiera configurar el host. Los siguientes comandos de ejemplo configuran la LM en el host local y permiten tráfico de migración entrante solamente en la red especificada y especifican Kerberos como el protocolo de autenticación. Cada línea representa un comando separado.

PS C:\> Enable-VMMigration
PS C:\> Set-VMMigrationNetwork 192.168.81.32
PS C:\> Set-VMHost –VirtualMachineMigrationAuthenticationType Kerberos

Si queremos usar Windows PowerShell para mover una máquina virtual en ejecución

El cmdlet es Move-VM. El siguiente ejemplo mueve una máquina virtual llamada LMABB a un servidor de destino llamado Anfitrion02 y mueve los VDHX de la máquina virtual y otros archivos (paginación inteligente e instantáneas) al directorio D:\LMABB en el servidor de destino.

PS C:\> Move-VM LMABB Anfitrion02 –IncludeStorage –DestinationStoragePath D:\LMABB

Categories: Hyper-V Windows 2K12 Tags:

Hyper-V R2 con el Teaming de HP y VirtualConnect

miércoles, 7 de noviembre de 2012 2 comentarios

El asunto del NIC Teaming en Hyper-V es un tema recurrente, máxime si hemos adquirido en los últimos años servidores tipo blade, donde podemos encontrarnos hasta con diez NICs, y tenemos el impulso de utilicemos todas, por esa máxima de como repartir las NICs en un CSV de hyper-v, «mínimo 2, máximo… y mejor Gigabit»  ¿Como se monta, cómo se configura, cuándo esta o no recomendado, lo soporta Microsoft?.

Por qué necesitamos el Teaming

Estas son las razones por las que se suele plantear la necesidad de establecer Teams de tarjetas de red:

  • Por si falla la una NIC física. Hay quien incluso quiere establecer Teams entre NIC de diferentes fabricantes para mayor tolerancia a fallos. Mi opinión al respecto es que, por esta razón, no merece la pena. Si falla físicamente una NIC es muy posible que el Team no te arregle los problemas colaterales, y con mucha probabilidad, los posibles problemas en drivers/firmware etc. en lugar de ser eliminados por el software de teaming, se verán amplificados. Además la tendencia en las NICs para servidores es que adaptadores multipuerto, que se presentan como interfaces independientes de cara al sistema operativo. La probabilidad de que un hipotético fallo afecte a un único puerto es aún más baja. Si además los puertos de las diferentes NICs están enchufadas al mismo switch de red no ganaremos ningún tipo de tolerancia ante un posible problema ajeno a las propias tarjetas. En estas condiciones, bajo mi punto de vista, el teaming supone mas riesgo que beneficio real.
  • Por si falla el camino: Esto incluye los elementos de red a los que las NICs están conectadas, en particular cables y switches. No queremos confiar en un único latiguillo de red, ni en un único switch de red. Es más, queremos tener la posibilidad de dar mantenimiento a dichos elementos sin afectar a la conectividad de las cargas de trabajo. Por ejemplo, reemplazarlos o actualizar firmwares y versiones de sistema operativo de los switches. Teams entre puertos de diferentes interfaces que conectan a diferentes elementos de red es lo más adecuado para entornos en los que la tolerancia a fallos es un requisito.
  • Agregación de ancho de banda y balanceo de carga. En el mundo de las interfaces a 1GB esta ha sido la forma de aumentar el ancho de banda para cargas de trabajo que así lo requieran, como podría ser el caso de las NICs correspondientes a un switch virtual. Sin embargo la tendencia es ir hacia interfaces multipuerto de 10Gb, que pueden virtualizarse o particionarse a voluntad, obteniéndose anchos de banda personalizados.

En los documentos que se enlazan más abajo encontrareis descripciones mucho más puristas de todo esto. Simplemente se trata de dejar claro que el Teaming es una pieza que puede ser un requisito fundamental en muchos escenarios.

Soportabilidad

La soportabilidad del NIC Teaming por parte de Microsoft esta muy bien resumida en estos dos artículos

Since Network Adapter Teaming is only provided by Hardware Vendors, Microsoft does not provide any support for this technology thru Microsoft Product Support Services. As a result, Microsoft may ask that you temporarily disable or remove Network Adapter Teaming software when troubleshooting issues where the teaming software is suspect.         If the problem is resolved by the removal of Network Adapter Teaming software, then further assistance must be obtained thru the Hardware Vendor.

  • Network adapter teaming and server clustering: http://support.microsoft.com/kb/254101/en-us
    In Windows Server 2008 and Windows Server 2008 R2, there are no restrictions that are associated with NIC Teaming and the Failover Clustering feature. In Windows Server 2008, the new Microsoft Failover Cluster Virtual Adapter is compatible with NIC Teaming and allows it to be used on any network interface in a Failover Cluster.

Me he permitido subrayar las partes más relevantes. La pila de red de Windows no implementa los mecanismos de agregación de ancho de banda y tolerancia a fallos mencionadas, es necesario utilizar el software especifico del fabricante de la tarjeta o de los propios servidores para introducirlos por encima de los drives de las tarjetas de red. El Teaming está soportado para Windows y por tanto para Hyper-V.

Configuración

En Hyper-V, la pila de red y la pila de almacenamiento se configuran en la partición padre. Por tanto, la configuración del Teaming de red, al igual que el multipath en el caso del almacenamiento, se gestionan exactamente igual que en un servidor físico. En la grandísima mayoría de las situaciones nos encontraremos con NICs basadas en chipset de Intel o Broadcom. Con la salvedad de HP, que implementa su propia herramienta de creación y gestión de los teams, la mayoría del resto de fabricantes se basan en las herramientas que proveen directamente los propios fabricantes del chipset.

Estos son los principales enlaces para instalar y configurar los Teams de algunos fabricantes, mi experiencia se basa en HP y en su solución de Virtual Connect:

HP Network Configuration Utility:

  • Using HP ProLiant Network Teaming Software with Microsoft® Windows® Server 2008 Hyper-V or with Microsoft® Windows® Server 2008 R2 Hyper-V:

http://h20000.www2.hp.com/bc/docs/support/SupportManual/c01663264/c01663264.pdf

http://www.hp.com/sbso/bus_protect/teaming.pdf

Intel ProSet / ANS:

Broadcom BACS / BASP:

Cuando tiene sentido el Teaming en entornos de Hyper-V

Nos plantearemos el uso de NIC Teaming en Hyper-V en aquellas redes en las que no se implementen ya mecanismos de tolerancia a fallos por otra vía y en las que podamos necesitar agregar ancho de banda o implementar políticas de balanceo, en función de lo que hemos mencionado más arriba.

  • iSCSI. Si nuestro almacenamiento es iSCSI y queremos utilizar más de una tarjeta, lo adecuado es usar los mecanismos de multipathing propios del sistema de almacenamiento. Sin Teaming
  • Red de HeartBeat del cluster: En W2K8R2 podemos especificar diferentes redes para transportar el heartbeat, y los requerimientos de ancho de banda son mínimos. Sin necesidad de Teaming
  • Red de Live Migration: Requerimos alto ancho de banda, solamente cuando se realicen Live Migrations. Se pueden especificar diferentes redes para ello, con lo que tenemos tolerancia a fallos. Puede justificarse Teaming
  • Red de CSVs: Es la red con menor métrica del cluster. Puede tener altos consumos de ancho de banda de manera puntual. Puede justificarse Teaming
  • Red Pública de gestión: Necesitamos tolerancia a fallos, y un ancho de banda razonable para la administración del servidor. Puede ser necesario Teaming
  • Virtual Switches: Requerimos tanto altos anchos de banda como tolerancia a fallos . Puede ser necesario Teaming pero no siempre funciona.

En el siguiente documento está la recomendación oficial para hosts con cuatro o menos interfaces de red.

Sin embargo, los escenarios pueden complicarse si necesitamos dedicar ciertas NICs a dar servicio en determinadas VLANs. El software de Teaming puede crear NICs virtuales sobre las interfaces físicas reales, las cuales a su vez pueden convertirse en Switches virtuales, pudiéndose sacar además vNICs virtuales para la partición padre. Todo esto es factible y funciona. Pero conviene sentarse a pensar si realmente tiene sentido, y recordar que lo sencillo funciona y se opera mejor que lo complicado.

 Como ya he mencionado, mi experiencia viene del empleo de hardware HP, estos son dos documentos básicos;

Mis comentarios basados en mi experiencia vs resultados:

  • Activa siempre el role de Hyper-V antes de instalar el software de Teaming (NCU). Si este consejo llega tarde, simplemente renombra cpqteam.dll (http://support.microsoft.com/kb/950792)
  • Si utilizas Server Core, ejecuta HPTeam.cpl o CPQTeam.cpl (versiones antiguas) para configurar el Teaming cómodamente mediante interfaz gráfica.
  • A medida que se genera el Team y se van agregando VLANs, empiezan a proliferar NICs en el sistema. Es mas que recomendable ir renombrándolas para tener control en cada momento que es cada cosa (puertos físicos que forman el Team, NICs asociadas a cada VLAN y que conforman virtual switches, NICs virtuales que se generan en Hyper-V para la partición padre y conectadas a los switches virtuales, etc.)
  • Existe una manera mucho mas sencilla de hacer las cosas. Que sea solamente el Virtual Switch de Hyper-V quien haga el VLAN Tagging, para lo cual ni en el Team ni en Virtual Connect deberemos definir estas opciones (Para poder hacer eso, el dominio de Virtual Connect debe estar en modo “VLAN Tunneling”)
  • El Proliant Support Pack, SmartStart, CD de Firmware, etc. son buenos compañeros de viaje. El comportamiento de todo esto puede ser muy dependiente de versiones de firmware, drivers, software y por supuesto siempre últimas versiones de MPIO de Microsoft.
  • Por último, mi recomendación sobre como dedicar las NICs de tu entorno cluster (CSV) para hyper-v;
    • 2 NIC en Team para Gestión. IMPORTANTE, en modo TLB con Destination MAC Address y si no utilizas entradas ISATAP o IPV6 deshabilita todo lo alusivo a ello.
    • 1 NIC para Virtual Switch
    • 1 NIC para Heartbeat
    • 1 NIC para Live Migration

Y si utilizas los swith de Virtual Connect de HP, reparte según necesidad el ancho de banda de 10 GB,

 

Categories: Hyper-V Windows 2K12 Tags:

Poster de Arquitectura Windows Server 2012 Hyper-V

miércoles, 31 de octubre de 2012 Sin comentarios

Interesante poster Microsoft Windows Server 2012 Hyper-V, acompañado de unos documentos explicativos de los componentes de Failover Clustering e Hyper-V Réplica en el siguiente enlace;

Categories: Hyper-V Windows 2K12 Tags:

Una Best Pratice para Hyper-V R2

lunes, 29 de octubre de 2012 Sin comentarios

TCP Chimney es una tecnología de red que ayuda a transferir la carga de trabajo desde la CPU a un adaptador de red durante la transferencia de los datos de red. En W2K8 y W2K8R2, la descarga de TCP Chimney permite que el subsistema de red de Windows descargue el procesamiento de una conexión TCP/IP en un adaptador de red que incluye una compatibilidad especial con dicho procesamiento.

Es una tecnología utilizada principalmente en interfazes de red de alta velocidad, del tipo Gigabit Ethernet, donde la sobrecarga de procesamiento de la pila de red se convierte en algo a tener muy en cuanta.

Sin embargo, en nuestro entorno Hyper-V de Microsoft al ejecutar máquinas virtuales, ningún sistema operativo se va a aprovechar de la descarga de TCP Chimney, razón por la cual se recomienda deshabilitarlo.

  • Desde linea de comandos ejecutaremos netsh int tcp show global, que nos permitirá determinar el estado actual de Descarga de TCP Chimney.
  • netsh int tcp set global RSS=Disabled
  • netsh int tcp set global chimney=Disabled
  • netsh int tcp set global autotuninglevel=Disabled
  • netsh int tcp set global congestionprovider=None
  • netsh int ip set global taskoffload=Disabled
  • netsh int tcp set global timestamps=Disabled

Terminamos ejecutando de nuevo, netsh int tcp show global y veremos la diferencia.

Categories: Hyper-V Windows 2K12 Tags: