Eu ouço muitas pessoas se encolherem quando você menciona a execução de um banco de dados em uma VM. A verdade é que depende da VM. Se você não estiver virtualizando hardware, não sofrerá a penalidade de desempenho que eles temem. Usando a paravirtualização via Xen (ouvi coisas boas sobre o OpenVZ, mas não o usei.) Você pode fazer exatamente o que Dave Cheney disse (qual é a abordagem correta) e só tem que usar uma peça de hardware.
As ferramentas / conceitos em jogo seriam:
- Virtualização Xen (para paravirtualização)
- LVM (para copiar seus dados via instantâneo)
- interfaces virtuais (eth0: 1, eth0: 2, etc.), ifup & ifdown para implementar ...
- STONITH
Isso, obviamente, não é um guia completo, mas uma recomendação para uma combinação sólida de tecnologias que você pode pesquisar e implementar de uma maneira que atenda às suas necessidades. Minha abordagem é um pouco mais sobre estar preparado para o futuro, onde Dave Cheney está lidando com o que você (provavelmente) tem hoje.