Saludos amigos, hace apenas unas semanas os contaba cómo Veeam había incluido Object Storage en su última versión de Veeam Backup for Microsoft Office 365 v4. Si bien es cierto que esta novedad es impresionante, en este post vamos a ver cómo mover nuestros backups desde repositorios locales hacía un nuevo repositorio que tenga extendido hacía Object Storage. También podéis ir al KB 3067 que allí está todo.
Preparación del nuevo Backup Repository en Veeam Backup for Microsoft Office 365 v4
Es importante comprender desde donde hacía donde podemos migrar, para ello he preparado unos breves diagramas. Veeam soporta la migración de backups desde un Backup Repository Local a otro Backup Repository Local:
Y también soporta la migración de backups desde un Backup Repository Local a otro Backup Repository que tenga Object Storage como parte del backup repo:
Pero en ambos casos tenemos que tener siempre un backup repository local nuevo, en el segundo caso lo hemos extendido a Object Storage, por supuesto.Algunas cosas a tener en cuenta son las siguientes:
- Si planeamos cambiar la política de retención del período de retención más largo al más corto, se recomienda reducir el período de retención del repositorio local de copias de seguridad al valor de su repositorio de almacenamiento de objetos planificado y sólo entonces realizar una migración. De este modo, podemos asegurarnos de que los costes de la transferencia de datos se reducen al mínimo.
- Los puntos de restauración existentes estarán disponibles después de la migración y se podrá acceder a ellos haciendo clic con el botón derecho del ratón en el nombre de la organización correspondiente en lugar de en el nombre del trabajo, ya que ya no estarán vinculados al trabajo original.
- El procedimiento de migración no reconfigurará automáticamente los trabajos de copia de seguridad correspondientes. Para continuar con la copia de seguridad en un repositorio de almacenamiento de objetos, debe reconfigurar los trabajos manualmente y apuntarlos al nuevo objetivo.
- Se recomienda ejecutar operaciones de migración fuera de las ventanas de copia de seguridad para evitar sobrecargar un proxy y afectar al rendimiento de las tareas de copia de seguridad.
Ya con todo esto leído, pasemos a los siguientes pasos.
Comprendiendo la herramienta de PowerShell Move-VBOEntityData
Este comando que tenemos incluido en la PowerShell de Veeam Backup for Microsoft Office 365 lleva ya mucho tiempo con nosotros, se ha usado anteriormente para migrar de un repositorio a otro en caso de que nos quedáramos sin espacio, o migraciones de hardware.
Vamos a poner un ejemplo muy sencillo. Vamos a ver cómo realizar operaciones básicas con cmdlets de Veeam PowerShell para mover datos de copia de seguridad desde el repositorio local de copias de seguridad al nuevo repositorio que incluye además object storage.
$origen = Get-VBORepository -Name "EL NOMBRE DE TU REPO DE ORIGEN" $destino = Get-VBORepository -Name "EL NOMBRE DE TU REPO DE DESTINO" $data = Get-VBOEntityData -Type User -Repository $source -Name "NOMBRE DE UN USUARIO A MIGRAR" Move-VBOEntityData -From $source -To $target -User $data
Esta descripción cubre los detalles sobre los cmdlets y parámetros que se utilizan para obtener los objetos necesarios y migrar los datos de copia de seguridad que desea mover (buzón de correo de un solo usuario, buzón de correo de archivo, sitio OneDrive y SharePoint) entre los repositorios con el cmdlet Move-VBOEntityData, si queremos un paso a paso más detallado:
- Ejecutaremos el cmdlet Get-VBORepository para obtener el repositorio local de origen. Proporcionaremos el valor del parámetro Name para obtener el repositorio por su nombre. Grabaremos el resultado en la variable $origen
- Ejecutaremos el cmdlet Get-VBORepository para obtener el repositorio de almacenamiento del objeto de destino. Proporcionaremos el valor del parámetro Name para obtener el repositorio por su nombre. Guardaremos el resultado en la variable $destino.
- Ejecutaremos el cmdlet Get-VBOEntityData para obtener los datos de copia de seguridad que deseamos mover. Proporcionaremos el valor del parámetro Tipo para especificar el tipo de datos que desea mover (puede especificar cualquiera de los siguientes tipos de datos: usuario, grupo, centro…). Para obtener más información sobre los tipos de datos de copia de seguridad que podemos obtener, consulte el artículo Get-VBOEntityData de PowerShell Reference for Veeam Backup for Microsoft Office 365). Nota: El tipo de organización de los datos de copia de seguridad no es compatible con este escenario. Además, el cmdlet Move-VBOEntityData sólo funciona con un único objeto de usuario. Por lo tanto, a efectos de la migración de datos, el cmdlet Get-VBOEntityData debe utilizarse siempre con el parámetro “-Name”. Sin este parámetro, Get-VBOEntityData asignará un array de usuarios a la variable $data, que no puede ser utilizada por Move-VBOEntityData cmdlet.
- Ejecutaremos el cmdlet Move-VBOEntityData para migrar datos desde el repositorio local de copias de seguridad al repositorio de almacenamiento del objeto de destino.
Parece un poco áspero pero realmente es muy sencillo una vez hemos realizado estos pasos la primera vez. Si queremos algo más simple, seguir leyendo.
Automatizar el proceso de migración con Script de Veeam – Sin Soporte Oficial
Veeam ha creado un Script que está diseñado para demostrar cómo automatizar la migración de datos de backup a un repositorio de almacenamiento de objetos.
Hay que tener en cuenta que el script se proporciona para demostrar las posibilidades de automatización y no es compatible con el soporte técnico de Veeam. Utilízalo bajo tu propio riesgo.
El script consta de varios pasos y realiza las siguientes operaciones:
- Paso 1. Selección de organización: este paso define la organización a la que deseamos migrar los datos.
- Paso 2. Selección de proxy de copia de seguridad – este paso define el servidor proxy de copia de seguridad que aloja los datos de copia de seguridad existentes.
- Paso 3. Selección de Repositorio de Destino – este paso define un repositorio de almacenamiento de objeto de destino.
- Paso 4. Limitar las sesiones de migración: este paso configura el número máximo de sesiones de migración simultánea a la mitad de todos los subprocesos configurados para el servidor proxy de copia de seguridad seleccionado (por ejemplo, si hay 64 subprocesos configurados en un servidor proxy de copia de seguridad, limitaría las sesiones de migración a 32 sesiones de migración).
- Paso 5. Desactivar todos los trabajos para la organización seleccionada – este paso desactiva todos los trabajos de copia de seguridad creados para la organización especificada.
- Paso 6. Creación de una lista de repositorios de origen: crea una lista de repositorios de copia de seguridad utilizados por los trabajos de copia de seguridad del paso 5 que se utilizarán como repositorios de origen (si un repositorio no está siendo utilizado por al menos un trabajo de copia de seguridad, los datos que residen allí no se migrarán).
- Paso 7. Obtener y Migrar todos los Usuarios – este paso crea una lista de todos los Usuarios, Sitios y Grupos ubicados en los repositorios desde el paso 6 y luego migra sus datos.
- Paso 8. Reconfigurar trabajo para usar un nuevo repositorio – este paso reconfigura todos los trabajos del paso 5 para usar el repositorio de almacenamiento de objetos que está definido como repositorio de destino y permite todos los trabajos deshabilitados en el paso 5.
Os voy a mostrar lo sencillo que es usar este Script, desde un PowerShell, guardamos el script como .ps1 y lo ejecutamos, nos preguntará que seleccionemos la orgnaización, luego el proxy, más tarde el Backup Repo de destino, y ya comenzará a ejecutarse:
Podremos ver todas las operaciones de migración desde nuestra consola de Veeam Backup for Microsoft Office 365:
El proceso se come toda la CPU y casi toda la RAM, es importante ser conscientes del impacto en recursos y tiempo que este proceso conlleva:
Además si estamos mandando la información a un Backup Repository que tiene Object Storage también, el proceso puede llevar más tiempo, al necesitar escribir la información en el Object Storage, por ejemplo, esta es la gráfica de mi FreeNAS que está sirviendo el Object Storage:
También hay una aplicación no soportada oficialmente escrita por Tim y Niels, podéis encontrarla aquí.

Thanks for sharing 🙂