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 ferramenta AWS OpsWorks A HAProxy camada Stacks é uma AWS OpsWorks Camada de pilha que fornece um modelo 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 camada HAProxy
-
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.
- HAProxyestatísticas
-
Se a camada coleta e exibe estatísticas. O valor padrão é Yes.
- Estatísticas URL
-
O URL caminho da página de estatísticas. O completo URL é http://
DNSName
StatisticsPath
em que,DNSName
é o DNS nome da instância associada. O valorStatisticsPath
o valor é /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.
- Verificação de saúde URL
-
O URL sufixo da verificação de saúde. HAProxyusa isso URL para chamar periodicamente um HTTP método 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 URL sufixo é “/”, que corresponde à página inicial da instância do servidor: http://
DNSName
/. - Health check method
-
Um HTTP método a ser usado para verificar se as instâncias estão funcionando. O valor padrão é OPTIONSe você também pode especificar GETou 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 arquivo incorporado AWS OpsWorks Compila o grupo de segurança com 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; AWS OpsWorks O 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 camada HAProxy funciona
Por padrão, HAProxy faz o seguinte:
-
Escuta solicitações nas HTTPS portas HTTP e.
Você pode configurar HAProxy para ouvir apenas na HTTPS porta HTTP ou 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, AWS OpsWorks As pilhas são configuradas 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 oferece uma maneira 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 saúde funcione corretamente com o OPTIONS método padrão, seu aplicativo deve retornar um código de status 2xx ou 3xx.
Por padrão, quando você adiciona uma instância a uma HAProxy camada, AWS OpsWorks O Stacks atribui a ele um endereço IP elástico para representar o aplicativo, que é público para o mundo. Como o endereço IP elástico da HAProxy instância é o único aplicativo exposto publicamenteURL, você não precisa criar e gerenciar nomes de domínio público para as instâncias subjacentes do servidor de aplicativos. 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 por (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, AWS OpsWorks O 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, AWS OpsWorks O Stacks exclui 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, AWS OpsWorks Stacks atribui o endereço à nova instância.
-
Caso contrário, AWS OpsWorks O Stacks atribui um novo endereço IP elástico à instância e você deve atualizar as configurações do DNS registrador 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, AWS OpsWorks As pilhas acionam 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, AWS OpsWorks As pilhas também acionam 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 conforme especificadoURL.
Para exibir estatísticas HAProxy
-
Obtenha o DNS nome público da HAProxy instância na página Detalhes da instância e copie-o.
-
Na página Camadas, clique HAProxypara abrir a página de detalhes da camada.
-
Obtenha as estatísticas URL dos detalhes da camada e anexe-as ao nome públicoDNS. Por exemplo:
http://ec2-54-245-102-172.us-west-2.compute.amazonaws.com/haproxy?stats
para isso. -
Cole o URL da etapa anterior em seu navegador e use o nome de usuário e a senha que você especificou ao criar a camada para abrir a página de estatísticas.