Como habilitar logs de acesso para seu balanceador de carga de aplicativo?

Como Habilitar Logs De Acesso Para Seu Balanceador De Carga De Aplicativo



Um Application Load Balancer (ALB) distribui com eficiência o tráfego entre diferentes servidores ou nós. Isso evita o colapso do aplicativo e fornece alta disponibilidade, maior capacidade e melhor desempenho aos clientes. Além disso, a solicitação feita ao balanceador de carga da aplicação também é registrada no formato “ Registros de acesso ”. Esses logs de visualização são acessíveis aos usuários por meio do painel para analisar o padrão de tráfego e solucionar problemas.

Esboço rápido

Este artigo ilustra os seguintes aspectos:

O que é um log de acesso?

O Registro de acesso é um recurso opcional do balanceador de carga do aplicativo que captura informações detalhadas sobre a solicitação enviada ao balanceador de carga. Esta informação detalhada contém a data e hora de recebimento da solicitação, endereço IP do cliente, latências, porta, etc. na forma de “Acessar arquivos de log” . No Application Load Balancer (ALB), esse recurso deve ser habilitado manualmente. Esses logs de acesso são então recebidos pelo bucket S3, de onde podem ser acessados ​​e visualizados pelo usuário.







O que são arquivos de log de acesso?

Os logs de acesso contêm “Acessar arquivos de log” que são publicados para cada nó do Load Balancer a cada 5 minutos. Pode haver vários logs se o site tiver alto tráfego. Os arquivos de log de acesso seguem um formato especificado:



balde [ / prefixo ] / AWSLogs / ah - conta - eu ia / balanceamento de carga elástico / região / aaaa / milímetros / dd / ah - conta - id_elasticloadbalancing_region_app. carregar - balanceador - id_end - time_ip - endereço_aleatório - corda. registro . gz
  • balde ”: campo contém o nome do bucket que receberá os arquivos de log.
  • prefixo ': é opcional. Este campo conterá um valor se houver algum prefixo especificado pelo usuário no momento da criação do bucket S3. O prefixo não deve conter o “ AWSLogs ”palavra-chave.
  • “aws-ID da conta” : contém o ID da conta AWS do proprietário.
  • região ”: campo contém a região do balanceador de carga.
  • aaa/mm/dd ”: especifica os dados nos quais o log foi entregue.
  • ID do balanceador de carga ”: indica o ID específico do balanceador de carga. Além disso, as barras no ID são substituídas pelos pontos (.).
  • Fim do tempo ”: especifica a data e hora de término do intervalo de registro.
  • endereço de IP ”: especifica o endereço IP no qual o balanceador de carga opera
  • string aleatória ”: contém uma string aleatória gerada pelo sistema.

O que são entradas de log de acesso?

Essas entradas de log de acesso contêm informações sobre cada solicitação feita ao Application Load Balancer. Esses pedidos únicos são referidos como “Entrada de registro” . Essas entradas de log também incluem as solicitações malformadas, ou seja, a solicitação que nunca chegou ao balanceador de carga (ALB). Se as solicitações feitas ao balanceador de carga envolverem soquetes da Web, essa entrada de log só será registrada quando a conexão for fechada.



Como os arquivos de log de acesso são processados?

Por padrão, o acessar arquivos de log são comprimido . Portanto, esses arquivos devem ser descompactados primeiro quando baixados para visualizar as informações. Porém, ao utilizar o console S3, o usuário pode visualizar diretamente as informações desses arquivos de log.





Esses arquivos de registro são gerados como resultado da solicitação feita ao Balanceador de carga . Se atualmente houver alto tráfego no site, os arquivos de log gerados pelo balanceador de carga conterão os dados em gigabytes. Quantidades tão grandes de dados podem ser processado usando ferramentas analíticas como Amazon Athena, Splunk, lógica Sumo, etc.

Como habilitar logs de acesso para Application Load Balancer?

Os logs de acesso podem ser configurados para diferentes regiões usando os seguintes métodos:



  • Método 1: logs de acesso para regiões disponíveis antes de agosto de 2022
  • Método 2: logs de acesso para regiões disponíveis a partir de agosto de 2022 ou posterior

Método 1: logs de acesso para regiões disponíveis antes de agosto de 2022

Para configurar os logs de acesso para as regiões que estavam disponíveis antes de agosto de 2022, siga as etapas mencionadas abaixo:

  • Etapa 1: crie o intervalo S3
  • Etapa 2: editar atributos do balanceador de carga
  • Etapa 3: verificação

Etapa 1: crie o bucket S3

A primeira etapa é criar o bucket S3 para habilitar o log de acesso do ALB. Para isso, acesse o serviço bucket S3 pesquisando-o na barra de pesquisa do Console de gerenciamento da AWS:

De Painel S3 , Clique no “Criar balde” botão:

No Configuração geral , forneça um identificador globalmente exclusivo para o bucket S3 no campo “ Nome do intervalo ' campo de texto. É importante considerar que o “ Região AWS ”deve ser semelhante à região do balanceador de carga:

Mantendo o restante das configurações como padrão, clique no botão “ Criar intervalo ”Botão localizado na parte inferior da interface:

O balde foi criado com sucesso:

De Painel do intervalo S3 , toque em ' S3 ”Nome do bucket para configurar as permissões:

De Console de balde S3 , Clique no ' Permissões ' aba:

Role a interface e clique no botão “ Editar ”do“ Política de intervalo ' seção:

No editor , cole a política abaixo e substitua as seguintes variáveis:

