Espelhe arquivos produtivos em uma máquina virtual local

1

Estou procurando uma solução que me permita acessar qualquer arquivo do meu ambiente produtivo em minha máquina virtual local para teste. Ambos os sistemas estão executando o Ubuntu 10.04 lts.

A solução atual é uma combinação de cron e rsync. Isso significa que temos que transferir periodicamente todos os arquivos produtivos para o ambiente de teste. A desvantagem é que leva tempo para transferir esses arquivos e custa muita capacidade do disco rígido. Também devo acrescentar que a maioria dos arquivos ao vivo não são necessários durante o teste, mas não há um padrão claro para excluir arquivos.

Outra solução é uma montagem ssh como sshfs. Mas isso não nos permitiria criar arquivos na máquina de testes local sem alterar arquivos do sistema live.

Existe alguma solução semelhante a uma montagem ssh que me permite extrair arquivos do sistema ativo sob demanda sem pressionar as alterações de volta para o sistema ao vivo?

Atualizar

A solução do cjc / Zerodache é exatamente o que eu precisava:

apt-get install sshfs
apt-get install unionfs-fuse

cd /root/
mkdir local_delta
mkdir live_system
mkdir test_system

sshfs [email protected]:/www/ /root/live_system
unionfs-fuse -o cow /root/local_delta=RW:/root/live_system=RO /root/test_system

Agora, /root/test_system mostra todos os arquivos do site ativo. Os arquivos criados na pasta test_system são criados apenas no local_delta , mas não no servidor. Além disso, as modificações e exclusões de arquivos são gravadas apenas na primeira ramificação local_delta , pois a segunda ramificação live_system está definida como RO (somente leitura) e a opção -o cow está configurada.

    
por jantimon 02.08.2012 / 18:45

2 respostas

2

Como você é capaz de montar remotamente o sistema de arquivos a partir da configuração de produção, então minha sugestão (cjc também mencionou em um comentário) é usar algo como um unionfs. O Unionfs é a ferramenta usada freqüentemente em ambientes live-live para exibir o sistema com sistema de arquivos somente leitura mesclado com um disco RAM de leitura-gravação, de forma que as leituras vêm de um sistema de arquivos somente leitura, a menos que um arquivo esteja presente na área de leitura-gravação. / p>     

por 02.08.2012 / 21:07
0

Se você estivesse usando algo como o vCenter Orchestrator e estivesse executando isso em cima do vSphere, você poderia usar um clone vinculado para isso. Isso criaria uma nova VM com um disco base de seu servidor ativo e um disco delta com todas as suas alterações. O espaço em HDD que seria consumido seria igual apenas às alterações feitas no clone. Então, quando estiver pronto, ele poderá ser descartado até que você precise criar um novo clone vinculado.

Como parece que você está no bare-metal com o servidor e sua VM é uma local para sua área de trabalho, você terá que se ater ao que já está fazendo.

    
por 02.08.2012 / 18:58