As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
HAProxy AWS OpsWorks Camada de pilhas
nota
Essa camada está disponíveis apenas para o Chef 11 e pilhas anteriores com base em Linux.
A camada AWS OpsWorks Stacks é uma HAProxy camada AWS OpsWorks Stacks que fornece um plano para instâncias que hospedam um HAProxy
nota
As pilhas estão limitadas a uma única região. Para distribuir seu aplicativo em várias regiões, é necessário criar uma pilha separada para cada região.
Para criar uma HAProxy camada
-
No painel de navegação, clique em Layers.
-
Na página Layers, clique em Add a Layer ou + Layer. Em Tipo de camada, selecione HAProxy.
A camada tem as seguintes definições de configuração, as quais são opcionais.
- HAProxy estatísticas
-
Se a camada coleta e exibe estatísticas. O valor padrão é Yes.
- Statistics URL
-
A cominho do URL da página estática. O URL completo é http://
DNSName
StatisticsPath
, ondeDNSName
está o nome DNS da instância associada. OStatisticsPath
valor padrão é /haproxy? stats, que corresponde a algo como: http://ec2-54-245-151-7.us-west-2.compute.amazonaws.com/haproxy?stats. - Statistics user name
-
O nome de usuário da página de estatísticas, que você deve fornecer para visualizar a página de estatísticas. O valor padrão é “opsworks”.
- Statistics password
-
A senha da página de estatísticas, que você deve fornecer para visualizar a página de estatísticas. O valor padrão é uma string gerada aleatoriamente.
- Health check URL
-
O sufixo do URL da verificação de saúde. HAProxy usa essa URL para chamar periodicamente um método HTTP em cada instância do servidor de aplicativos para determinar se a instância está funcionando. Se a verificação de integridade falhar, HAProxy interrompe o roteamento do tráfego para a instância até que ela seja reiniciada, manualmente ou por meio de recuperação automática. O valor padrão para o sufixo do URL é “/”, que corresponde à página inicial da instância do servidor: http://
DNSName
/. - Health check method
-
Um método HTTP para ser usado a fim de verificar se as instâncias estão funcionando. O valor padrão é OPTIONS, e você também pode especificar GET ou HEAD. Para obter mais informações, consulte httpchk
. - Grupos de segurança personalizados
-
Essa configuração aparece se você optar por não associar automaticamente um grupo de segurança embutido do AWS OpsWorks Stacks às suas camadas. Você deve especificar qual grupo de segurança associar com a camada. Certifique-se de que o grupo tenha as configurações corretas para permitir o tráfego entre as camadas. Para obter mais informações, consulte Criar uma nova pilha.

nota
Grave a senha para uso posterior; o AWS OpsWorks Stacks não permite que você visualize a senha depois de criar a camada. No entanto, você pode atualizar a senha acessando a página Edit da camada e clicando em Update password na guia General Settings.

