Pular para o conteúdo

Referencia do Cluster Agent

O Kubetail Cluster Agent e um servidor gRPC baseado em Rust que roda como DaemonSet em cada no do seu cluster Kubernetes. Ele le arquivos de log de contêiner diretamente do sistema de arquivos do no e os transmite para a Cluster API sob demanda. O executavel do servidor e compilado a partir do codigo-fonte localizado no repositorio do Kubetail em crates/cluster_agent e normalmente e implantado usando a imagem Docker kubetail-cluster-agent (veja abaixo). E possivel executar kubetail-cluster-agent como um contêiner independente, mas recomendamos implanta-lo com o chart Helm oficial do Kubetail.

A imagem Docker kubetail-cluster-agent e publicada no Docker Hub e no GitHub Container Registry a cada release:

RegistryImage
Docker Hubkubetail/kubetail-cluster-agent
GHCRghcr.io/kubetail-org/kubetail-cluster-agent

Ha duas variantes disponiveis:

Sufixo da tagImagem baseDescricao
(nenhum)scratchImagem minima, menor footprint
-alpinealpineInclui shell e utilitarios padrao

O entrypoint padrao do contêiner e /cluster-agent/cluster-agent:

Terminal window
cluster-agent --config <FILE> [flags]
FlagShortDefaultDescription
--config-cCaminho para o arquivo de configuracao (obrigatorio)
--addr-aEndereco para escutar conexoes (sobrescreve a configuracao)

O Cluster Agent e configurado exclusivamente por meio de um arquivo de configuracao. O caminho deve ser passado com -c / --config em toda execucao. Variaveis de ambiente podem ser referenciadas no arquivo de configuracao usando a sintaxe padrao de shell.

Terminal window
cluster-agent --config /etc/kubetail/cluster-agent.yaml
## Kubetail Cluster Agent Configuration File
#
# Este arquivo define o comportamento do kubetail cluster agent,
# que roda em clusters Kubernetes para transmitir e processar logs de contêiner.
#
## addr ##
#
# O endereco de rede e a porta aos quais o servidor gRPC deve se vincular.
#
# Valor padrao: :50051
#
addr: :50051
## container-logs-dir ##
#
# O caminho do diretorio onde o Kubernetes armazena os arquivos de log dos contêineres.
# Normalmente isso e um mount do sistema de arquivos do no host.
#
# Valor padrao: /var/log/containers
#
container-logs-dir: /var/log/containers
## logging ##
#
# Configuracao da saida de logs do agent
#
logging:
## enabled ##
#
# Indica se o logging esta habilitado para o agent.
#
# Valor padrao: true
#
enabled: true
## level ##
#
# O nivel minimo de log a ser emitido.
# Valores validos: debug, info, warn, error
#
# Valor padrao: info
#
level: info
## format ##
#
# O formato da saida de logs.
# Valores validos: json, pretty
#
# Valor padrao: json
#
format: json
## tls ##
#
# Configuracao TLS para conexoes gRPC seguras
#
tls:
## enabled ##
#
# Indica se TLS esta habilitado para conexoes gRPC.
#
# Valor padrao: false
#
enabled: false
## cert-file ##
#
# Caminho para o arquivo de certificado TLS.
#
# Valor padrao: ""
#
cert-file: ""
## key-file ##
#
# Caminho para o arquivo de chave privada TLS.
#
# Valor padrao: ""
#
key-file: ""
## ca-file ##
#
# Caminho para o arquivo de certificado CA usado para verificar certificados de cliente.
# Obrigatorio quando client-auth esta definido como require-and-verify.
#
# Valor padrao: ""
#
ca-file: ""
## client-auth ##
#
# Politica de autenticacao de cliente para conexoes gRPC de entrada.
# Valores validos: none, require-and-verify
#
# Valor padrao: none
#
client-auth: none