Todos os produtos
Search
Central de documentação

Application Real-Time Monitoring Service:How ack-onepilot works

Última atualização: Jun 27, 2026

O componente ack-onepilot injeta automaticamente o agente do Application Real-Time Monitoring Service (ARMS) nos pods do Kubernetes. Em vez de configurar manualmente cada aplicação para monitoramento, o ack-onepilot intercepta as solicitações de criação de pod e adiciona os arquivos e as variáveis de ambiente necessários antes da inicialização do pod.

Arquitetura

O ack-onepilot é composto por duas partes:

  • Serviço de webhook: um webhook de admissão mutante do Kubernetes que intercepta solicitações de criação de pod e modifica a especificação do pod antes do armazenamento no etcd.

  • Init container: um container injetado em cada pod que prepara os arquivos do agente ARMS e os disponibiliza ao container da aplicação por meio de um volume compartilhado.

image

Fluxo de injeção

Quando um pod é criado, o ack-onepilot modifica a especificação do pod em duas etapas antes que o Kubernetes a armazene no etcd.

image

Etapa 1: Defina variáveis de ambiente

O serviço de webhook injeta variáveis de ambiente na especificação do pod. As variáveis específicas dependem da linguagem da aplicação.

Aplicações Java

O webhook anexa parâmetros da Java Virtual Machine (JVM) à variável de ambiente JAVA_TOOL_OPTIONS:

Parâmetro

Finalidade

Chave de licença do ARMS

Autentica o agente no backend do ARMS

Nome da aplicação

Identifica a aplicação no console do ARMS

Região de relatório

Especifica o endpoint para envio dos dados de observabilidade

Caminho do -javaagent

Aponta para o arquivo JAR do agente ARMS preparado pelo init container

Outras informações também são injetadas para facilitar a localização do endpoint de envio de dados.

Na inicialização, a JVM lê JAVA_TOOL_OPTIONS automaticamente e carrega o agente ARMS sem exigir alterações de código na sua aplicação.

Aplicações Go

Para aplicações Go, não são necessários parâmetros semelhantes ao -javaagent.

Etapa 2: Adicionar um init container

O webhook adiciona um init container ao pod. Esse init container executa as seguintes ações:

  1. Prepara o pacote do agente ARMS.

  2. Monta os arquivos do agente em um volume compartilhado, acessível tanto pelo init container quanto pelo container da aplicação.

Ao iniciar, o container da aplicação lê o caminho do -javaagent em JAVA_TOOL_OPTIONS (para Java) para localizar e carregar o agente ARMS. O agente então coleta dados de observabilidade durante todo o ciclo de vida da aplicação.

Perguntas frequentes

A versão do ack-onepilot precisa corresponder à versão do agente ARMS?

Não, elas não estão necessariamente relacionadas. O ack-onepilot recupera o pacote de agente apropriado com base nas configurações de backend .