É possível alterar a localização do arquivo de configuração no haproxy?

1

Eu instalo o Haproxy em /apps/haproxy/usr/local/sbin . Em vez de colocar a configuração em /etc/haproxy/haproxy.cfg , desejo usar a configuração padrão em /apps/haproxy/conf/haproxy.cfg e /etc/default/haproxy . Como iniciar o Haproxy com o local de configuração personalizado?

N.B eu deveria fazer o aplicativo haproxy móvel.

Introdução

Eu instalo o Haproxy na máquina com o usuário que só tem acesso em / apps. Então eu não posso instalar qualquer coisa que use / etc como local de configuração. Descobri como instalar o haproxy em / apps, mas as configurações não estão instaladas.

Atualizar

Prom resposta anterior eu entendo o -f param para definir haproxy.cfg location. Como sobre a configuração em /etc/default/haproxy ? Existe uma maneira de executar o haproxy sem referir /etc/default/haproxy (sempre ENABLED=1 )?

    
por Harris Adamovic 26.08.2016 / 12:23

1 resposta

1

Aqui está um exemplo de um arquivo simples que criei em um ambiente em que eu tinha flexibilidade limitada e não estava usando nenhum mecanismo de controle de serviço. Esse script era executável e no caminho e foi executado para iniciar ou recarregar o HAProxy. Personalize com seus caminhos. Quebras de linha adicionadas para maior clareza:

#!/usr/bin/bash

echo "validating configuration..."
/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c \ 
&& echo "config is valid, reloading..." \
&& /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg \
-p /var/run/haproxy.pid \
-sf $(cat /var/run/haproxy.pid)

O -f especifica o arquivo de configuração, -c verifica a configuração. Se isso falhar, o && impede o recarregamento porque a primeira execução do HAProxy (validando a configuração) sai diferente de zero.

Na segunda invocação, -p especifica o arquivo pid para o qual o novo processo deve gravar seu id de processo, e -sf direciona o HAProxy a fazer um recarregamento, assumindo o controle do número de processo retornado do antigo arquivo existente. Isso fará com que o processo antigo seja encerrado assim que todas as conexões existentes forem drenadas.

    
por 29.08.2016 / 13:47

Tags