Obrigado!
Ativei o cloudflare.template.yml.
Mas, se entendi corretamente, isso foi apenas para desativar a limitação de taxa no tráfego proveniente dos endereços IP da Cloudflare.
Por enquanto, é assim que minha configuração do Prometheus se parece:
scrape_configs:
- job_name: forum
scrape_interval: 5s
scheme: https
static_configs:
- targets:
- forum-behind-cloudflare-dns-proxy.com
Agora, o problema que estou enfrentando é que o Discourse não consegue ver o endereço IP real de uma solicitação. Portanto, para que a abordagem de lista de permissões funcione, tentei o seguinte:
-
Adicionei o endereço IPv6 do meu servidor Prometheus à variável de ambiente
DISCOURSE_PROMETHEUS_TRUSTED_IP_WHITELIST_REGEXnoapp.yml. -
Codifiquei manualmente o endereço IPv6 real do fórum no arquivo
/etc/hostsdo servidor Prometheus. Agora, o fórum consegue ver o endereço IP do meu servidor Prometheus e permitir o acesso a ele.
Ainda tenho alguns outros problemas. Por exemplo, estou executando o Prometheus em um container. O /etc/hosts do host não é compartilhado dentro do container. Assim, ele continua resolvendo o endereço do fórum para um IP da Cloudflare e falha durante a autenticação.
Posso compartilhar o /etc/hosts do host no container Docker assim: -v /etc/hosts:/etc/hosts ao iniciar o Prometheus, mas isso resulta em um erro como:
Get "https://forum-behind-cloudflare-dns-proxy.com:443/metrics": dial tcp [<endereço-ipv6>]:443: connect: cannot assign requested address
Agora, só preciso resolver esse problema.
Edição #1: Descobri isso também. O IPv6 estava desativado dentro do container Docker. Posso corrigir isso ativando o IPv6 no container Docker ou simplesmente usando --net=host.