Configurando a Infraestrutura Multi-servidor? Aconselhar as melhores opções

2

Estamos configurando um número de máquinas virtuais (cerca de 250) para um cliente que está basicamente usando um aplicativo escrito em LAMP + Java com um pouco de personalizações em cada uma dessas 250 instâncias. Essencialmente, cada aplicativo pode ser considerado como um aplicativo da Web, que pode ser dimensionado para cerca de 200 -500 GB de dados (principalmente arquivos) e aproximadamente 1-1,5 GB em tamanho de banco de dados MySQL.

Temos um rack padrão de 42 U à nossa disposição e estamos considerando uma arquitetura como essa.

1) Execute 250 Vms em cerca de 14 2x Quad / 6 núcleos 1 Servidores U com 32 GB de RAM 250 GB SAS 15 K RPM x 2 (RAID 1). App básico se encaixa confortavelmente dentro de 2 GB, inclusive do sistema operacional

2) Ter um conjunto dedicado de 1 U servidores de banco de dados MySQL com 300 GB SAS x 3 (RAID 5 H / w) habilitado. Adicione mais quando precisarmos expandir

3) Tenha um monte de JBODs (cerca de 6) com capacidade de 30 TB para armazenamento, com um failover de 1: 1. Cada JBOD de 30 TB tem um JBOD de 30 TB espelhado. Estes seriam usados para armazenar arquivos que consistem principalmente em PDF, Word, Excel, JPG e alguns arquivos de filmes.

Cada aplicativo teria cerca de 2 a 10 usuários simultâneos durante o dia, que gravaria no banco de dados e também enviaria os arquivos. O aplicativo é um aplicativo de negócios em que as transações diárias de cada departamento são armazenadas digitalmente. Pode haver algumas centenas de visualizações de página ou tentativas de download de alguns documentos enviados para cada aplicativo.

Aproximadamente isso corresponderia aos servidores NAS brutos durante um período de 10 horas de horário comercial, algo próximo de 250.000 leituras e gravações. Da mesma forma, cargas são esperadas nos servidores MySQL

Não queremos investir em caixas de armazenamento da EMC ou NetAPP ou de qualquer um dos grandes fornecedores de armazenamento, devido à falta de fundos. Na verdade, estamos considerando a execução de matrizes de 30 TB baseadas em RAID 0, com cada matriz sendo espelhada para outra matriz. Portanto, em caso de falha, a caixa redundante assume o controle, nos dando tempo suficiente para a troca. Temos alguns chassis sobressalentes 3 U, com 15 compartimentos de unidade hot-swap. Estamos pensando em lançar processadores Dual Xeon, com 16 GB de RAM ECC em cada um e também pensando em um RAID de software em vez de RAID H / W em cada caixa. A idéia é que, com CPUs poderosas, os RAIDs de software devem funcionar melhor que os RAIDs H / W.

Recebemos algumas críticas principalmente de alguns fornecedores que querem que compremos suas caixas de armazenamento propreitárias. Que tipo de problemas de desempenho é provável que enfrentemos? Eu tenho um amigo que é um administrador ex-sys com a Amazon que disse que esse tipo de arquitetura é muito semelhante ao que uma Amazon ou Google usa, e apontou que, como não estamos realmente configurando um site voltado para o público que pode tem potencialmente milhões de acessos, essa arquitetura é boa o suficiente. Ele também me disse que o RAID de software em sistemas UNIX funciona tão bem quanto o RAID H / w. Esta é uma razão na maioria dos servidores do Google ou em outros lugares, na verdade, são computadores muito baratos.

Eu gostaria de uma segunda opinião sobre o mesmo .....

    
por ramdaz 17.04.2011 / 02:18

2 respostas

0

We are in fact considering running RAID 0 based 30 TB arrays, with each array being mirrored to another array. So in case of any failure the redundant box takes over, giving us ample time to switchover.

A menos que eu esteja sentindo falta de algo aqui, esta é uma configuração perigosa. Uma única falha de disco no segundo array perderá todo o seu conjunto de dados. Este é um cenário muito provável quando você está falando de matrizes com pelo menos 10 discos cada.

A Amazon e o Google têm suas próprias tecnologias de armazenamento dedicadas que são especificamente escritas para funcionar bem com seus loadouts de hardware (muitas unidades diferentes e baratas). Especificamente, seu software detecta falhas em um bloco de armazenamento e garante continuamente que cada item seja armazenado em pelo menos x locais adicionais. Quando um dispositivo de armazenamento falha, todo o seu conteúdo tem imediatamente uma nova duplicata adicionada a algum outro conjunto de armazenamento. A menos que você esteja usando um software personalizado semelhante para sua camada de armazenamento, não será possível usá-los como base para comparação.

Em relação aos fornecedores - É verdade que você pode, potencialmente, ficar sem um array de um dos grandes players empresariais aqui - Netapp / EMC ou similar. Seu armazenamento é projetado para coisas como executar muitas VMs simultâneas diretamente delas. No entanto, você está falando sobre o servidor NAS servindo arquivos simples ... um caso de uso muito mais simples e as sobrecargas e a aleatoriedade do seu IO estão fora do ar. Você ainda vai querer considerar o RAID 6 no mínimo.

Qual é a sua estratégia de backup?

    
por 17.04.2011 / 03:07
0

Para 3) eu usaria o HW-Raid 5. Essa é uma boa compromisso entre velocidade e disponibilidade. Você não quer re-espelhar 30 TB. Durante esse re-mirror, você pode perder um disco adicional.

Eu também recomendaria o uso do HW-Raid, por causa de sua capacidade de avisar sobre falhas de disco e sua capacidade de fazer uma reconstrução automática.

Também é muito mais fácil de configurar e manter. Com o HW-Raid eu estou falando sobre controladores RAID reais que apresentam ataques como discos para o sistema operacional.

    
por 30.07.2011 / 22:55