Balanceamento de carga entre balanceadores usando mod-proxy-balancer

2

Usando o balanceador proxy-mod do Apache, eu gostaria de equilibrar entre dois balanceadores. Isso é possível?

Antecedentes:

Estamos em processo de atualização de algumas das nossas pilha de servidores e, para um processo de implantação, queremos introduzir lentamente a nova pilha enviando um pequeno percentual de usuários para a nova pilha.

Eu tenho um balanceador definido para a pilha antiga e um balanceador definido para a nova pilha. O que eu gostaria é ter um terceiro balanceador cujos membros são os outros balanceadores.

Exemplo:

<Proxy balancer://oldstack>
    BalancerMember http://10.10.10.5    retry=30 timeout=20 route=old1
    BalancerMember http://10.10.10.6    retry=30 timeout=20 route=old2
</Proxy>

<Proxy balancer://newstack>
    BalancerMember http://10.10.10.8    retry=30 timeout=20 route=new1
    BalancerMember http://10.10.10.9    retry=30 timeout=20 route=new2
</Proxy>

<Proxy balancer://entrypoint>
    BalancerMember balancer://oldstack  retry=30 timeout=20 route=old loadfactor=90  #90%
    BalancerMember balancer://newstack  retry=30 timeout=20 route=new loadfactor=10  #10%
    ProxySet stickysession=ROUTEID
</Proxy>

Quando tento executar isso, ele reclama [warn] proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.

É possível ter um BalancerMember como outro balanceador?

    
por Scott Coldwell 20.02.2014 / 18:26

1 resposta

0

A documentação é inconclusiva, mas eu não acho que você pode fazer isso dessa forma, você precisa cavar no mod_proxy_balancer para confirmar. Como o @ETL sugeriu, você pode fazer isso movendo cada grupo de balanceadores para um host virtual Apache separado.

Ou possivelmente, algo assim funcionaria?

<Proxy balancer://entrypoint>
  # Members of Old stack
  BalancerMember http://10.10.10.5 retry=30 timeout=20 route=old1 loadfactor=45
  BalancerMember http://10.10.10.6 retry=30 timeout=20 route=old2 loadfactor=45
  # Members of new stack
  BalancerMember http://10.10.10.8 retry=30 timeout=20 route=new1 loadfactor=5
  BalancerMember http://10.10.10.9 retry=30 timeout=20 route=new2 loadfactor=5
  ProxySet stickysession=ROUTEID
</Proxy>
    
por 02.10.2016 / 12:54