Consolidación de discos VMware & Veeam

De vez en cuando los backups que realiza Veeam dejan los discos en estado de consolidación. Esto se debe a que la máquina de Veeam se deja el disco pillado y configurado en su perfil. Esta medida bloquea el disco y no podremos consolidar la máquina afectada.
Para solventar esta incidencia, primero eliminaremos todos los snapshots si existieran de la máquina en concreto. Una vez realizado esto intentaremos consolidar, si nos da error por bloqueo, quiere decir, seguramente que Veeam tenga montado el disco. En este caso nos iremos a Veeam y quitaremos el disco que no sea del Veeam.

OJO! al darle a la x al disco solo lo removemos pero no lo eliminamos, nos saldrá un mensaje que si lo clicamos ya lo borraríamos, no le daremos a esto.

Liberar espacio en particion /Boot/

Este articulo esta derivado para Centos, entiendo que para el resto de sistemas es parecido o muy similar.
Nos situamos en el directorio boot, >cd /boot, y lanzamos un dh -h /boot para saber lo que queda libre en nuestra partición, con el comando uname -r sabremos la versión actual que esta usando el sistema, y así sabremos cuales podremos borrar.

Después de esto lanzamos un ls -l o ll para ver cuantas versiones de sistema tiene guardadas.

Una vez hecho el análisis básico, procederemos a borrar todos los archivos que comiencen por vmlinuz, que no sean la versión que nos devuelve el uname, utilizaremos el siguiente comando
sudo yum remove kernel-3.10.0-327.13.1.el7.x86_64

Consolidar máquinas bloqueadas por Dataprotector

Ocasionalmente, data protector, a través del servidor de operaciones bloquea los discos de las máquinas, esto implica que la máquinas no pueden consolidar. (Operaciones se monta el disco duro de la máquina para copiarlo y una vez finalizado debería de liberarlo para poder finalizar la consolidación, pero si se queda pillado tenemos que intervenir manualmente)
Para remover el disco, ojo con esto, nos iremos a editar la máquina virtual, y le daremos a remover el disco que no le corresponde (dentro de operaciones), tendremos dos opciones remover solo y remover y borrar, le daremos a remover solo.
Una vez finalizado este proceso ya podremos consolidar los discos de la máquina afectada.

Tarjetas de red Ubuntu Server 10.04

Cuando clonamos máquinas ubuntu server 10.04 (solo quedan en principio las de lanza), se ha dado una incidencia en la cual el adaptador de red desaparecía de la configuración. Dejo unos pasos básicos que ayudan a detectar el adaptador y asi poder re configurar correctamente

  • lspci > /home/user/hardware.txt, con esto sacamos un listado del hardware reconocido por la máquina, simplemente buscaremos a ver si ha identificado la tarjeta de red
  • ip addr, este comando nos mostrará los nombres de los adaptadores activos, en esta incidencia teníamos configurado el Eth0 o 1 y la máquina no lo tenia activo por algún motivo, con lo cual no funcionaba. En este caso concreto la máquina habia renombrado el adaptador a Eth2
  • Una vez hemos detectado el adaptador «Eth2» nos mentemos en interfaces y re configuramos
  • Reiniciamos el servicio de red, sudo /etc/init.d/networking restart
  • Seguidamente tumbamos el adaptador de red y lo levantamos nuevamente
    • sudo ifdown eth2
    • sudo ifup eth2

Restaurar un BDO de Exchange con DataProtector

Nos iremos al servidor de operaciones y abrimos el cliente de Dataprotector, dentro de este nos situamos en la pestaña de Recovery

Recovery, es donde procederemos a seleccionar lo que queremos restaurar, en este caso estamos restaurando DB´s concretas de Exchange, porque queremos recuperar un buzón concreto.
Seleccionaremos la base de datos concreta donde se ubica el buzón y nos saldrá una venta emergente.

En esta ventada tendremos que dejarla tal cual la pongo en la foto:

Si nos fijamos detalladamente, lo que le estamos diciendo al DataStore es lo siguiente, Restaurar en una ubicación temporal, la backup versión hemos seleccionado la 2015, muy importante seleccionar «Perform database recovery» y también importante ya que lo va a restaurar dentro del Exchange, seleccionar H:\Recovery, es una unidad donde se ponen los logs y suele estar vacía, tiene aprox 500 Gb. Una vez cumplimentado todo esto, le damos a ok, y la pantalla donde estamos habrá cambiado de «estado».

