Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Os registos da rede de contentores em Advanced Container Networking Services para Azure Kubernetes Service (AKS) dão-lhe visibilidade sobre cada fluxo de rede dentro do seu cluster. As métricas dizem-lhe o que está a acontecer na sua rede (uso de largura de banda, taxas de erro). Os registos indicam porquê: quem iniciou uma ligação, que protocolos foram usados e se o tráfego foi permitido ou bloqueado.
Estes registos capturam metadados para cada fluxo de rede:
- Endereços IP de origem e destino, nomes de pods e nomes de serviços
- Namespaces, portas e protocolos
- Direção do trânsito e veredictos de política
Neste contexto, pode correlacionar o comportamento da rede com cargas de trabalho específicas, resolver problemas de conectividade, validar políticas de segurança e realizar análises forenses. Os registos da rede de contentores cobrem o tráfego da Camada 3 (IP), Camada 4 (TCP/UDP) e Camada 7 (HTTP/gRPC/Kafka).
Para gerir o volume e o custo de dados, os registos da rede de contentores suportam agregação de registos de fluxo, que agrupa fluxos semelhantes em registos resumidos em vez de armazenar um registo por evento de ligação. Manténs os padrões operacionais de que precisas enquanto reduzes os custos de armazenamento e ingestão. Para mais informações, consulte Agregação de registos de fluxo.
Os registos de rede de contentores oferecem dois modos:
- Registos armazenados - Recolha contínua com filtros personalizados e agregação de fluxos. É ideal para monitorização e análise a longo prazo.
- Registos on-demand - Captura em tempo real através da CLI do Hubble e da interface do Hubble. Ideal para resolução de problemas improvisada.
Use registos armazenados quando precisar de registos persistentes para conformidade, análise de tendências ou alertas automatizados. Use registos on-demand quando estiver a depurar ativamente um problema de conectividade ou desempenho e precisar de visibilidade imediata sobre o tráfego em tempo real.
Registos armazenados
O modo de registos armazenados é ativado automaticamente sempre que o Advanced Container Networking Services está ativado num cluster. A capacidade está implementada, mas não são gerados registos até que digas à ACNS o que deve capturar.
Para começar a recolher registos, defina ContainerNetworkLog recursos personalizados que especifiquem que tráfego monitorizar: por namespace, pod, serviço, protocolo ou veredicto. Uma vez aplicado um CRD, o agente Cilium começa a gerar fluxos que correspondem aos seus filtros e escreve-os em cada nó. A recolha mantém-se ativa até remover os CRDs ou desativar o ACNS.
Como controla exatamente qual o tráfego registado através dos filtros CRD, pode focar-se nos fluxos que importam e evitar recolher dados desnecessários. Combinada com a agregação de registos de fluxo, esta abordagem mantém os custos de armazenamento previsíveis e foca a análise.
Como funciona o modo de logs armazenados
Os Serviços Avançados de Rede de Contentores utilizam tecnologia eBPF com Cilium para capturar fluxos de rede em cada nó. Uma vez ativado o ACNS e aplicado um ContainerNetworkLog recurso personalizado, o agente Cilium recolhe o tráfego que corresponde ao filtro e escreve registos em formato /var/log/acns/hubble/events.log JSON em cada host. A geração de logs corre inteiramente dentro do cluster e não depende do Azure Monitor.
Para uso em produção, recomendamos ativar o add-on Azure Monitor. Quando ativados, os agentes Container Insights recolhem logs locais do host, aplicam limites de controlo de fluxo e enviam-nos para um workspace do Log Analytics, onde pode obter retenção a longo prazo, fazer consultas KQL e utilizar os dashboards integrados do portal Azure e Grafana. Este é o caminho mais integrado e aquele que a maioria dos clientes deveria escolher.
Se a sua equipa já tiver um pipeline de observabilidade, pode em vez disso encaminhar os mesmos logs locais do host para qualquer coletor ou serviço de registos compatível com OpenTelemetry — seja juntamente com o Azure Monitor ou em seu lugar.
Para mais informações sobre throttling e Container Insights, consulte a documentação Container Insights.
Utilização de registos de rede de contentores com ou sem Azure Monitor
Pode consumir registos de rede de contentores de duas formas. A escolha certa depende se queres uma experiência Azure-native integrada ou se já tens um pipeline de observabilidade que queres continuar a usar.
| Path | O que obtém | Quando escolhê-lo |
|---|---|---|
| Azure Monitor complemento (recomendado) | O Container Insights recolhe registos locais do host num espaço de trabalho de Log Analytics. Tens retenção a longo prazo, KQL, dashboards do portal Azure integrados e dashboards Grafana geridos logo de fábrica. | Queres a experiência mais integrada e pronta para produção no AKS com configuração mínima. |
| Ficheiros do host local utilizando o seu próprio pipeline | O ACNS escreve registos JSON em /var/log/acns/hubble/events.log em cada nó. Encaminha-os para qualquer coletor ou serviço de registo compatível com OpenTelemetry — juntamente com o Azure Monitor ou em seu lugar. |
Já tens uma plataforma centralizada de observabilidade e queres que os registos de rede fiquem lá. |
Para a maioria dos clientes, recomendamos ativar o Azure Monitor. É a forma mais rápida de obter capacidades de retenção, consulta e dashboard sem ter de construir o seu próprio pipeline.
Principais capacidades do modo de armazenamento de logs
Filtros personalizáveis. Defina
ContainerNetworkLogrecursos personalizados para filtrar por namespace, pod, serviço, porta, protocolo, veredicto ou direção de tráfego. Apenas o tráfego correspondente é registado, por isso tens controlo preciso sobre o que é recolhido e o custo.Agregação de logs de fluxo. Fluxos semelhantes são automaticamente agrupados em registos resumidos a cada 30 segundos, reduzindo o volume de dados enquanto preservam sinais operacionais como padrões de comunicação de serviço, taxas de erro e veredictos de segurança. Combinada com filtros direcionados, a agregação permite-lhe manter uma ampla visibilidade sem custos excessivos de ingestão de dados. Para mais informações, consulte Agregação de registos de fluxo.
Opções de armazenamento de log. O ACNS escreve sempre registos localmente em cada nó. A partir daí, pode escolher como os consumir:
Ficheiros locais do anfitrião (sempre ativos): Os registos são armazenados em nós anfitriões em
/var/log/acns/hubble. Os ficheiros rodam automaticamente a 50 MB, e os registos mais antigos são sobrescritos. Use isto diretamente para monitorização de curto prazo em tempo real, ou encaminhe os ficheiros para qualquer coletor ou serviço de registo compatível com OpenTelemetry para uma gestão adicional de registos.Azure Monitor (recomendado): Ative o add-on Azure Monitor para recolher e armazenar registos num espaço de trabalho Log Analytics. Obtém armazenamento seguro e compatível, com retenção a longo prazo, consultas KQL, deteção de anomalias, análise histórica e alertas através do serviço gerido do Prometheus. A geração de registos ainda é executada através do agente Cilium e do CRD
ContainerNetworkLog; O Azure Monitor adiciona a camada de consumo por cima.A
ContainerNetworkLogstabela usa o nível de Analytics por padrão. Podes mudar para o nível Básico para custos de ingestão e retenção mais baixos, mantendo uma experiência de observabilidade semelhante. Cada nível tem um painel dedicado do portal Azure otimizado para as suas capacidades de consulta. Para mais informações sobre planos de tabelas, consulte Log Analytics planos de tabelas. Para aprender a montar o plano da mesa, veja Definir o plano da mesa.
Visualização no portal do Azure. Consulte e analise os logs diretamente no Log Analytics, ou utilize os painéis integrados do portal do Azure. Existe um painel dedicado para cada nível de mesa, por isso tens a mesma experiência de observabilidade independentemente do nível que escolheres. Para mais detalhes, veja Visualize logs no portal Azure.
Visualize logs no portal do Azure
Pode visualizar, consultar e analisar logs de fluxo no portal Azure, no espaço de trabalho Log Analytics do seu cluster.
Os registos da rede de contentores incluem painéis integrados no portal Azure para visualizar dados de fluxo. Existe um painel separado para cada nível da tabela Log Analytics:
| Dashboard | Path | Nível de tabela |
|---|---|---|
| Registos de Fluxo - Nível Básico (ID: 23155) | Azure>Insights>Containers>Networking>Registos de Fluxo - Nível Básico | Básico |
| Registos de Fluxo - Nível de Análise (ID: 23156) | Azure>Insights>Containers>Networking>Log de Fluxo - Nível de Análise | Análises (por padrão) |
Ambos os painéis de controlo mostram quais as cargas de trabalho do AKS que comunicam entre si, incluindo pedidos de rede, respostas, perdas e erros. Utilize o dashboard que corresponde ao nível da tabela configurado para a sua ContainerNetworkLogs tabela.
Dica
A ContainerNetworkLogs tabela, por padrão, está definida para o nível de Analytics. Se quiser reduzir custos, pode mudar para o nível Básico e usar o painel correspondente do Nível Básico sem perder a cobertura de observabilidade. Para mais informações, consulte planos de tabelas do Log Analytics.
Os dashboards do portal Azure têm os seguintes componentes principais:
Visão geral da saúde da rede. A secção superior mostra métricas resumidas (registos de fluxo total, pedidos únicos, pedidos abandonados e pedidos encaminhados) para que possa identificar rapidamente anomalias. As estatísticas são detalhadas por protocolo: pedidos descartados por DNS, respostas HTTP 2xx, taxas de pedidos e respostas da Camada 4, e contagem de descartes. Um grafo de dependência de serviços mostra quais os serviços que comunicam entre si, facilitando a identificação de gargalos e caminhos de tráfego inesperados.
Registos de fluxo e registos de erros. O painel separa os registos de fluxo dos registos de erro em vistas distintas, para que possa focar-se nos erros sem ter de filtrar o tráfego normal. Use os filtros incorporados para restringir os resultados por protocolo, namespace ou veredicto. Por exemplo, para resolver falhas de resolução DNS, filtra os registos de erro pelo protocolo DNS.
Cada entrada de registo inclui etiquetas, carimbos temporais e detalhes de origem/destino para o ajudar a identificar eventos específicos durante uma investigação.
Principais namespaces, cargas de trabalho e erros de DNS. Esta secção destaca os namespaces mais ativos, as cargas de trabalho de maior tráfego, o uso de portas e os erros DNS mais frequentes. Use-o para identificar quais as cargas de trabalho que geram mais tráfego, identificar pedidos perdidos e comparar a distribuição dos protocolos (por exemplo, TCP versus UDP). Padrões invulgares aqui, como picos inesperados ou destinos desconhecidos, podem indicar configurações inadequadas ou preocupações de segurança.
Agregação de registos de fluxo
Os fluxos de rede acumulam-se rapidamente. Um cluster com 200 microserviços pode gerar centenas de milhares de registos de fluxo a cada 30 segundos. Armazenar todos esses dados brutos torna-se caro.
Por exemplo, digamos que tanto client-1 como client-2 falam com um server pod via TCP. Ao longo de uma janela de 30 segundos, os registos de fluxo bruto no nó apresentam-se assim:
| Fonte | Porta de origem | Destination | Porta de destino | Protocolo | Flag |
|---|---|---|---|---|---|
| cliente-1 | 12345 | servidor | 80 | TCP | SYN |
| servidor | 80 | cliente-1 | 12345 | TCP | SYN-ACK |
| cliente-1 | 12345 | servidor | 80 | TCP | ACK |
| cliente-1 | 12345 | servidor | 80 | TCP | PSH |
| servidor | 80 | cliente-1 | 12345 | TCP | ACK |
| Cliente-2 | 23456 | servidor | 80 | TCP | SYN |
| servidor | 80 | Cliente-2 | 23456 | TCP | SYN-ACK |
| Cliente-2 | 23456 | servidor | 80 | TCP | ACK |
| Cliente-2 | 23456 | servidor | 80 | TCP | PSH |
| servidor | 80 | Cliente-2 | 23456 | TCP | ACK |
Com a agregação, esses 10 registos tornam-se dois:
| Fonte | Porta de origem | Destination | Porta de destino | Protocolo | Fluxos enviados | Fluxos recebidos |
|---|---|---|---|---|---|---|
| cliente-1 | 12345 | servidor | 80 | TCP | 4 | 6 |
| Cliente-2 | 23456 | servidor | 80 | TCP | 4 | 6 |
A agregação de registos de fluxo aborda isto agrupando fluxos semelhantes em registos resumidos. Durante cada janela de 30 segundos, fluxos que partilham os mesmos campos-chave de agregação são combinados num único registo com uma contagem de quantos fluxos representa.
Os seguintes campos compõem a chave de agregação:
| Campo | Description |
|---|---|
verdict |
ENCAMINHADO, DESCARTADO ou ERRO |
is_reply |
Se o fluxo é um pedido (falso) ou uma resposta (verdadeira) |
drop_reason_desc |
Razão pela qual os pacotes foram eliminados |
source.namespace |
Espaço de nomes pod de origem |
destination.namespace |
Namespace do pod de destino |
source.workloads |
Carga de trabalho de origem (Deployment, StatefulSet ou DaemonSet) |
destination.workloads |
Carga de trabalho de destino (Deployment, StatefulSet ou DaemonSet) |
source.identity |
Identidade de segurança de origem (sempre presente como recurso de contingência) |
destination.identity |
Identidade de segurança de destino (sempre presente como plano B) |
l4.TCP.destination_port |
Porta de destino TCP |
l4.UDP.destination_port |
Porta de destino UDP |
l7.http.code |
Código de resposta HTTP (200, 404, 500, etc.) |
l7.dns.rcode |
Código de resposta DNS (NOERROR, NXDOMAIN, etc.) |
IP.ipVersion |
IPv4 ou IPv6 |
IP.encrypted |
Se o fluxo está encriptado (WireGuard/IPsec) |
source.cluster_name |
Nome do cluster de origem |
destination.cluster_name |
Nome do cluster de destino |
Numa janela de 30 segundos, fluxos que correspondem a todos estes campos são combinados num único registo. Isto preserva os sinais de que precisa (que serviços comunicam, com que frequência, que erros ocorrem, se o tráfego foi permitido ou bloqueado) enquanto reduz significativamente o volume de dados. Ao contrário da amostragem, que descarta aleatoriamente fluxos e pode perder eventos raros de segurança, a agregação mantém 100% da informação do padrão.
Pontos principais:
- A agregação está ativada e configurada por defeito. Isto reduz os custos de armazenamento e ingestão de registos sem necessidade de ajustes manuais.
- Você controla que tráfego é capturado através de
includeFiltersnoContainerNetworkLogCRD. - Filtros mais estreitos (namespace específico ou pares de serviços) normalmente alcançam melhor compressão porque os fluxos capturados são mais semelhantes.
- Os registos agregados ignoram atributos de alta cardinalidade e de fluxo individual (por exemplo, timestamps individuais, IPs de pods, URLs HTTP, nomes de consultas DNS) para minimizar o volume de ingestão e o custo de armazenamento. São desenhados para deteção de problemas de alto nível. Utilize registos sob demanda para análises e investigações de fluxo detalhadas.
Observação
A redução real de armazenamento varia consoante a configuração do teu filtro, diversidade de carga de trabalho e padrões de tráfego.
Registos a pedido
Os registos on-demand permitem-lhe capturar e inspecionar registos de fluxo em tempo real, sem configuração prévia ou armazenamento persistente. Use logs on-demand quando estiver a tentar resolver problemas de conectividade ou desempenho e precisar de visibilidade imediata.
O ACNS fornece duas ferramentas para captura sob demanda. Para configurar qualquer uma das ferramentas, veja Configurar o modo de registos a pedido.
Hubble CLI
A CLI do Hubble permite-lhe consultar, filtrar e analisar registos de fluxo diretamente a partir do seu terminal. É especialmente útil quando se precisam de filtros de granulação fina, por exemplo, isolar o tráfego por namespace, etiqueta de pod ou veredicto durante uma sessão ativa de depuração.
Interface do usuário do Hubble
A interface do Hubble fornece uma vista gráfica da comunicação entre serviços. É uma boa opção quando se quer traçar visualmente caminhos de tráfego, identificar que serviços estão a comunicar e detetar anomalias sem escrever comandos CLI.
Principais benefícios dos logs sob demanda
- Não é necessária configuração prévia. Comece a capturar fluxos imediatamente, sem definir recursos personalizados ou configurar armazenamento.
- Visibilidade em tempo real. Inspecionar o tráfego em tempo real e visualizar os metadados dos pacotes à medida que surgem problemas.
- Resolução rápida de problemas. Filtre fluxos interativamente através da CLI do Hubble, ou veja os mapas de serviços na UI do Hubble.
- Despesas baixas. Não é necessário armazenamento persistente, por isso não há custos contínuos para investigações ad hoc.
Recomendações para registos armazenados
Comece com filtros amplos e depois reduza a escolha. Quando ativar os registos de fluxo pela primeira vez, use filtros largos para captar tráfego através dos seus namespaces-chave. Executa a configuração durante alguns dias e revê os dados recolhidos no Log Analytics. Veja o volume de dados, o custo e se os fluxos capturados correspondem ao que realmente precisa. Depois ajusta o teu
includeFilterspara focar no tráfego de elevado valor e eliminar o ruído.Use primeiro os painéis de controlo pré-construídos. Os painéis integrados do portal Azure cobrem casos de uso comuns como padrões de comunicação de serviços, taxas de erro e falhas DNS. Começa por aí. Adiciona painéis personalizados ou consultas de Log Analytics apenas se precisares de visibilidade que os dashboards pré-construídos não oferecem.
Revê periodicamente. À medida que as cargas de trabalho e os padrões de tráfego mudam, os seus filtros podem precisar de ser atualizados. Verifique periodicamente o volume de dados e a cobertura de fluxo para garantir que continua a captar o tráfego certo a um custo razoável.
Limitações
Requisitos de plano de dados e funcionalidades:
- O modo de registos armazenados funciona apenas com o plano de dados Cilium.
- Os logs de fluxo da Camada 7 são capturados somente quando o suporte à política da Camada 7 está habilitado. Para obter mais informações, consulte Configurar uma política de camada 7.
- Os fluxos e métricas DNS só são captados quando é aplicada uma política de rede Cilium Fully Qualified Domain Name (FQDN). Para obter mais informações, consulte Configurar uma política FQDN.
Compensações de agregação:
- A agregação de registos de fluxo não preserva carimbos temporais individuais de fluxo, endereços IP por pod ou campos de alta cardinalidade como URLs HTTP e nomes de consultas DNS. Use registos a pedido para investigação por fluxo.
Armazenamento e plataforma:
- O ficheiro local do anfitrião em
/var/log/acns/hubble/está limitado a 50 MB por nó e faz rotação automática. Se precisar de retenção a longo prazo, ative o Azure Monitor (recomendado) ou encaminhe o ficheiro para o seu próprio serviço de loging. - O plano da tabela de logs auxiliares não é suportado.
Preços
Importante
Advanced Container Networking Services é uma oferta paga.
Para obter mais informações sobre preços, consulte Advanced Container Networking Services - Pricing.
Conteúdo relacionado
- Configurar registos de redes de contentores
- Serviços Avançados de Rede de Contentores para AKS
- Observabilidade de Redes de Contentores em Serviços Avançados de Redes de Contentores
- Segurança de Redes de Contentores em Serviços Avançados de Redes de Contentores