{
'Versão' : '17/10/2012' ,
'Declaração' : [
{
'Efeito' : 'Permitir' ,
'Principal' : {
'AWS' : 'arn:aws:iam::elb-account-id:root'
} ,
'Ação' : 's3:PutObject' ,
'Recurso' : 'meu-s3-arn'
}
]
}
  • ID da conta elb : neste campo, forneça o ID da região da AWS. Esses IDs são fornecidos no documentação oficial da AWS . Role para baixo até “ Registros de acesso para regiões disponíveis antes de agosto de 2022 ”E na política, as regiões com seus respectivos IDs são mencionadas:

  • meu-s3-arn : o ARN do bucket S3 pode ser substituído usando dois formatos:
    • Formato 1: ARN com prefixo
    • Formato 2: ARN sem prefixo

Formato 1: ARN com prefixo : este formato deve ser seguido se o seu intervalo contiver o valor do prefixo:

arn:aws:s3:::nome-do-bucket / prefixo / AWSLogs / ID da conta aws /*
  • Nome do intervalo : substitua este campo pelo nome original do bucket.
  • prefixo : forneça o prefixo se o seu bucket contiver algum. O valor do prefixo é obrigatório conforme especificado neste formato.
  • ID da conta aws: forneça o ID da conta da AWS neste campo. Para isso, toque no nome da conta AWS mencionada no canto superior esquerdo da interface. No menu suspenso, copie o ID da conta:

Formato 2: ARN sem prefixo : este formato deve ser usado quando o bucket não contém nenhum prefixo. Todos os campos especificados permanecerão iguais aos indicados no ARN mencionado acima. A única diferença é que este “ ARN ” não contém nenhum campo “prefixo”:

arn:aws:s3:::nome-do-bucket / AWSLogs / ID da conta aws /*

Aqui o política foi substituído :

Role para baixo até a parte inferior da interface e clique no botão “Salvar alterações” botão para aplicar alterações:

O política foi editado com sucesso :

Etapa 2: editar atributos do balanceador de carga

De Painel EC2 , Clique no “Balanceadores de carga” opção sob o 'Balanceamento de carga' seção do painel de navegação:

De Painel do balanceador de carga , clique no nome do balanceador de carga para ativar registros de acesso . Para esta demonstração, um balanceador de carga tem já foi criado e executando:

Abaixo de ' Detalhes ”Seção, existem várias opções diferentes disponíveis. Clique no ' Atributos ' aba:

De ' Atributos ', clique no botão' Editar ' botão:

Na próxima interface, role para baixo até “ Monitoramento ' seção. Alterne o “ Registros de acesso ”Para ativar o Recurso de registro de acesso . A seguir, clique no “Navegar S3” botão para selecionar o balde:

Depois de clicar no “Navegar S3” botão, uma janela pop-up aparecerá. Escolha o balde S3 e clique no botão “ Escolher ' botão:

Após adicionar o bucket, clique no botão “ Salvar alterações ' botão:

AWS exibirá um Mensagem de confirmação após a configuração bem-sucedida do bucket S3 nos logs de acesso:

Etapa 3: verificação

Para verificar se o bucket foi adicionado, visite o painel do S3 e escolha o bucket:

Aqui, este bucket agora contém uma pasta “AWSLogs/” . Esta pasta conterá todas as informações relacionadas aos Logs de Acesso:

Método 2: logs de acesso para regiões disponíveis a partir de agosto de 2022 ou posterior

Para habilitar logs de acesso para as regiões disponíveis a partir de agosto de 2022 ou posterior, siga as etapas mencionadas abaixo:

  • Crie o intervalo S3.
  • Depois de criar o bucket S3, toque no botão “ Permissões ' aba. Toque em ' Editar ”Na seção seguinte.
  • Substitua a política existente pela seguinte política mencionada:
{
'Versão' : '17/10/2012' ,
'Declaração' : [
{
'Efeito' : 'Permitir' ,
'Principal' : {
'Serviço' : 'logdelivery.elasticloadbalancing.amazonaws.com'
} ,
'Ação' : 's3:PutObject' ,
'Recurso' : 'arn:aws:s3:::bucket-name/prefix/AWSLogs/aws-account-id/*'
}
]
}

Na política mencionada acima, substitua as seguintes variáveis:

  • Nome do intervalo : substitua este campo pelo nome do bucket original.
  • prefixo (opcional) : É um campo opcional. Se o seu bucket contiver algum prefixo, forneça o nome do prefixo neste campo. Porém, o usuário também pode pular este campo se não houver prefixos a serem especificados.

Após especificar esta política, clique no botão “ Salvar alterações ”Para aplicar as alterações. O restante das etapas será seguida na mesma ordem indicada no Método 1.

Dica bônus: desative os logs de acesso

Para desabilitar os logs de acesso no aplicativo, siga os passos abaixo:

  • Selecione o balanceador de carga no painel do balanceador de carga.
  • Role a interface e clique no botão “ Atributos ' aba.
  • Dentro do ' Atributos ”Seção, toque no“ Editar ' botão.
  • Role para baixo até “ Monitoramento ' seção. Aqui, o usuário pode desabilitar o log de acesso alternando o seguinte botão destacado. Acerte o “Salvar alterações” botão para salvar e aplicar alterações:

- O registro de acesso foi desativado com sucesso e os atributos são modificados:

Isso é tudo deste guia

Conclusão

Para habilitar os logs de acesso para o balanceador de carga, edite a política mencionada no bucket S3 criado na guia “Permissões” e clique no botão “Salvar alterações”. As informações contidas nesses arquivos de log podem ser acessadas diretamente no console do bucket S3. O usuário também pode baixar os arquivos de log e descompactá-los para visualizar seu conteúdo. Este blog é uma demonstração passo a passo para ativar e desativar o log de acesso do balanceador de carga.