Carregue o IIS balanceado. Devo usar NLB, ou proxy reverso baseado em linux, ou algo mais?

6

Qual seria a melhor abordagem para balanceamento de carga, pelo menos, 2-3 servidores Windows 2008 R2 IIS executando uma infinidade de aplicativos .NET? Minhas escolhas parecem ser:

1) Balanceador de carga de dispositivo de rede baseado em hardware, como um Cisco CSS
2) Windows NLB
3) Algum tipo de proxy baseado em linux, haproxy ou outro

Os três servidores funcionam como VMs em um farm do vSphere, por isso, tenho a capacidade de clonar a contagem de instâncias em períodos de alta carga. Eu controlo o switch em que os hosts do vSphere estão conectados (Cisco 3750), mas não controle a infra-estrutura de switching / roteamento além disso para os clientes.

(1) É muito caro e provavelmente um exagero para minhas necessidades. Eu incluí isso no caso de alguém descobrir uma maneira inteligente de fazer isso no meu kit de rede existente, o que duvido.

(2) parece ser a opção óbvia "embutida", mas parece ser bastante complicado com interfaces de rede, multicast e geralmente outras coisas que parecem desnecessariamente complexas. Também é bastante estúpido, pois não é possível remover hosts do pool se eles começarem a gerar 500 erros ou se der errado.

(3) é a opção mais interessante, pois parece oferecer mais flexibilidade e personalização, mas sem ter que mexer na rede. No entanto, enquanto eu estou familiarizado com os recursos de proxy reverso do lighttpd etc, eu não sou tão bem lido em outras opções como o HAProxy, que pode ser capaz de oferecer muito mais.

Qual você escolheria, e há algo em que eu não tenha pensado?

    
por growse 04.03.2011 / 22:59

4 respostas

10

No Stackoverflow, usamos o HAProxy para equilibrar os servidores da Web do Windows Server 2008 R2 IIS 7 com grande sucesso. Nós amamos o HAProxy e achamos que ele é muito flexível.

    
por 05.03.2011 / 01:28
3

Quanto tráfego você está falando? A Citrix oferece uma versão gratuita de seu balanceador de carga Netscaler como uma máquina virtual para ESX, Hyper-V e XenServer. É chamado Netscaler VPX Express e oferece até 5Mb de taxa de transferência para balanceamento de carga. Também inclui uma licença de VPN de 10 usuários como uma solução de acesso remoto. Eu tenho usado internamente com grande sucesso.

Aqui está um post recente da Citrix que discute o recente aumento da VM livre de 1Mb para 5Mb: Link

    
por 04.03.2011 / 23:15
3

Eu usei o NLB para serviços da web do IIS por anos com boa experiência. Não é realmente um balanceador de carga, mais uma ferramenta de redundância. A carga não é compartilhada de forma inteligente entre os servidores, mas é realmente muito bom poder derrubar um servidor para atualizações e ter tudo funcionando com tempo de atividade completo. Eu recomendo que você comece com o NLB e veja se isso é bom o suficiente para você. É grátis e muito simples depois de tudo.

    
por 05.03.2011 / 00:50
2

Não é realmente uma resposta, mas esta (redação) pode dar-lhe uma boa informação de base para ajudar na sua escolha: Tornando as aplicações escaláveis com balanceamento de carga

    
por 11.03.2011 / 00:03