VMM003: Deduplicando tu Libreria de VMM con Windows Server 2012

SystemCenter2012

En este post del ciclo VMM veremos como aprovechar la característica de deduplicación de datos de Windows Server 2012 para aprovechar mejor nuestra Library de VMM

La deduplicación de datos consiste en procesos lógicos y matemáticos que nos ayudan a mejorar la utilización de nuestros discos, un ejemplo simple es si nosotros tenemos una foto de 1Mb dos veces en nuestro disco, pero en dos carpetas distintas, estas fotos estarán ocupando 2Mb, al utilizar duplicación de datos, la foto estará una sola vez en el disco, pero con dos punteros apuntando a ella desde cada carpeta, con lo cual se seguirá viendo como si estuviese dos veces pero ocupando solo 1Mb.

 

Un paso mas allá en la deduplicación de datos es no solo deduplicar los objetos enteros (como una foto repetida) sino analizar los archivos y deduplicar la información repetida dentro de estos, por ej: Si nosotros tenemos muchos documentos de Word una parte de ellos sera la misma siempre, esto es especialmente útil en nuestra librería de VMM ya que dentro de ella seguramente tendremos varios archivos .VHD o .VHDX con contenido muy similar entre ellos (como la instalación de Windows misma)

 

Los siguientes gráficos ejemplifican este tipo de deduplicación:

En el primer ejemplo vemos dos archivos sin deduplicación  como están constituidos por su metadata, donde radica el nombre y las propiedades del archivo y los bloques de datos que los componen, vemos también como tienen bloques iguales y ambos bloques están repetidos.

SinDeDup

Luego tenemos esos mismos archivos en un volumen con deduplicación de datos, vemos como están constituidos igual, pero en lugar de tener los bloques de datos repetidos estos son solo links a un área común donde radica dicha información.

ConDeDup

 

Ahora que vimos un poco de la teoría de deduplicación vamos a poner manos a la obra y realizar esto en nuestro entorno, lo primero que tenemos que hacer es abrir el Server Manager de Windows Server 2012

DataDedup_01

 

Luego nos dirigimos al  menú de Manage,  y seleccionamos Add Roles and Features.

DataDedup_02

 

Una vez iniciado el wizard continuamos dándole click en el botón next

DataDedup_03

 

Seleccionamos la opcion de instalar Role-base or feature-based
DataDedup_04 

 

Seleccionamos el servidor donde vamos a realizar la instalación.

DataDedup_05 

 

Luego nos desplazamos hasta localizar File and Storage Services , desplegamos la lista y volvemos a desplegar en File and iSCSI Services, ahí seleccionamos los roles de File Server y Data Deduplication, de forma que nos quede como en la captura de pantalla.

DataDedup_06 

 

Luego continuamos pasando por los pasos del wizard pasando de largo por la sección de Features, llegamos a la pantalla de confirmación y pulsamos install.
DataDedup_07

 

Una vez concluido el proceso, cerramos el wizard y volvemos al Server Manager

DataDedup_08

 

Vamos a la sección de File and Storage Services y seleccionamos Volumes, una vez ahí vemos los volumenes que tiene nuestro servidor, seleccionamos el volumen donde tenemos la Library y queremos activar la deduplicación  hacemos click derecho y luego seleccionamos Configure Data Deduplication.

DataDedup_09

 

Esto nos abrirá la siguiente ventana donde tildamos en “Enable data deduplication” y configuramos cuantos días tienen que pasar antes de que los archivos sean deduplicados o si deseamos excluir del proceso algunos archivos por extensión o algunas carpetas.

DataDedup_10 

 

Luego pulsamos el botón “Set Deduplication Schedule….” y en esa pantalla vamos a configurar que días y horarios queremos que corra el proceso, así como la máxima duración en horas del mismo, podemos configurar dos optimizaciones, en este ejemplo configuramos una nocturna de 6hs y una en pleno mediodía de 2hs.

DataDedup_11

 

Cuando aceptamos estas configuraciones la deduplicación quedara activa, luego cuando se ejecute el proceso de deduplicación de datos vamos a ver en nuestro Server Manager el espacio que estamos salvando con la deduplicación  pueden ver en esta imagen adjunta que el ratio de deduplicación es de un 64% y que hemos salvado 271GB al activar esta característica.DataDedup_12

Como nota final les adjunto esta captura de technet donde nos muestra un indice promedio del espacio que puede llegar a ahorrarse con esta tecnología dependiendo del tipo de archivos que usemos.

 

082712_1817_NewinWindow2

 

Post Anterior: VMM002: Instalando VMM 2012 SP1

 

VMM002: Instalando VMM 2012 SP1

SystemCenter2012

Como les contaba en el post anterior, en este vamos a ver paso a paso como instalar System Center Virtual Machine Manager 2012 SP1, vamos a realizar una instalación básica, ya que la idea no es presentar un entorno complejo. Lo primero que veremos al ejecutar el instalado es la siguiente pantalla, donde deberemos seleccionar Install SCVMMSP1_01     Una vez iniciado el instalador vamos a seleccionas las características que deseamos, como en este caso vamos a instalar un Management Server automáticamente se tilda la opción de VMM Console, en el caso que ejecutemos el instalador en un sistema operativo de escritorio, la opción de VMM Console sera la única que tengamos disponible. SCVMMSP1_02   El próximo paso es colocar los datos de la registracion del producto, en caso de no poner nada el producto se instalar en modo evaluación SCVMMSP1_03   Aceptación del contrato de licencia, tildamos el checkbox y continuamos con el proceso. SCVMMSP1_04   A continuación seleccionamos si deseamos participar en el programa de mejoras, si tildamos que si el producto recolectara información sobre el hw y software así como la utilización de las distintas funciones del producto y lo informara a Microsoft para ayudar en las decisiones sobre las características a futuro. SCVMMSP1_05   El próximo punto es donde elegimos el path de la instalación  en este ejemplo usaremos la configuración que viene por defecto. SCVMMSP1_06   Lo siguiente que debemos hacer es configurar la base de datos, en el caso que estemos haciendo la instalación en un servidor con un SQL Server instalado este nos aparecerá por defecto, Tengamos en cuenta que esta versión de VMM requiere como mínimo SQL Server 2008 R2, luego de  realizar la conexión al SQL Server nos permite seleccionar si usaremos una base nueva o una existente, esta opción sera necesario si estamos migrando de un VMM2012 pre SP1 SCVMMSP1_07 Luego deberemos seleccionar como vamos a ejecutar el servicio de VMM, en el caso de que sea un VMM con características de alta disponibilidad si o si necesitara una cuenta de dominio para ejecutar el servicio, como en este caso vamos a poner un servidor simple, lo haremos usando la Local System account. SCVMMSP1_08 En la siguiente pantalla tenemos la configuración de puertos que utilizara nuestro servidor de VMM, aconsejo cambiar el puerto que viene por defecto en la 3er opción (por defecto utiliza el 443) que en algunos extraños casos puede estar siendo usado por un webserver. En este ejemplo utilizare para la transferencia de archivos el puerto 4443SCVMMSP1_09 Una vez configurados los puertos, debemos especificar donde se radicara nuestra Librería  en la misma pondremos los templates de las VM, así como las imágenes ISO para instalar, luego de instalado el servido podemos agregar mas equipos que oficiaran de librerías  lo mismo es útil para sitios remotos donde pasamos por enlaces WAN con poco ancho de banda. SCVMMSP1_10   Una vez concluido esto nos muestra un resumen de las opciones que seleccionamos, y al pulsar el botón “install” damos comienzo a la instalación propiamente dicha.SCVMMSP1_11 Una vez finalizada la instalación y si la misma resulto exitosamente veremos la siguiente pantalla donde nos confirma el proceso y que características del producto fueron instaladas. SCVMMSP1_12 Con eso concluimos con la guía de instalación de VMM 2012 SP1, en los próximos post veremos como ir configurando diferentes características de VMM 2012 SP1, integración con HW, armado de Templates, conversiones P2V, etc

Post Anterior: VMM001: Instalando pre-requisitos para VMM 2012 SP1

Próximo Post: VMM003: Deduplicando tu Libreria de VMM con Windows Server 2012

PD: como estamos muy tecnológicos les deje un vídeo sobre una autentica robot band, la verdad es que podrían sonar mejor….

VMM001: Instalando pre-requisitos para VMM 2012 SP1

SystemCenter2012

En esta serie de posts iremos viendo paso a paso la instalación y configuración de System Center Virtual Machine Manager 2012 SP1 en una instalación básica  sin redundancia ni de SQL ni de VMM Server.

 

Para el Service Pack 1 cambian algunos pre-requisitos que no eran necesarios en la versión anterior como:

  • Windows Server 2012
  • Windows Assessment and Deployment Kit (ADK) for Windows 8
  • Microsoft SQL Server 2008 R2 SP1 (en este ejemplo vamos a usar SQL 2012)

 

En este post no vamos a ver la instalación del Sistema Operativo, así que vamos a ir directamente a la instalación del ADK, el mismo lo pueden bajar de aquí.

La instalación del ADK es un proceso simple, consta de un webinstaller que permite bajar, instalar o hacer ambas cosas juntas, en este caso lo utilice para bajar el contenido en mi pc y luego copie el webinstaller con el contenido descargado para hacer la instalación en el servidor.

ADK_01 ADK_02 ADK_03

 

Una vez instalado el ADK intalaremos el SQL Server,  antes de instalar es importante que agreguemos el Feature  .NET Framework 3.5 a nuestro Server, ya que las herramientas de administración de SQL Server lo utilizan, sino esta instalado intentara agregar el Feature durante la instalación de SQL, dando error si no están los sources de Windows Server 2012 disponibles.

 

Iniciamos la instalación de SQL Server 2012, hacemos click en Installation.

SQL2012_01

 

Luego seleccionamos New SQL Server stand-alone installation or add features to an existing installation
SQL2012_02

 

Luego se instalan las herramientas de instalación de SQL Server, lo que nos permite continuar con el proceso de instalación.
SQL2012_03

 

El instalador comprueba los requisitos del sistema y luego si no encuentra alguna incompatibilidad grave nos permite continuar con el proceso. (notese estos dos warning que se ven en la captura, se deben a que el equipo no cuenta con coneccion a Internet y que el firewall de windows esta activado y nos previene que si no configuramos el mismo no podremos conectarnos remotamente al SQL)SQL2012_04

 

Luego seleccionamos si vamos a realizar una nueva instalación de SQL o agregar características a una existente (nota, al instalar el ADK instala un SQL Express con una instancia llamada ADK que puede verse en la captura).

SQL2012_05

 

Al Seleccionar que vamos a realizar una nueva instalación  debemos seleccionar que tipo de instalación realizaremos, en este caso usaremos la primera opción con la cual elegiremos que características instalar.SQL2012_06

 

Seleccionamos: Database Engine Services, Full-Text and Semantic Extraction for Search, Management Tools – Basic y Management Tools – CompleteSQL2012_07

 

Nuevamente comprueba la compatibilidad de las opciones seleccionadasSQL2012_08

 

En la siguiente pantalla debemos elegir si usaremos la instancia por defecto o si crearemos una con un nombre especifico, en este caso crearemos una llamada SCVMM, así como podremos especificarle el disco donde estará la base.
SQL2012_09

 

Comprueba el espacio requerido en los discos.SQL2012_10

 

En esta pantalla configuramos como se van a iniciar los servicios de SQL, así como si queremos que se ejecuten con alguna cuenta de dominio.
SQL2012_11

 

el siguiente paso consta en configurar el esquema de autenticacion del SQL, para el mismo seleccionaremos el modo Mixed, y saetearemos una clave para el system administrator (sa) local del SQL, así como las cuentas de dominio que seran administradores del SQL

SQL2012_12

 

Elegimos si enviamos automáticamente los reportes de Errores a Microsoft, para que analicen posibles soluciones.
SQL2012_13

 

Comprueba la compatibilidad de las opciones seleccionadas.SQL2012_14 

 

Muestra un resumen de la configuración que elegimos para la instalación, al pulsar el botón “install” comienza con el proceso.
SQL2012_15

 

Luego de finalizar el proceso de instalación si todo concluyo correctamente deberíamos de ver una pantalla como la siguiente informando el éxito de la instalación.SQL2012_16

Con esto concluimos con la instalación de los pre-requisitos, y tenemos preparada la cancha para en el próximo post ver paso a paso la instalación del Virtual Machine Manager 2012 SP1.

Próximo Post: VMM002: Instalando VMM 2012 SP1

PD: para entretenerse luego de esto les dejo un vídeo de como podemos reciclar hardware viejo para hacer música  en este caso se trata de 8 disqueteras interpretando la música de Game of Thrones.

 

Workaround: System Center Configuration Manager 2012 Stop Windows Server 2012 Hyper-V Virtual Machine Management

Hi, a few weeks ago I installed a Windows Server 2012 in production environment, some days later I found that the “Hyper-V Virtual Machine Management” is stoped.

I start the vmms service and it’s stopped again at the next day, searching about this issue, I found this post in technet, in the post some people resolve the problems uninstalling the System Center Configuration Manager 2012 Agent from the Hyper-V Host, in my case this is not the best option, I use the Agent for a lot of activities.

Reading the Hyper-V Event Viewer I found some EentID 19040 when the service is stopping, I create a scheduled task that use this events as trigger. in the action I write a powershell line that start the vmms service again

This is not a definitive solution, just a workaround.

This are the options to create the scheduled task.

Select “Run whether user is logged or not” and use an account with rights in the server.

 

 

In the trigger tab click new adn select a event trigger.

 

 

In the event trigger use Log, Source and EventID from the previous image

 

In the Action tab click at new and select Start a program.

 

 

In program use powershell and in arguments write:

-command “sleep 30 ; start-service vmms”

 

It’s done, when the vmms service is stopped again by SCCM Agent, this task will start it again.

{How-To} desmontar todos los VirtualDVD de nuestras VM de un saque!

A menudo en la utilización de nuestras VM nos van quedando los VirtualDVD insertados con alguna imagen .iso y eso desparramado por toda nuestra infraestructura, como hacer para ir sacando estos medios virtuales de las diferentes VM, una forma seria desde VMM entrar una por una, entrar a las propiedades, Hardware Configuration, Virtual DVD drive y seleccionar no media….

Pero… cuando tenemos unas 80 VM… se torna un poco tedioso… ahí es donde vale la pena ponerse un ratito y armar algún pequeño script de PoweShell (digo esto mientras meto la mano en el bolsillo cual MacGyver buscando la Victorinox) y de un saque setear el VirtualDVD de nuestras VM en “No Media”

Lo que deberiamos de hacer es ejecutar una Ventana de PowerShell e incluir el PSSnapin de Virtual Machine Manager o directamente ejecutar “Windows PowerShell – Virtual Machine Manager”

luego ejecutar los siguientes cmdlets

Get-VM | where { $_.VMHost -like “patron”} | ForEach-Object {Get-VirtualDVDDrive  -VM $_.Name | Set-VirtualDVDDrive -NoMedia}

Vamos a analizarlo parte por parte para ver su funcionamiento, el primer cmdlet

Get-VM | where { $_.VMhost -kile “patron”} 

lo que hace es seleccionar todas las objetos VM que esten en los hosts (Hyper-V) cuyo nombre coincida con el patron, por ejemplo si nuestra nombenclatura para servidores de Hyper-V es que empiecen con el nombre SRVHyperV deberiamos poner: Get-VM | where { $_.VMhost -kile “SRVHyperV*”}

la salida de este cmdlet la redrigimos con pipe ( | ) hacia el siguiente cmdlet en este caso

ForEach-Object{}

este cmdlet lo que hace es para cada uno de los objetos (parametro que recivido desde el cmdlet anterior) ejecuta lo que tiene entre {} en el caso lo que se esta ejecutando es:

Get-VirtualDVDDrive  -VM $_.Name | Set-VirtualDVDDrive -NoMedia

lo cual tambien se divide en dos cmdlets

Get-VirtualDVDDrive  -VM $_.Name

el cual obtiene el objeto del VirtualDVDDrive del la VM haciendo referencia a esta con la variable $_ (variable con la que se obtiene el objeto desde el que se ha llamado a este) y la propiedad Name de dicho objeto. y luego redirigiendo con pipe el objeto VirtualDVDDrive hacia el siguiente cmdlet

Set-VirtualDVDDrive -NoMedia

Este cmdlet lo que realiza es setear el objeto VirtualDVDDrive, pasandole el modificador -NoMedia le indicamos que lo que queremos realizar es que deje configurado el Virtual DVD Drive del Servidor como si no tubiese ningun medio insertado.

En la siguiente imagen pueden ver como quedaría el cmdlet completo.

Todo esto puede resultar abrumador a primera vista, pero con el uso produce un gran alivio, ya que nos permite realizar en pocos pasos tareas que de otra forma serian muy monótonas.