O problema
Temos um problema com o desempenho em uma plataforma existente, então estou voltando à mente para uma segunda opinião sobre isso. Até agora, o problema de desempenho está relacionado ao IOPS, e não à taxa de transferência.
O cenário
Um centro blade de 16 hosts, cada um com 64 GB de RAM. (É um Dell M1000e com M610s, mas provavelmente não é relevante) 500 VMs, todos os servidores da Web (ou tecnologias da Web associadas, como MySQL, balanceadores de carga, etc.), cerca de 90% são Linux e o restante Windows. O hipervisor é o VMWare vSphere. Precisamos fornecer HA de host, para que o armazenamento local esteja fora. Como tal, os hosts apenas têm um cartão SD para inicializar.
Um pouco de pensamento de fundo
No momento, temos até 6 hosts (o blade center estará em plena capacidade dentro de um ano com o crescimento atual) e estamos executando o iSCSI em um Dell MD3220i com MD1220 para expansão.
Possíveis opções que consideramos e pensamentos imediatos junto com eles:
- Espalhar as VMs pelos datastores NFS e executar o armazenamento NFS que atenda aos requisitos de desempenho para até um determinado número de VMs. O NFS parece mais barato em escala, além de ter sido abstraído um pouco mais do que o armazenamento em nível de bloco, para que possamos movê-lo conforme necessário.
- Adicionando mais controladores / destinos MD3220i. Estamos preocupados, porém, que isso possa ter um efeito negativo de alguma forma na maneira como o VMWare lida com muitos destinos.
- Trocar todos os discos do Nearline SAS para SSD. Isso deve resolver completamente o problema de IOPS, mas tem o efeito colateral óbvio de reduzir nossa capacidade de armazenamento. Também ainda é muito caro.
- O vSphere 5 possui um dispositivo de armazenamento. Ainda não pesquisamos muito, mas deve funcionar bem?
A questão
Que tipo de armazenamento você executaria por trás de tudo isso? Ele não precisaria ser escalado para outro centro blade, apenas forneceria um desempenho relativamente bom para todas essas VMs.
Não estou procurando respostas "Compre o SAN x porque é o melhor". Estou pensando em várias tecnologias SAN (iSCSI, FC, FCoE, InfiniBand, NFS, etc), diferentes tipos de armazenamento (SATA, SAS, SSD) e metodologias para lidar com o armazenamento de centenas de VMs (consolidação, separação) , Sharding, etc).
Absolutamente quaisquer pensamentos, links, guias, indicadores etc. são bem-vindos. Também adoraria ouvir pensamentos sobre as opções acima que já consideramos.
Muito obrigado antecipadamente por qualquer entrada!
Atualização 5 de março '12
Algumas respostas fantásticas até agora, muito obrigado a todos!
Seguindo as respostas a essa pergunta até agora, estou começando a pensar que a seguinte rota é a seguinte:
- Coloque o armazenamento disponível em camadas no cluster VMWare e coloque os discos da VM no armazenamento adequado para suas cargas de trabalho.
- Potencialmente, use uma SAN capaz de gerenciar a colocação de dados no armazenamento adequado automaticamente.
- O Infiniband parece ser o mais econômico para obter a largura de banda necessária com os hosts em capacidade total.
Definitivamente, parece que valeria a pena usar os serviços de pré-venda de um grande fornecedor de SAN para entender o cenário.
Vou continuar a considerar esse problema por um tempo. Enquanto isso, mais conselhos recebidos com gratidão!