Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Certificados para injeção de sidecar para rastreamento de solicitações

O mecanismo de injeção de sidecar, que é ativado ao usar --set httpHeaderInjectorWebhook.enabled=true ao instalar o agente, cria um certificado autoassinado e utiliza um ClusterRole que concede acesso de gravação aos objetos Secret e MutatingWebhookConfiguration no cluster Kubernetes.

Se por motivos de segurança não for desejável criar ClusterRoles que concedam direitos de gravação em todo o cluster, ou se houver maneiras alternativas de fornecer um certificado:

  1. Gere um certificado autoassinado localmente.

  2. Use o cert-manager k8s (se já estiver no cluster) com um ClusterIssuer.

Gere um certificado localmente

Para gerar um certificado localmente, siga os seguintes passos:

  1. Baixe o script de geração de certificado e execute-o para produzir um arquivo de valores helm (tls_values.yaml) com o certificado correto:

    wget https://raw.githubusercontent.com/StackVista/http-header-injector/main/scripts/generate_ca_cert.sh
    chmod +x generate_ca_cert.sh
    ./generate_ca_cert.sh <helm-agent-release-name> <helm-agent-namespace>

    Certifique-se de usar o nome do release que será utilizado no comando helm e o namespace, caso contrário, o certificado será inválido.

  2. Instale o agente adicionando a configuração adicional ao adicionar --set httpHeaderInjectorWebhook.enabled=true -f tls_values.yaml no comando de invocação do helm

Gere um certificado usando o cert-manager

Se seu cluster tiver o cert-manager instalado e um ClusterIssuer configurado, é possível usar o certificado emitido pelo ClusterIssuer no agente para o injetor de sidecar. Para fazer isso, adicione os seguintes argumentos de linha de comando para instalar o agente: --set httpHeaderInjectorWebhook.enabled=true --set-string httpHeaderInjectorWebhook.webhook.tls.mode="cert-manager" --set-string httpHeaderInjectorWebhook.webhook.tls.certManager.issuer="<my-cluster-issuer>". Certifique-se de substituir my-cluster-issuer pelo nome do emissor em seu cluster.