Introdução
Este tutorial mostra como coletar e encaminhar logs the um cluster DigitalOcean Kubernetes (DOKS) para uma instância Gerenciada por DigitalOcean OpenSearch usando AxoSyslog, um processador de dados de segurança escalável. Ao seguir este guia, você aprenderá a configurar um sistema de log robusto que captura e analisa logs de suas aplicações Kubernetes, tornando mais fácil monitorar, solucionar problemas e asegurar sua infraestrutura.
Neste tutorial, você usará AxoSyslog para encaminhar logs 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 de nuvem DigitalOcean para criar e gerenciar seus recursos Kubernetes e OpenSearch.
- O interface de linha de comando (CLI) DigitalOcean,
doctl
, deve estar instalado e configurado em sua máquina local. - Um cluster Kubernetes DigitalOcean (DOKS) em execução.
- O gerenciador de pacotes Kubernetes, Helm, deve ser instalado para gerenciar aplicações Kubernetes.
- Familiaridade com Kubernetes, Helm, e serviços gerenciados por 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 em escala grande, 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 do分析 de registros em tempo real.
- Resolução de problemas: Identifique e resolve problemas em seus aplicativos Kubernetes acessando registros detalhados.
- Cumprimento de Regras: 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 grande de registros, tornando mais fácil extrair insights valiosos e manter a saúde e a segurança dos seus sistemas.
Passo 1 – Criar um cluster OpenSearch
Neste passo, você configurará o componente central de seu sistema de registro, o cluster OpenSearch. O OpenSearch será o destino para todos os registros que você coletar de seu cluster Kubernetes. Você criará uma nova instância OpenSearch em sua região escolhida no DigitalOcean executando o comando a seguir.
Substitua lon1
com sua região desejada. Para listar os tamanhos de slug disponíveis, visite 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 deployar 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 do 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 do OpenSearch e atualiza o arquivo de configuração AxoSyslog.
Salve o seguinte script como update_axoflow_demo.sh
:
Verifique se você tem permissão de execução no seu script antes de executá-lo:
Este script irá obter as informações necessárias de sua conta DigitalOcean usando doctl
e atualizar seu 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ê precisa atualizar manualmente o arquivo axoflow-demo.yaml
:
Abra seu arquivo axoflow-demo.yaml
the um editor de texto e substitua os campos relevantes pelos 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 habilitará a coleta e o 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 de OpenSearch correta, atualize a configuração do AxoSyslog Collector atualizando seu configmap
:
Finalmente, exclua os podes 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 apenas centraliza seus logs, mas também melhora sua capacidade de monitorar, analisar e asegurar suas aplicações. Com os passos fornecidos neste guia, você pode rapidamente implementar essa solução, obtendo uma visão mais profunda do seu ambiente Kubernetes e garantindo que sua infraestrutura permaneça resistente e conforme as normas.
Source:
https://www.digitalocean.com/community/tutorials/collect-and-forward-kubernetes-logs-to-opensearch