Quantas máquinas virtuais podem residir em um mesmo Datastore?
Ocasionalmente escuto esta pergunta, sobre qual o número ideal (se é que existe um) de máquinas virtuais por Datastore, já vi implementações onde temos um Datastore para cada máquina virtual, por outro lado, já vi clientes com mais de 100 máquinas virtuais (para simplificar vou usar o termo VM’s daqui para frente) no mesmo Datastore. Então qual o valor ideal?
A resposta é: Depende. O que tenho visto na maioria das vezes são regras gerais, uma que diz que de 15 a 25 VM’s por Datastore é um número ideal, por outro lado, algumas ferramentas automáticas dizem que 16 VM’s seriam o máximo e qualquer valor acima desse número degradaria a performance.
Digo que a resposta depende, pois não existe uma regra universal, se observarmos o “Configuration Maximus” do VSphere 6.5, temos o número de 2048 VM’s ligadas por Datastore VMFS, que obviamente é um número muito alto. Eu pessoalmente gosto de analisar caso a caso, considerando diversos fatores que vou detalhar adiante neste artigo. Se estiver buscando por uma resposta rápida e uma regra geral, considere três valores: 10 VM’s que demandam mais performance por Datastore, 15 VM’s medianas e finalmente 20 VM’s de pouca utilização ou com baixa demanda de performance por Datastore.
Como mencionei que depende de fatores e estamos falando diretamente de armazenamento, é importante entender primeiramente como seu sistema de Storage trabalha e como os Volumes (LUN’s) foram criados, se ele utiliza-se do conceito de Disk Group/Raid Group ou Dynamic Disk Pool (ou simplesmente DDP, onde os volumes são criados em um pool de discos e o sistema de Storage utiliza-se de algoritmos proprietários para alocar os dados). Se existe no sistema de Storage mecanismos de QOS (Quality of Service), priorização, definição de cache por volume, etc. Por exemplo: Se o Storage trabalha com DDP e os volumes estão configurados com as mesmas configurações de QOS, priorização ou quantidade de memória cache, no final os volumes apresentarão os mesmos níveis de performance, então alocar 10 VM’s em um Datastore e 15 no outro na prática teria o efeito prático semelhante a alocar 25 VM’s em um Datastore único.
Outro ponto que temos que considerar é a otimização do espaço, Storage é caro e muitas vezes uma fragmentação excessiva em um grande número de Datastores, pode implicar em espaço desperdiçado dependendo dos tamanhos de suas máquinas virtuais e da forma que as mesmas estão distribuídas no sistema de armazenamento.
Como observamos, não existe uma regra universal, a recomendação é avaliar a questão de forma global, considerando otimização do espaço, performance e possivelmente um padrão de organização de como os dados são armazenados.