Procederemos a darle al botón de restore, nos saldrá otra ventana, y en esta no tenemos que modificar ni hacer nada, le daremos a Next y Finish, esto iniciará el proceso de restauración de la base de datos en el servidor de Exchange.

Una vez finalizado esto, tendremos que realizar varios procesos, todos ellos desde la powershell de Exchange.
Lo primero que realizaremos será un esseutilya que la base de datos estará en dirty shutdown, para solventar esto realizaremos un Cleam Shutdown, utilizaremos el siguiente comando

Seguidamente, verificamos el estado de la base de datos.

Montamos la base de datos,:

New-MailboxDatabase -Recovery _Plantas_2_4_6bck -Server srvmail.pp.es -EdbFilePath h:\recover_Plantas_2_4_6.edb -LogFolderPath h:\recover

Buscamos el id del buzón, esto servirá para poder restaurar el buzón concreto que necesitamos

Get-MailboxDatabase «_Plantas_2_4_6bck» | Get-MailboxStatistics | Sort displayname -desc | ft displayname, totalitemsize, itemcount, identity
Nos saldrá algo como lo siguiente, necesitamos el identity largo

Una vez hemos localizado el ID, tenemos que crear un usuario y un buzón target para poder restaurar sobre el la nueva información, este paso lo haremos directamente en mail.pp.es como si estuvieramos creando una cuenta de correo nueva.
Una vez generado este paso, ya podemos montar el backup sobre la cuenta.

New-MailboxRestoreRequest -SourceDatabase _Plantas_2_4_6bck -SourceStoreMailbox 9960cf46-0ac5-4aa0-8ff5-782a6d7466e0 -TargetMailbox jbarrerobck -AllowLegacyDNMismatch


Get-MailBoxRestoreRequest para ver el estado de restauración del buzón.
Para generar un pst directamente de este buzón ir a esta entrada

Restaurar una VM desde los punteros de la cabina NetApp

Ojo, esta documentación es para casos críticos de perdida total de una VM, esta restauración se hace directamente desde la cabina y no desde el software de Backup.
Una vez hemos llegado a la situación en que la máquina por cualquier razón no funciona, no arranca, ha perdido datos, tiraremos teóricamente del software de backup, pero este método también es válido y funciona bastante rápido.
Lo primero que tenemos que hacer es irnos a la cabina y buscar el volumen donde esta instalado o ubicada la virtual machine que ha muerto.
La teoría, en este entorno y por buenas prácticas, nos encontraremos volúmenes por proyectos, y esto segmenta mucho el proceso a la hora de restaurar. 

Los volúmenes están todos clonados, el volumen name_mirror es una copia del volumen principal que se guarda en la segunda cabina, todos los volúmenes están agregados en todos los servidores, esto es importante ya que para crear un HA es necesario que todos los nodos tengan accesibles todos los datastores.
Una vez localizado el volumen ya nos podemos ir a la cabina, a través de la dirección web de la cabina principal del cluster,
Dentro de la cabina Storage nos iremos a la sección de Storage, y dentro de Storage buscaremos volúmenes

En esta página le daremos al + del volumen en cuestión que queremos usar para recuperar la virtual machine, dentro de las especificaciones buscaremos abajo a la derecha «Show more details»

En la siguiente pantalla nos saldrá de manera detallada toda la información del volumen, arriba a la derecha tenemos el botón «Actions», le daremos ahí, seguidamente clone>create>volumen, con esta operación lo que hacemos es coger todo el volumen entero y prepararlo para restaurarlo con un snapshot concreto.

Nos saldrá una pantalla con las configuraciones básicas que queremos aplicar a la clonación del volumen, aqui definiremos 3 parametros esenciales:

  • El nombre, pondremos el nombre del volumen_clone, ej. si el volumen se llama gestión, el clonado lo podemos llamar gestión_clone
  • Thin Provisioning chequeado, esto hará que aun que el volumen tenga asignado 2tb solo ocupe lo que tenga usado en ese momento
  • Use an existing Snapshot copy, esto nos permite elegir (dependemos de la programación que tenga dicho volumen) el puntero que necesitamos de ese volumen, por norma dependiendo de que volumen sea, encontraremos por horas, cada 8 horas y algún día

