How to connect RabbitMQ using Telegraf with SSL?

问题描述 投票:0回答:0

如何使用带 SSL 的 Telegraf 连接 RabbitMQ 和 Kafka?

我正在尝试使用带有 SSL 选项的 Telegraf 连接 RabbitMQ 和 Kafka。我已经使用 RabbitMQ 版本 3.11.8 / 3.10.7、Erlang 版本 25.2.2 / 24.2.1 和 Telegraf 版本 1.26.1.

测试了设置

我能够在没有 SSL 选项的情况下成功连接 Telegraf 和 RabbitMQ。但是,当我尝试使用 SSL 选项连接时,我在 Telegraf 日志中收到一条错误消息:

D! [inputs.amqp_consumer] Error connecting to "amqp://$rabbitmqurl:5671/"

E! [telegraf] Error running agent: starting input inputs.amqp_consumer: could not connect to any broker

我在RabbitMQ的日志中也发现了如下错误信息:

[notice] <0.3848.0> TLS server: In state hello at tls_record.erl:564 generated SERVER ALERT: Fatal - Unexpected Message

[notice] <0.3848.0> - {unsupported_record_type,65}

我使用以下命令测试连接并收到成功响应:

openssl s_client -connect $rabbitmqurl:5671 -cert clientcert.pem -key clientkey.pem -CAfile cacert.pem

SSL handshake has read 2625 bytes and written 2564 bytes

Verification: OK

---

New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384

Server public key is 2048 bit

Secure Renegotiation IS NOT supported

Compression: NONE

Expansion: NONE

No ALPN negotiated

Early data was not sent

Verify return code: 0 (ok)

我测试了我的 Python 代码并且能够成功连接。 下面是我的 telegraf.conf 片段:

[[inputs.amqp_consumer]]
  brokers = ["amqp://$rabbitmqurl:5671/"]
  username = "$username"
  password = "$password"
  exchange = "test.exchange"
  queue = "test.queue"
  tls_ca = "/etc/telegraf/cert/cacert.pem"
  tls_cert = "/etc/telegraf/cert/clientcert.pem"
  tls_key = "/etc/telegraf/cert/clientkey.pem"

有人可以告诉我如何修复错误消息并使用带 SSL 选项的 Telegraf 连接 RabbitMQ 吗?

ssl rabbitmq telegraf
© www.soinside.com 2019 - 2024. All rights reserved.