Página principal Sobre mi Premios recibidos Links de Interés Contacto Blogs de referencia

Translate

lunes, 23 de noviembre de 2015

Textual description of firstImageUrl

Veeam Backup & Replication - Error Size Not available - Cómo cambiar el ID de una Virtual Machine.



En alguna ocasión seguro que habéis perdido vuestro servidor de Virtual Center a causa de algún fallo y la recuperación del mismo no ha sido posible por motivos varios. 

Entonces nos vemos obligados a desplegar un nuevo servidor de vCenter en nuestra infraestructura para sustituir el fallido y volver a configurar , así todo vuelve a la normalidad, pero cuando nos dirigimos al servidor de Veeam Backup & Replication es muy posible que comprobemos que las copias no funcionan. 

Al editar los trabajos de copia, las máquinas virtuales seleccionadas en ellos, aparecen como Not available.

Esto es debido a que cuando se configuró el trabajo de copia con el antiguo servidor de vCenter, el que ya no existe, Veeam Backup & Replication usó el identificador de VM que fue asignado a la máquina virtual en el viejo servidor de Virtual Center y que en el nuevo servidor de vCenter este identificador ha cambiado.

Edit Backup Job.

Veamos, en primer lugar, como conseguir el identificador actual en el nuevo servidor de Virtual center, de la maquina virtual llamada SRVDC1.

Abriremos la consola de VMware vSphere PowerCLI y con el comando siguiente conectaremos a nuestro nuevo servidor de Virtual Center, en nuestro laboratorio tenemos un vCenter Server virtual Appliance 5.5.

connect-viserver 'NOMBRE_DEL_VCENTER' -user 'NOMBRE_DE_USUARIO' -password 'CONTRASEÑA'

Por defecto el nombre de usuario y la contraseña en vCenter Server virtual Appliance 5.5 son.

Usuario: root
Contraseña: vmware

escribiremos en nuestro laboratorio de ejemplo

connect-viserver vmvcenter -user root -password vmware

Realizada la conexión ejecutaremos el comando siguiente, para que nos liste los nombres de las máquinas virtualies y sus identificadores.

get-vm | select name, Id

Buscaremos la máquina virtual que nos interesa, en nuestro caso SRVDC1 y comprobaremos que el ID asignado por el nuevo servidor de Virtual center es el 17.

SRVDC1                       VirtualMachine-vm-17

SRVDC1 VirtualMachine-vm-17

Si no tenemos Microsoft SQL Server Management Studio Express, descargado y instalado en el equipo donde tenemos Veeam Backup & Replication, pues lo podemos descargar de forma totalmente gratuita en la página oficial de Microsoft, y lo instalamos.

Microsoft® SQL Server® 2008 Management Studio Express
Después de instalar abriremos la consola de SQL Server Management Studio.

SQL Server Management Studio.

Accederemos al servidor SQL y a la instancia creada por Veeam Backup & Replication.

Instancia creada por Veeam Backup & Replication.

En el árbol que encontraremos en el lado lateral Izquierdo de la ventana, desplegaremos la rama Base de Datos, seleccionaremos la base de datos creada por Veeam que lleva por nombre, VeeamBackup, la seleccionaremos y desplegaremos el menú haciendo uso del botón derecho del ratón.

En el menú desplegable escogeremos la opción Nueva consulta.

Opción Nueva consulta.

Situada en la parte central de la ventana, encontraremos la sección SQL Query1, vacía por el momento, escribiremos nuestra consulta tal y como tenemos a continuación.

SQL Query1.

La consulta siguiente, nos listará el nombre, el identificador y la ruta de todas la máquinas virtuales que contenga un trabajo de copia de seguridad en cuestión de Veeam Backup & Replication, que  nosotros mismos deberemos especificar el nombre del trabajo a buscar.

SELECT bo.object_name, bo.object_id, bo.path
FROM bjobs bj
     INNER JOIN ObjectsInJobs oij ON bj.id = oij.job_id
     INNER JOIN BObjects bo ON bo.id = oij.object_id
WHERE bj.Name = 'NOMBRE_DEL_TRABAJO_DE_COPIA' and bj.type=0

Verificaremos el nombre de nuestro trabajo de copia, en nuestro laboratorio será srvdc1 y escribiremos la Query como mostramos a continuación.

SELECT bo.object_name, bo.object_id, bo.path
FROM bjobs bj
     INNER JOIN ObjectsInJobs oij ON bj.id = oij.job_id
     INNER JOIN BObjects bo ON bo.id = oij.object_id
WHERE bj.Name = 'srvdc1' and bj.type=0

Comprobaremos que en el antiguo servidor de Virtual Center la máquina virtual SRVDC1 tenia asignado el identificador vm-43 y así aparece registrado en la base de datos de Veeam Backup & Replication.

Pero, como antes hemos visto en el nuevo Virtual Center el identificador asignado a SRVDC1 es el vm-17, ahora tan solo deberemos cambiar el uno por el otro.

 SELECT bo.object_name, bo.object_id, bo.path

Sustituiremos el identificador antiguo, vm-43, por el nuevo, vm-17, haremos uso de la siguiente acción.

UPDATE bobjects
SET [object_id] = 'NUEVO-ID'
WHERE [object_id] = 'ANTIGUO-ID

En nuestro laboratorio será, vigilar no cambiar mayúsculas por minúsculas y demás.

UPDATE bobjects
SET [object_id] = 'vm-17'
WHERE [object_id] = 'vm-43

UPDATE bobjects


Repetiremos la consulta para comprobar que efectivamente el ID de la maquina virtual ha cambiado.

SELECT bo.object_name, bo.object_id, bo.path
FROM bjobs bj
     INNER JOIN ObjectsInJobs oij ON bj.id = oij.job_id
     INNER JOIN BObjects bo ON bo.id = oij.object_id
WHERE bj.Name = 'srvdc1' and bj.type=0

WHERE bj.Name = 'srvdc1' and bj.type=0

Si volvemos a acceder al trabajo de copia de seguridad comprobaremos que todo funciona correctamente.

Size Ok
Espero os sea de utilidad.


Enlaces relacionados

Veeam V8 - Configurar DDBoost y aplicar Fix-39801 problema de funcionamiento DDBoost.
Exportar archivos log Veeam Backup.
Update Veeam Backup & Replication V8.
Exportar archivos log Veeam Backup.
Configurar Email Notification Veeam Backup V7.

2 comentarios:

  1. to find the new VM ID in Veeam B&R v9.5, just create a new backup job and add the VM that ID has changed and then run the SQL query below to see the new VM ID

    SELECT Objectsinjobs.location, bobjects.object_id FROM BObjects INNER JOIN ObjectsInJobs ON ObjectsInJobs.object_id = BObjects.id where ObjectsInJobs.location like '%VMNAME%';

    Then once you see the new VM ID, run the below script to change the old ID to the new ID

    UPDATE bobjects
    SET [object_id] = ''
    WHERE [object_id] = ''

    ResponderEliminar