Eu costumava fazer isso há alguns anos atrás. (edit: com o VMWare em execução nos hosts CentOS, não o ESXi)
Toda noite eu tinha um script que suspendia uma VM, sincronizava novamente os arquivos do disco para o servidor de backup e depois reiniciava as VMs. Funcionou muito bem, exceto ...
O Rsync não funciona muito bem com um arquivo de 2 GB.
Não é porque o rsync não é brilhante, é mais que cada arquivo vmdk de 2 GB muda de maneira muito opaca ao rsync, mesmo pequenas alterações no sistema de arquivos fechado produzem alterações no vmdk (ou em todos os vmdks por algum motivo) que eu culpei Windows, desfragmentando automaticamente ou fazendo todas as outras coisas que faz, não importa se você está executando um sistema real, mas aparece quando você está tentando sincronizar uma VM novamente!
Eu acho que o mecanismo rsync para detectar alterações não funciona muito bem em um arquivo de 2 GB, enquanto muitas vezes pulava partes do início do vmdk, uma vez que começava a encontrar uma diferença, simplesmente copiava o restante do arquivo. Não sei se esse é um problema com o rsync não sendo capaz de detectar um pedaço movido de dados binários, ou com falta de memória na caixa de origem ou se o vmdk foi atualizado completamente. Não importa, pois o resultado foi o mesmo - a maioria do vmdk foi copiada.
No final, simplesmente copiei os arquivos alterados e os sobrescrevi, ainda usando o rsync. Eu também tive um melhor desempenho simplesmente substituindo o arquivo de backup em vez de permitir que o rsync copiasse e substituísse o que estava lá.
Nosso servidor de backup também não foi o mais rápido e chegou ao ponto em que a noite não era longa o suficiente para fazer backup de todas as VMs em execução.
No entanto, quando precisávamos restaurar uma VM, era realmente fácil e funcionava perfeitamente.