Coleta de Syslog com Insights de Contêiner
Os Insights de Contêiner oferecem a capacidade de coletar os eventos de Syslog dos nós do Linux nos clusters do AKS (Azure Kubernetes Service). Isso inclui a capacidade de coletar logs de componentes do plano de controle, como kubelet. Os clientes podem também usar o Syslog para monitorar os eventos de segurança e integridade, normalmente ingerindo syslog em sistemas SIEM como o Microsoft Sentinel.
Pré-requisitos
- É necessário ter a autenticação de identidade gerenciada habilitada no cluster. Para habilitar, consulte Migrar o cluster do AKS para autenticação de identidade gerenciada. Observação: Habilitar a Identidade Gerenciada criará uma nova DCR (Regra de Coleta de Dados) chamada
MSCI-<WorkspaceRegion>-<ClusterName>
- A porta 28330 deve estar disponível no nó do host.
- Versões mínimas de componentes do Azure
- CLI do Azure: a versão mínima necessária para a CLI do Azure é 2.45.0 (link para notas sobre a versão). Consulte Como atualizar a CLI do Azure para obter as instruções de atualização.
- Extensão AKS-Preview da CLI do Azure: a versão mínima necessária para a extensão AKS-Preview da CLI do Azure é 0.5.125 (link para notas sobre a versão). Consulte Como atualizar extensões para obter as diretrizes de atualização.
- Versão da imagem do Linux: a versão mínima para a imagem do Linux do nó do AKS é 2022.11.01. Consulte Atualizar imagens de nó do AKS (Serviço de Kubernetes do Azure) para obter ajuda para atualizar.
Como ativar o Syslog
No portal do Azure
Navegue até o cluster AKS. Abra a guia Insights do cluster. Abra o painel Configurações do Monitor. Clique em Editar configurações de coleção e marque a caixa Habilitar coleção Syslog
Usando comandos da CLI do Azure
Use o comando a seguir na CLI do Azure para habilitar a coleta de syslog ao criar um cluster do AKS.
az aks create -g syslog-rg -n new-cluster --enable-managed-identity --node-count 1 --enable-addons monitoring --enable-msi-auth-for-monitoring --enable-syslog --generate-ssh-key
Use o seguinte comando na CLI do Azure para habilitar a coleta de Syslog em um cluster do AKS existente.
az aks enable-addons -a monitoring --enable-msi-auth-for-monitoring --enable-syslog -g syslog-rg -n existing-cluster
Usando modelos do ARM
Você também pode usar modelos do ARM para habilitar a coleção syslog
Baixe o modelo no Arquivo de conteúdo do GitHub e salve-o como existingClusterOnboarding.json.
Baixe o arquivo de parâmetro no Arquivo de conteúdo do GitHub e salve-o como existingClusterParam.json.
Edite os valores no arquivo de parâmetros:
aksResourceId
: use os valores para na página Visão Geral do AKS para o cluster do AKS.aksResourceLocation
: use os valores para na página Visão Geral do AKS para o cluster do AKS.workspaceResourceId
: use a ID do recurso do seu workspace do Log Analytics.resourceTagValues
: corresponda os valores de marca especificados para a DCR (regra de coleta de dados) da extensão de Insights do contêiner do cluster e o nome da DCR. O nome será MSCI-<clusterName>-<clusterRegion> e esse recurso será criado em um grupo de recursos de cluster do AKS. Se essa for a primeira integração, você poderá definir os valores arbitrários da marca.enableSyslog
: Definido como TruesyslogLevels
: Matriz de níveis de syslog para coleta. O padrão coleta todos os níveis.syslogFacilities
: Matriz de instalações de syslog para coleta. O padrão coleta todas as instalações
Observação
Atualmente, a personalização do nível e das instalações do Syslog só está disponível por meio de modelos do ARM.
Implantar o modelo
Implante o modelo com o arquivo de parâmetro usando qualquer método válido para implantar modelos do Resource Manager. Para exemplos de métodos diferentes, confira Implantar os modelos de exemplo.
Implantar com o Azure PowerShell
New-AzResourceGroupDeployment -Name OnboardCluster -ResourceGroupName <ResourceGroupName> -TemplateFile .\existingClusterOnboarding.json -TemplateParameterFile .\existingClusterParam.json
A alteração da configuração pode levar alguns minutos para ser concluída. Quando terminar, uma mensagem semelhante ao seguinte exemplo incluirá este resultado:
provisioningState : Succeeded
Implantar com a CLI do Azure
az login
az account set --subscription "Subscription Name"
az deployment group create --resource-group <ResourceGroupName> --template-file ./existingClusterOnboarding.json --parameters @./existingClusterParam.json
A alteração da configuração pode levar alguns minutos para ser concluída. Quando terminar, uma mensagem semelhante ao seguinte exemplo incluirá este resultado:
provisioningState : Succeeded
Como acessar os dados de Syslog
Acesso usando pastas de trabalho internas
Para obter um instantâneo rápido dos dados do syslog, os clientes podem usar nossa pasta de trabalho interna do Syslog. Há duas maneiras de acessar a pasta de trabalho interna.
Opção 1 – a guia Relatórios nos Insights do contêiner. Navegue até o cluster AKS. Abra a guia Insights do cluster. Abra a guia Relatórios e procure a pasta de trabalho do Syslog.
Opção 2 – A guia Pastas de Trabalho no AKS Navegue até o cluster. Abra a guia Pastas de Trabalho do cluster e procure a pasta de trabalho do Syslog.
Acesso usando um painel do Grafana
Os clientes podem usar nosso painel do Syslog para Grafana para obter uma visão geral de seus dados do Syslog. Os clientes que criarem uma nova instância do Grafana gerenciada pelo Azure terão esse painel disponível por padrão. Os clientes com instâncias existentes ou os que executam sua própria instância podem importar o painel do Syslog do Marketplace do Grafana.
Observação
Você precisará ter a função Leitor de Monitoramento na Assinatura que contém a instância do Grafana Gerenciado do Azure para acessar o syslog do Container Insights.
Acessar usando consultas de log
Os dados de Syslog são armazenados na tabela Syslog no workspace do Log Analytics. Você pode criar suas próprias consultas de log no Log Analytics para analisar esses dados ou usar uma das consultas predefinidas.
Você pode abrir o Log Analytics no menu Logs e, depois, no menu Monitor para acessar os dados de Syslog para todos os clusters ou no menu do cluster do AKS para acessar os dados de Syslog apenas para esse cluster.
Consultas de exemplo
A tabela a seguir fornece diferentes exemplos de consultas de log que recuperam registros do Syslog.
Consulta | Descrição |
---|---|
Syslog |
Todos os Syslogs |
Syslog | where SeverityLevel == "error" |
Todos os registros do Syslog com a severidade de erro |
Syslog | summarize AggregatedValue = count() by Computer |
Contagem de registros do Syslog por computador |
Syslog | summarize AggregatedValue = count() by Facility |
Contagem de registros do Syslog por recurso |
Syslog | where ProcessName == "kubelet" |
Todos os registros do Syslog do processo kubelet |
Syslog | where ProcessName == "kubelet" and SeverityLevel == "error" |
Registros do Syslog do processo kubelet com erros |
Editar as configurações de coleta de Syslog
Para modificar a configuração de coleta de Syslog, modifique a DCR (regra de coleta de dados) criada quando você a habilitou.
Selecione Regras de Coleta de Dados no menu Monitor no portal do Azure.
Selecione a DCR e, em seguida, Exibir fontes de dados. Selecione a fonte de dados do Syslog do Linux para exibir os detalhes da coleta de Syslog.
Observação
Uma DCR é criada automaticamente quando você habilita o syslog. A DCR segue a convenção de nomenclatura MSCI-<WorkspaceRegion>-<ClusterName>
.
Selecione o nível mínimo de log para cada instalação que você quer coletar.
Próximas etapas
Depois de configurar, os clientes podem começar a enviar dados do Syslog para as ferramentas de sua escolha
Leia mais
Compartilhe seus comentários sobre esse recurso aqui: https://forms.office.com/r/BBvCjjDLTS
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de