Si estoy ejecutando un sistema vmware ESXi moderno, puedo colocar archivos binarios rsync y rsync estáticamente vinculados en cualquier destino a través de SSH.
Estoy tratando de entender por qué la mayoría (¿todo?) De la copia de seguridad de los invitados vmware no se realiza de esta manera.
Si la VM se está ejecutando, simplemente puede usar 'vim-cmd vmsvc / snapshot.create' para crear una instantánea y luego rsync esa instantánea al host remoto. (incluso hay una opción para "inmovilizar" la instantánea)
O, si desea una copia de seguridad más robusta, puede detener con gracia la VM y rsync sobre los archivos vmdk.
Entonces ... parece que soy un simple script de shell alejado de todas las copias de seguridad que siempre quise hacer, simple y fácilmente, usando rsync simple y antiguo.
Que me estoy perdiendo aqui ?
fuente
Respuestas:
Consulte también: Instale rsync en el servidor VMware ESX 4.1
fuente
Solía hacer esto hace unos años. (editar: con VMWare ejecutándose en hosts CentOS, no ESXi admitidamente)
Todas las noches tenía un script que suspendía una VM, sincronizaba los archivos del disco al servidor de respaldo y luego iniciaba las VM nuevamente. Funcionó bastante bien excepto ...
Rsync no funciona muy bien con un archivo de 2GB.
No es porque rsync no sea brillante, es más que cada archivo vmdk de 2GB cambia de manera muy opaca a rsync, incluso pequeños cambios en el sistema de archivos incluido producen cambios en el vmdk (o todos los vmdks por alguna razón) a los que culpé Windows, ya sea desfragmentando automáticamente o haciendo todo lo demás, no importa si está ejecutando un sistema real, ¡pero aparece cuando intenta sincronizar una VM!
Creo que el mecanismo rsync para detectar cambios no funciona muy bien en un archivo de 2GB, mientras que a menudo omite fragmentos del inicio del vmdk, una vez que comienza a encontrar una diferencia, simplemente copiará el resto del archivo. No sé si eso es un problema con rsync que no puede detectar una porción movida de datos binarios, o con una falta de memoria en el cuadro de origen, o si el vmdk se actualizó por completo. No importa ya que el resultado fue el mismo: la mayoría de los vmdk se copiaron.
Al final, simplemente copié los archivos modificados y los sobrescribí, todavía usando rsync. También tuve un mejor rendimiento simplemente sobrescribiendo el archivo de copia de seguridad en lugar de permitir que rsync copie y reemplace lo que estaba allí.
Nuestro servidor de respaldo tampoco fue el más rápido y llegó al punto en que la noche no fue lo suficientemente larga como para hacer una copia de seguridad de todas las máquinas virtuales en ejecución.
Sin embargo, cuando necesitábamos restaurar una VM, fue realmente fácil y funcionó de maravilla.
fuente
Volver a sincronizar un solo archivo no es una solución de respaldo,
¿Qué haces cuando algo le sucede a la VM y los archivos fueron eliminados, pero solo te diste cuenta después de que tu rsync se volvió a ejecutar? Habrás sobrescrito la buena 'copia de seguridad' de tus archivos con la mala imagen ahora.
Si desea una copia de seguridad, debe mantener las versiones antiguas en algún lugar, o las diferencias. Rsync solo copiará las diferencias por usted, pero no almacenará solo las diferencias, sino que sobrescribirá el archivo anterior.
Puede haber opciones para usted aquí, con rsync, y un sistema de archivos de copia en escritura con información de versiones, que en efecto almacenará las diferencias cada vez que se ejecute su script rsync. Esta solución ya comienza a complicarse un poco, por eso la gente recurre a soluciones de trabajo conocidas.
fuente
No hay ninguna razón por la que no pueda usar Rsync en un servidor ESXi. Ofrecemos una versión compilada estáticamente aquí https://33hops.com/rsync-for-vmware-vsphere-esxi.html que funciona muy bien. También hay información sobre cómo compilar la suya.
Sin embargo, cualquiera que esté dispuesto a usarlo debe tener en cuenta que Rsync y su algoritmo Delta no estaban pensados para hacer copias de seguridad de archivos dispersos de longitud fija, como los discos duros VM, sino para sincronizar archivos más pequeños de longitud variable. Por lo tanto, funciona, pero lleva mucho tiempo y CPU calcular los datos de diferencia. De hecho, es solo una forma de intercambiar ancho de banda por CPU. En cualquier caso, todavía es bastante viable, especialmente si sus discos virtuales están en el orden de unas pocas decenas de gigabytes.
He publicado una publicación completa sobre el tema aquí, detallando todos los pros y contras https://33hops.com/blog_xsibackup-rsync-considerations.html
fuente