Construindo um farm de servidores - Devo usar hardware barato ou caro?

3

Estou procurando criar um farm de servidores para uma empresa da web, precisarei de servidores front-end de webservice e um backend de servidor de arquivos NAS comum.

Algumas empresas optam por comprar o hardware mais rápido e mais confiável, que custa um prêmio. Outras empresas optam por comprar hardware de PC barato, mas mais. Eles constroem sistemas altamente redundantes, que eles trocam quando falham. Acredito que o Google adote essa abordagem posterior.

Alguém tem alguma experiência e conselhos específicos da vida real para me oferecer?

    
por Draemon 23.07.2009 / 14:12

10 respostas

5

Depende da sua aplicação e tolerância para falhas.

Se você estiver executando um banco de dados oracle para uma empresa financeira, precisará de servidores caros com partes de hot-swap e redundância interna (fontes de alimentação, discos, até mesmo cpu e memória).

Se for um servidor web ou servidores de computação com armazenamento NAS, vá barato (no servidor, não no NAS), desde que você possa tolerar a perda de uma caixa sem muito impacto.

Não fique tão barato que você esteja constantemente substituindo hardware ruim.

A regra geral para mim tem sido usar o raid para proteger seus dados importantes baseados em disco, mas comprar hardware barato para computadores e web farms. Obtenha um bom balanceador de carga que possa detectar quando um servidor da Web não está respondendo e o marque off-line.

Experiências da vida real:

Ruim: Executar o oracle em hardware de commodity foi uma solução barata que conseguimos reunir muito rapidamente, mas um ventilador ruim da CPU causou uma falha no servidor que nos forçou a restaurar o Oracle da fita (ugh!).

Bom: Substituímos duas máquinas altamente redundantes de alta tecnologia por 70 servidores de montagem em rack. Fomos capazes de largar a manutenção nas duas máquinas e começamos a comprar apenas $ 2500 'spares'. Em cerca de dois anos, acho que usamos apenas cerca de seis das "peças de reposição" (o verdadeiro desafio era evitar a distribuição de peças para outros fins).

    
por 13.07.2009 / 14:06
3

Pessoalmente, recomendo aos meus clientes que os computadores que precisam ser altamente confiáveis sejam computadores de marca com suporte atual de nível superior.

Eu chamo de "Suporte em nível empacotado" após a corrida alienígena em Star Trek, porque você deve poder chamar uma linha de suporte dia ou noite e dizer que sou $ NAME em $ COMPANY. Meu número de contrato de suporte é de $ X. Meu computador é um $ TYPE, serial $ NUMBER. Está quebrado, faça-o ir e espere que um cara apareça 2-4 horas depois para fazer exatamente isso.

Agora espere pagar um bom dinheiro por esse tipo de apoio. Mas se você deve estar em pé, vale a pena.

Na maioria das vezes, prefiro computadores pré-montados com garantia e suporte, porque geralmente não vale o dinheiro do cliente me pagar para especificar, pedir e montar computadores baratos.

Para computadores, você pode ficar em baixo por algumas horas / dias, o hardware mais barato provavelmente está OK. Por exemplo, se eu tiver cinco servidores da Web, quero que dois deles sejam altamente disponíveis e tolerará que o restante seja mais barato. Para fazendas de computação, eu vou com hardware mais barato.

    
por 13.07.2009 / 16:44
1

A criação de servidores hot swappable é extremamente difícil.

Vá para os mais caros.

    
por 13.07.2009 / 12:16
1

Há um bom post de Jeff sobre esse tópico, onde ele também analisa as taxas de energia e licenças.

    
por 13.07.2009 / 12:25
1

Pela minha experiência, hardware barato também custa muito. Tenho certeza que você não precisa do modelo high-end de um servidor profissional para servir alguns sites. Mas você não quer perder

  • fontes de alimentação hot-swap
  • IPMI (gerenciamento remoto)
  • controlador RAID de hardware real para discos do sistema
  • chassis com bom fluxo de ar

Além disso, considere o uso de um bom balanceador de carga, HTTP-cache (por exemplo, Squid ), PHP-cache (por exemplo, ACP ) e memcachd , se couber em seu aplicativo da web. Isso pode tornar obsoletos alguns servidores de back-end em um site razoavelmente movimentado.

    
por 13.07.2009 / 14:23
1

Fluxo de ar, fluxo de ar, fluxo de ar.

