Introdução
Este tutorial mostra como coletar e encaminhar registros de um cluster DigitalOcean Kubernetes (DOKS) para uma instância Gerenciada por DigitalOcean OpenSearch usando AxoSyslog, um processador de dados de segurança escalável. Seguindo este guia, você aprenderá a configurar um sistema de registro robusto que captura e analisa registros de suas aplicações Kubernetes, tornando mais fácil monitorar, resolver problemas e garantir sua infraestrutura.
Neste tutorial, você usará AxoSyslog para encaminhar registros de um cluster Kubernetes para OpenSearch.
Pré-requisitos
Antes de começar, certifique-se de que você tem os seguintes pré-requisitos em prática:
- Você precisará de acesso a uma conta DigitalOcean Cloud para criar e gerenciar seus recursos de Kubernetes e OpenSearch.
- O interface de linha de comando (CLI) do DigitalOcean,
doctl
, deve estar instalado e configurado em seu computador local. - Um cluster DigitalOcean Kubernetes (DOKS) em execução.
- O gerenciador de pacotes do Kubernetes, Helm, deve ser instalado para gerenciar aplicações em Kubernetes.
- Familiaridade com Kubernetes, Helm, e serviços gerenciados do DigitalOcean.
Caso de Uso
Este projeto é ideal para situações onde você precisa de uma solução de log centralizada para monitorar e analisar logs de várias aplicações executadas em um cluster Kubernetes. Se você estiver gerenciando uma pequena coleção de aplicações ou uma infraestrutura de grande escala, coletar e encaminhar logs the um cluster OpenSearch dedicado ajuda a:
- Monitoramento de Segurança: Detecção e resposta a incidentes de segurança através da análise de logs em tempo real.
- Solução de problemas: Identifique e resolva problemas em seus aplicativos Kubernetes acessando logs detalhados.
- Conformidade: Mantenha um registro de eventos para cumprir com as regulamentações da indústria.
Ao integrar o AxoSyslog com o OpenSearch Gerenciado por DigitalOcean, você pode processar e armazenar em volume eficiente de logs, tornando mais fácil extrair insigtenças valiosas e manter a saúde e a segurança de seus sistemas.
Passo 1 – Criar um cluster OpenSearch
Neste passo, você configurará o componente central de seu sistema de log, o cluster OpenSearch. O OpenSearch será o destino para todos os logs que você coleta de seu cluster Kubernetes. Você criará uma nova instância OpenSearch em sua região escolhida no DigitalOcean executando o seguinte comando.
Substitua lon1
pela sua região escolhida. Para listar os tamanhos de slug disponíveis, acesse nossa documentação de referência da API.
Passo 2 – Gera alguns logs aleatórios
Antes de encaminhar logs para o OpenSearch, você precisa de alguns logs para trabalhar. Se você não tiver um aplicativo já gerando logs dentro de seu cluster Kubernetes, este passo mostrará como implantar um gerador de logs. Este gerador de logs produzirá uma corrente constante de logs de exemplo que pode ser usada para testar e demonstrar seu pipeline de log.
Primeiro, adicione o repositório de gráfico de gerador de logs e instale o gerador de logs:
Em seguida, instale o gerador de logs usando o Helm:
Você pode verificar se o gerador de logs está funcionando visualizando os logs que ele produz:
Passo 3 – Preparar o AxoSyslog Collector para Instalação
Neste passo, você configurará o AxoSyslog Collector, responsável por coletar logs de seu cluster Kubernetes e encaminhá-los para o OpenSearch. Isso envolve fornecer os detalhes de conexão corretos para seu cluster OpenSearch (nome de host, usuário e senha).
Nós usaremos o helm
para instalar o AxoSyslog Collector e passar valores personalizados.
Para configurar o coletor AxoSyslog com o endereço correto, usuário e senha para sua base de dados OpenSearch, siga estes passos:
Script Automatizado
Para simplificar a configuração, você pode usar um script automatizado que obtém os detalhes de conexão necessários para o OpenSearch e atualiza o arquivo de configuração do AxoSyslog.
Salve o seguinte script como update_axoflow_demo.sh
:
Certifique-se de que o seu script tenha permissão de execução antes de executá-lo:
Este script irá obter as informações necessárias de sua conta DigitalOcean usando doctl
e atualizar o arquivo axoflow-demo.yaml
em conformidade.
Passos Manuais para Atualizar axoflow-demo.yaml
Se você preferir configurar manualmente seu coletor AxoSyslog, siga estes passos:
Execute o seguinte comando para extrair o ID da base de dados para opensearch-doks
:
Para recuperar o hostname, nome de usuário e senha, execute os seguintes comandos respectivamente:
Agora, você precisará atualizar manualmente o arquivo axoflow-demo.yaml
:
Abra seu arquivo axoflow-demo.yaml
the um editor de texto e substitua os campos relevantes com os valores extraídos:
Passo 4 – Instalar AxoSyslog-collector
Com a configuração concluída, o próximo passo é implantar o AxoSyslog Collector no seu cluster Kubernetes. Isso permitirá a coleta e encaminhamento de logs para OpenSearch.
Adicione o repositório Helm do AxoSyslog e instale o AxoSyslog Collector usando o arquivo de configuração personalizado:
Para garantir que os logs estão sendo enviados para a porta correta do OpenSearch, atualize a configuração do AxoSyslog Collector atualizando seu configmap
:
Finalmente, exclua os pods existentes para aplicar a configuração atualizada:
Conclusão
A configuração de um pipeline de log de DigitalOcean Kubernetes para OpenSearch usando AxoSyslog não só centraliza seus logs quanto melhora a capacidade de monitoramento, análise e segurança dos seus aplicativos. Com os passos fornecidos neste guia, você pode rapidamente implantar essa solução, obtendo uma visão mais aprofundada do seu ambiente Kubernetes e garantindo que sua infraestrutura permaneça resiliente e conforme as normas.
Source:
https://www.digitalocean.com/community/tutorials/collect-and-forward-kubernetes-logs-to-opensearch