A menos que as coisas mudem desde o ano passado, eu aconselho não usar o AFR glusterfs em hardware geograficamente diferente. Ele não manipula bem a latência e a falha em especificar o subvolume de leitura fará com que ele seja aleatoriamente (aparentemente aleatoriamente, não é aleatório) para tentar ler de um bloco remoto. Como um teste, configure seus dois nós mais latentes na replicação gluster e, em seguida, tente touch testfile && time stat testfile
nesse sistema de arquivos para ver quanto tempo cada FS operacional levará, no mínimo. Mesmo que você tenha especificado que seu aplicativo é share-nothing, ele ainda fará verificações de verificação de bloqueio e de coerência para você, o que significa pesquisar metadados de todas as outras réplicas.
Depois de executar o teste, se você ainda quiser usar o gluster, isso é o que você perguntou:
Se você usar # 4 e tentar montar a imagem da VM em várias VMs ao mesmo tempo, terá problemas de consistência no FS. Os sistemas de arquivos normais do Linux não suportam armazenamento de backup volátil.
A passagem do sistema de arquivos, como em # 2, tem um desempenho ruim em todos os sistemas de virtualização que eu tentei. Você é muito melhor usar o NFS como um transporte em vez de algo como 9p virtio (kvm) ou qualquer que seja o equivalente para o vbox; O repasse do windows-host fs para o vbox é bastante ruim (leia-se: lento, frágil), imagino que o equivalente hospedado no Linux seja semelhante. Mesmo se você obtiver o repasse de fs funcionando, as probabilidades são de que ele não suportará xattr, o que é requerido pela replicação de glusterfs. Historicamente, ter o NFS configurado para atributos estendidos tem sido uma dor, mas você pode ter mais sorte com o NFSv4. Esta abordagem é repleta de armadilhas, eu iria evitá-lo.
# 3 tem alguma promessa. Configure o gluster no host e, em seguida, execute o listener de cliente do NFS gluster e faça com que a VM se conecte a ele. Ele também é o mais facilmente convertido quando você o descobre. A. não quer usar VMs e / ou B. não quer usar glusterfs.
# 1 é igualmente viável, mas não tem vantagem sobre o bare metal - quaisquer ganhos de segurança são efetivamente negados, já que você diz que é para um sistema de aplicativo único. Para esse assunto, também não # 3. A única diferença com este é que você pode usar o driver nativo do linux para glusterfs. Você pode querer configurar um disco virtual diferente para o bloco para que você possa desanexá-lo se você precisar refazer a imagem da VM sem repopular seu bloco.