Encontre um fornecedor local, construa uma máquina com preços razoáveis, pesquise os componentes para que você não compre peças de limão, e assegure-se de que está movimentando grandes quantidades de ar por si mesmo. Quando a engrenagem permanece fria, dura muito mais tempo. A redundância é boa, mas dependendo do tamanho da sua organização, pode ser um exagero. Se você quiser redundância, talvez seja melhor comprar menos máquinas com muito mais tolerância a falhas (disco rígido, cpu, mem, psu, ventiladores etc.) e executar servidores virtuais. Dessa forma, você obteria tolerância a falhas em seu servidor, além da vantagem adicional de executar máquinas virtuais. No entanto, é uma boa prática manter seus servidores de banco de dados separados de hardware ou, no mínimo, fazer com que eles gravem em um array de RAID dedicado.

    
por 23.07.2009 / 15:04
0

Alguns dos hardwares mais caros têm alguns dos contratos mais baratos de resposta de 4 horas.

O mais caro que eu conheço foi o mais barato, mas o fabricante não conseguiu / não quis consertá-lo quando ele quebrou. Eles também tiveram as renovações de contrato de serviço mais caras (que se revelaram inúteis).

Na corrida para chegar ao ciclo de vida de 3 a 5 anos sem um grande tempo de inatividade, você não quer que sua entrada seja marcada como Não Concluído.

    
por 23.07.2009 / 14:18
0

Acho que depende inteiramente da sua situação ... depende se você quer ter alguém para culpar ou manter sua manutenção internamente.

Se você se sentir mais confortável em ter um fornecedor responsável, escolha um contrato de suporte de alta qualidade. Se você quiser economizar dinheiro e criar um grupo de pessoas de suporte de TI que valerá muito mais dinheiro ao longo do tempo, faça um hardware interno que seja menos caro, mas mais hardware para redundância.

Você provavelmente deve sentar e analisar planos de desastres e pontos únicos de falha e compará-los com quanto dinheiro você pode perder. Eu não sei qual carga você está esperando nos servidores, mas posso dizer que, se a sua empresa realmente precisa dos serviços de TI para trabalhar, você precisa planejar em cada what-if you can ... drive vai mal, backups externos , fogo na sala do servidor (ou falta de energia ... quantas maneiras você tem energia lá?), falha do controlador, falha da placa-mãe, etc. e quanto tempo você pode ir sem serviços antes que ele enfraqueça o negócio, então quanto vale a pena não descer (ou canalizar para as suas necessidades de suporte) versus quanto você perderia no tempo que levaria para colocar outro sistema em prática?

Se você tiver uma boa equipe, poderá investir em servidores idênticos e no VMWare com uma solução iSCSI ou SAN com RAID, além de um bom servidor de backup para o armazenamento de back-end.

Analise suas necessidades, analise cada cenário de falha possível e veja qual é o custo da redundância e tenha um plano para lidar com essas emergências e, em seguida, veja se deseja confiar em um fornecedor com serviço garantido para esses problemas ou se você quer que suas pessoas estejam preparadas para isso.

    
por 23.07.2009 / 15:14
0

Para ser honesto, é importante dar uma verificação da realidade primeiro de uma perspectiva de negócios. Esta é uma questão técnica que depende de um requisito comercial.

Então, faça a si mesmo uma pergunta. Indo para isso, o que é mais importante para você, a disponibilidade do sistema ou está mantendo o custo baixo? Se ter esse sistema operando sem tempo de inatividade é um requisito, é certamente de seu interesse examinar o hardware premium. Se, no entanto, você está preocupado em ser frugal com o seu orçamento, então, por suposto, a segunda opção para usar sistemas inferiores também faz sentido. Eu usei estações de trabalho como servidores para manter os custos baixos e apenas crie o hábito de construí-los, de modo que, se um servidor em execução em uma estação de trabalho explodir, ele possa ser rapidamente transferido para outro servidor redundante. Enquanto isso não vai ganhar o prêmio demônio da velocidade. Ele preencherá a lacuna entre o primeiro dia e o momento em que você tem o fluxo de caixa adequado para investir nas soluções padrão adequadas do setor.

Outra coisa a considerar é o custo de manutenção do hardware com maior probabilidade de falha em mão de obra e materiais? Às vezes, faz sentido dar um mergulho se você sabe que o suporte de hardware de baixo custo vai colocá-lo atrás da bola 8.

Apenas meus $ 0,02 ... Espero que isso lhe dê algo para mastigar.

    
por 23.07.2009 / 15:28
0
A localização é definitivamente um dos fatores mais importantes que afetam o consumo de energia e, portanto, os custos de computação. Há lugares com climas mais frios do que nos EUA continentais e com mais eletricidade verde disponível. Eu recomendaria a todos que considerassem a localização de um datacenter para dar uma olhada no site da Finlândia sobre estas questões: link

    
por 05.08.2010 / 14:12