Una vez clonado, tenemos que prepara el volumen para ofrecérselo a VMware por NFS (red), en este caso nos iremos debajo de volúmenes a NameSpace, cuando se monta un volumen nuevo la Netapp detecta que no esta montado y al darle a mount montaré directamente este nuevo volumen.
Una vez llegados a este paso nos iremos a Vmware, seleccionaremos un servidor y le montaremos el volumen, para esto es conveniente mirar los datos del volumen «origen» que hemos clonado, ya que tienen una ip asignada para ser localizados por la red. Estas ips las podemos encontrar dentro de la web de la cabina en Network Interfaces

No obstante, también lo podemos ver en VMware, ya que el volumen que clonemos se asignará automáticamente al mismo SVM en el que está el volumen original, véase esta foto de los volúmenes en VMware

Para agregar el nuevo volumen le daremos a Add Storage, seleccionaremos Network File System (NFS), todo esto dentro de Home, Inventory, Datastores, nota, esto en el web client puede cambiar pero mas menos será así.

Una vez realizada la selección de NFS, pondremos los datos básicos, leer mas arriba de este documento para saber de donde sacarlos.

El proceso final de restauración requiere que la máquina virtual estropeada se pare por completo, y poder finalizar el proceso. (En el ejemplo que he realizado por primera vez, sucedió que el Servidor Installation Server de Data Protector explotó y se restauró de la siguiente manera)
Paso de restauración una vez se tiene disponible el volumen con las máquinas:

  • Lo primero de todo es eliminar la virtual machine actual del inventario (ojo no la eliminaremos aun del Datastore, solo del listado de máquinas virtuales)
  • Seguidamente hacemos un relocate, para realizar un relocate nos iremos a la carpeta de la virtual machine restaurada y navegaremos dentro de ella en busca del archivo vmx, le daremos al botón de la derecha y seguidamente Add to Inventory
  • Con este paso lo que habremos conseguido es que nuestro Vcenter vea la máquina restaurada y pueda levantar en un estado anterior, una vez agregada, directamente le daremos al play para que levante. (Recordar que la máquina rota o a restaurar tiene que estar apagada)
  • Una vez levantada la máquina, verificamos que todo esta ok, nota, en servicios críticos donde hay perdidas de datos estas intervenciones son mas complicadas, hay que tener muy en cuenta cuando se produce el error y a finar con los horarios.
  • Después de realizar todas las verificaciones pertinentes y si vemos que todo funciona correctamente y que la máquina rota no esta interactuando con nada, eliminaremos desde el Datastore la máquina averiada, el objetivo de esto es liberar del volumen en cuestión el problema y poder mover la máquina que funciona a este datastore para poder desmontar el clonado .
  • Una vez eliminado, nuestra licencia nos permite mover en caliente la máquina entre datastores, procedemos a mover la máquina restaurada del datastore clonado, al datastore de producción, con este paso ya tenemos liberado el volumen clonado para poder desmontarlo. (Es muy importante tener claro que no hay dependencias y que hacemos bien estos pasos, ya que un error aquí puede producir la pérdida de la máquina y nos tocaría realizar otra vez todo el proceso)
  • En este punto, tenemos acabado el trabajo de recuperación, a partir de ahora realizaremos los pasos a la inversa para realizar la segunda fase, se trata de desmontar y eliminar el volumen clonado.

Para proceder a desmontar el volumen, tendremos que estar en la sección de Home, Inventory, Datastores. Una vez aquí buscaremos el datastore clonado y con el botón de la derecha encima le daremos a unmount, con esto desvincularemos Vmware del volumen que aun sigue existiendo en la Netapp.

Ahora iremos a la página de configuración de nuestra cabina de Netapp, en concreto a la parte de NameSpaces, donde procederemos a desmontar la conexión creada en particular para el volumen creado, recordemos que se crea en el mismo SVM que el original.
Seleccionamos el Path que queremos desmontar, y seguidamente le damos a desmontar.

Después de esto nos vamos a la sección de volúmenes dentro de la cabina, en la cual es conveniente seleccionar el SVM correspondiente o le podremos dar a ver todos los volúmenes, una vez allí seleccionamos el volumen clonado que queremos desmontar, y seguidamente le daremos a Action->Change Status to->Offline.

Cuando el volumen pasa a estado Offline, se pondrá rojo en vez de verde, esto significa que ya podemos proceder a su eliminación total de la cabina

Le damos clic con el botón principal y seguidamente arriba veremos que ya tenemos disponible el botón de delete, le damos a borrar y confirmamos borrado, con esto habremos completado el proceso completo de restauración de un Snapshot desde la cabina.

Licenciamiento ROK VM

Las licencias ROK, son licencias de proveedor (Dell, HP, IBM, etc) que suelen ser mas baratas que las normales, estas licencias el requisito imprescindible que tienen es que si tienes un servidor del y compras una licencia ROK Windows 2012 Server R2 Standar, esta licencia tiene que consultar la BIOS del servidor y verificar que el servidor es Dell.
Cuando montamos una virtual machine a la cual queremos asignar una licencia de este tipo, tenemos que editar el archivo vmx (este archivo contiene las configuraciones básicas de la máquina virtual adjunto contenido de uno de estos archivos, en este caso es la VM DCPP03, el domain controler de la intranet) este archivo lo tendremos que editar directamente en la carpeta que se genera para la virtual machine y añadir esta linea.

smbios.ReflectHost = "true"
.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "11"
vmci0.present = "TRUE"
floppy0.present = "FALSE"
svga.vramSize = "8388608"
memSize = "4096"
sched.cpu.units = "mhz"
tools.upgrade.policy = "manual"
scsi0.virtualDev = "lsisas1068"
scsi0.present = "TRUE"
sata0.present = "TRUE"
sata0:0.deviceType = "cdrom-raw"
sata0:0.clientDevice = "TRUE"
sata0:0.fileName = "emptyBackingString"
sata0:0.present = "TRUE"
scsi0:0.deviceType = "scsi-hardDisk"
scsi0:0.fileName = "DCPP03.vmdk"
sched.scsi0:0.shares = "normal"
scsi0:0.present = "TRUE"
ethernet0.virtualDev = "vmxnet3"
ethernet0.networkName = "INSIDE"
ethernet0.addressType = "vpx"
ethernet0.generatedAddress = "00:50:56:8d:08:61"
ethernet0.present = "TRUE"
displayName = "DCPP03"
guestOS = "windows8srv-64"
toolScripts.afterPowerOn = "TRUE"
toolScripts.afterResume = "TRUE"
toolScripts.beforeSuspend = "TRUE"
toolScripts.beforePowerOff = "TRUE"
tools.syncTime = "TRUE"
messageBus.tunnelEnabled = "FALSE"
uuid.bios = "42 0d 8e a4 ee ad d0 aa-c2 f2 a7 b3 e3 13 86 35"
vc.uuid = "50 0d 1e 64 15 98 a1 75-9f 2d 56 7f 3e d1 35 21"
sched.cpu.latencySensitivity = "normal"
tools.guest.desktop.autolock = "false"
nvram = "DCPP03.nvram"
pciBridge0.present = "true"
svga.present = "true"
pciBridge4.present = "true"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "true"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "true"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "true"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
hpet0.present = "true"
sched.scsi0:0.throughputCap = "off"
disk.EnableUUID = "true"
smbios.ReflectHost = "true"
virtualHW.productCompatibility = "hosted"
replay.supported = "false"
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "160"
vmci0.pciSlotNumber = "32"
sata0.pciSlotNumber = "33"
scsi0.sasWWID = "50 05 05 64 ee ad d0 a0"
vm.genid = "419626835176286023"
vm.genidX = "3206259774675202547"
monitor.phys_bits_used = "42"
vmotion.checkpointFBSize = "4194304"
softPowerOff = "false"
ethernet0.pciSlotNumber = "192"
ethernet0.uptCompatibility = "TRUE"
toolsInstallManager.lastInstallError = "0"
tools.remindInstall = "false"
toolsInstallManager.updateCounter = "5"
vmotion.checkpointSVGAPrimarySize = "8388608"
svga.guestBackedPrimaryAware = "true"
ctkEnabled = "true"
scsi0:0.ctkEnabled = "true"
guestinfo.toolsInstallErrCode = "1641"
migrate.hostlog = "DCPP03-5d4dfa5d.hlog"
sched.cpu.min = "0"
sched.cpu.shares = "normal"
sched.mem.min = "0"
sched.mem.minSize = "0"
sched.mem.shares = "normal"
sched.swap.derivedName = "/vmfs/volumes/06194ba9-b2a53997/DCPP03/DCPP03-85fa11a5.vswp"
uuid.location = "56 4d 75 95 9b fd d1 7e-34 5f 6c f3 c7 94 57 fd"
replay.filename = ""
scsi0:0.redo = ""
vmci0.id = "-485259723"
cleanShutdown = "FALSE"
extendedConfigFile = "DCPP03.vmxf"
config.readOnly = "FALSE"hola