Como a HAProxy camada funciona
Por padrão, HAProxy faz o seguinte:
-
Detecta solicitações nas portas HTTP e HTTPS.
Você pode configurar HAProxy para ouvir apenas na porta HTTP ou HTTPS substituindo o modelo de configuração do Chef,
haproxy.cfg.erb
. -
Direciona o tráfego de entrada para instâncias que fazem parte de qualquer camada do servidor do aplicativo.
Por padrão, o AWS OpsWorks Stacks é configurado HAProxy para distribuir tráfego para instâncias que são membros de qualquer camada do servidor de aplicativos. Você poderia, por exemplo, ter uma pilha com as camadas Rails App Server e PHP App Server, e um HAProxy mestre distribui o tráfego para as instâncias em ambas as camadas. É possível configurar o roteamento padrão utilizando uma receita personalizada.
-
Direciona o tráfego em diversas Zonas de disponibilidade.
Se uma Zona de disponibilidade for desativada, o load balancer direciona o tráfego de entrada para instâncias em outras zonas para que o aplicativo continue a ser executado sem interrupção. Por esse motivo, uma prática recomendada é distribuir os servidores de aplicativos em várias Zonas de disponibilidade.
-
Executa periodicamente o método de verificação de integridade em cada instância do servidor do aplicativo avaliar sua integridade.
Se o método não retornar dentro de um período de tempo limite especificado, presume-se que a instância falhou e HAProxy interrompe o roteamento de solicitações para a instância. AWS OpsWorks O Stacks também fornece uma forma de substituir automaticamente as instâncias com falha. Para obter mais informações, consulte Como usar a correção automática. Você pode alterar o método de verificação de integridade ao criar a camada.
-
Coleta as estatísticas e, como opção, as exibe em uma página da Web.
Importante
Para que a verificação de integridade funcione corretamente com o método OPÇÕES padrão, o aplicativo deve retornar um código de status 2xx ou 3xx.
Por padrão, quando você adiciona uma instância a uma HAProxy camada, o AWS OpsWorks Stacks atribui a ela um endereço IP elástico para representar o aplicativo, que é público para o mundo. Como o endereço IP elástico da instância HAProxy é o único URL exposto publicamente do aplicativo, não é necessário criar e gerenciar nomes de domínio público para as instâncias do servidor de aplicativo subjacente. Você pode obter o endereço na página Instâncias e examinar o endereço IP público da instância, como a ilustração a seguir mostra. Um endereço seguido de (EIP) é um endereço IP elástico. Para obter mais informações sobre endereços IP elásticos, consulte Endereços IP elásticos (EIP).

Quando você interrompe uma HAProxy instância, o AWS OpsWorks Stacks retém o endereço IP elástico e o reatribui à instância quando você a reinicia. Se você excluir uma HAProxy instância, por padrão, o AWS OpsWorks Stacks excluirá o endereço IP da instância. Para manter o endereço desmarque a opção Excluir o IP elástico da instância, como mostrado na ilustração a seguir.

Essa opção afeta o que acontece ao adicionar uma nova instância à camada para substituir uma instância excluída:
-
Se você manteve o endereço IP elástico da instância excluída, o AWS OpsWorks Stacks atribui o endereço à nova instância.
-
Caso contrário, o AWS OpsWorks Stacks atribuirá um novo endereço IP elástico à instância e você deverá atualizar as configurações do registrador de DNS para mapear para o novo endereço.
Quando as instâncias do servidor de aplicativos ficam on-line ou off-line, manualmente ou como consequência da escalabilidade automática ou da autorrecuperação; a configuração do balanceador de carga deve ser atualizada para direcionar o tráfego até o conjunto atual de instâncias on-line. Essa tarefa é processada automaticamente pelas receitas internas da camada:
-
Quando novas instâncias são ativadas, o AWS OpsWorks Stacks aciona um evento de ciclo de vida do Configure. As receitas de configuração integradas da HAProxy camada atualizam a configuração do balanceador de carga para que ela também distribua solicitações para qualquer nova instância do servidor de aplicativos.
-
Quando as instâncias ficam off-line ou uma instância falha em uma verificação de saúde, o AWS OpsWorks Stacks também aciona um evento de ciclo de vida do Configure. As receitas de HAProxy configuração atualizam a configuração do balanceador de carga para rotear o tráfego somente para as instâncias on-line restantes.
Finalmente, você também pode usar um domínio personalizado com a HAProxy camada. Para obter mais informações, consulte Usando domínios predefinidos.
Página de estatísticas
Se você tiver ativado a página de estatísticas, ela HAProxy exibirá uma página contendo uma variedade de métricas no URL especificado.
Para ver HAProxy estatísticas
-
Obtenha o nome DNS público da HAProxy instância na página Detalhes da instância e copie-o.
-
Na página Camadas, clique em HAProxy para abrir a página de detalhes da camada.
-
Obtenha o URL das estatísticas nos detalhes da camada e anexe-os ao nome DNS público. Por exemplo:
http://ec2-54-245-102-172.us-west-2.compute.amazonaws.com/haproxy?stats
para isso. -
Cole o URL da etapa anterior no navegador e use o nome do usuário e a senha especificada ao criar a camada para abrir a página de estatísticas.