Exportar métricas do Istio
Essa documentação fornece uma visão de como configurar a exportação de métricas de um cluster com Istio via Prometheus.
- Verifique o melhor método para instalar o Istio no seu ambiente e siga uma das duas formas de instalação: ambient mode ou sidecar mode. Se quiser saber mais sobre os métodos de instalação leia "sidecar ou ambient mode?" e também "qual método devo usar?".
- Ter instalado o prometheus no cluster. A melhor maneira é usar os arquivos de implantação fornecidos pelo Istio como é mostrado neste link. Instalar o Kilai é opcional.
- Se instalado pelo "sidecar mode" adicionar os sidecars nos pods colocando as labels nos namespaces desejados: "istio-injection=enabled". Siga essas instruções.
Lembre-se de instalar o CLI do Istio e também o Gateway API CRDs como mostrado neste link.
Rode o comando "rollout" nos pods para a injeçãos dos sidecars.
Por segurança adicionar mTLS authentication ou outro tipo de autenticação como explicado nesse link.
Crie ou edite um recurso IstioOperator para incluir as anotações necessárias. As anotações devem ser adicionadas tanto ao ingressGateway quanto ao pilot para que o Prometheus possa coletar métricas corretamente como mostrado abaixo:
O proxy sidecar do Istio (geralmente Envoy) expõe métricas na porta 15090 e no caminho '/stats/prometheus'.
Aplique o recurso:
Edite o ConfigMap do Prometheus para adicionar a URL de remote_write. Isso indicará ao Prometheus onde enviar as métricas:
Adicionar na mesma indentaç ão de "global" o remote_write:
Substitua <SIMON-VMETRICS-IP> pelo endereço IP ou hostname para receber as métricas.
Após feita as alterações, é necessário reiniciar o deployment do Prometheus para que as novas configurações sejam aplicadas: