Balanceamento de carga com fantoche

2

Estou tentando configurar um sistema de balanceamento de carga. Meu load balancer (nginx) tem um arquivo conf onde eu deveria listar todos os IPs dos servidores upstream.

Eu poderia colocar o IP no conf manualmente, mas desta forma eu precisaria alterar o arquivo conf toda vez que eu adicionasse / removesse um servidor upstream.

Por enquanto, eu criei duas ideias diferentes, mas não gosto muito de nenhuma delas:

1 - Peça a cada máquina upstream para usar Recursos exportados para criar um arquivo com seu IP. Depois, o servidor do balanceador de carga terá um "conf_directory / * include" e carregará todos os arquivos criados pelos servidores upstrem. Como o balanceador de carga está usando o nginx isso pode ser feito, mas se eu não quiser configurar algo que não tenha o "include" nos arquivos conf, esta solução não funcionará.

2 - Se a configuração não suportar o comando "include", poderíamos ter novamente, todos os servidores upstream usam os recursos exportados para criar um arquivo com seu IP e, posteriormente, o balanceador de carga executa um comando que iria pegar todos os arquivos e gerar a configuração

Ambas as versões adicionam a mesma técnica, a diferença é que a versão 2 é usada quando o servidor (que precisa ter um conf gerado) não reconhece um comando como "include" dentro de seu próprio conf.

Agora, minha pergunta é: existe alguma maneira de fazer isso de uma forma diferente? Eu suspeito que existe, desde fantoche é feito para gerenciar vários servidores, parece um pouco estranho não ter uma maneira fácil de configurar balanceadores de carga.

EDIT: Afinal, a primeira solução também não funciona, porque eu não posso usar a diretiva include dentro do upstream no conf nginx

    
por Gonçalo Queirós 25.05.2010 / 22:29

1 resposta

0

Use o módulo concat do R.I.Pienaar. Com isso, você pode exportar / coletar snippets de arquivos de configuração e concatená-los no destino em um único arquivo.

    
por 26.05.2010 / 14:35