场景:使用 SSL 加密和 SASL/PLAIN 身份验证保护的 Kafka 集群位于专用 VPC 内的 AWS 私有子网中。在私有子网内,一切都很好。我使用自行生成的 CA 和密钥来保护通信,主机身份基于 AWS 内部 DNS。
我想要实现的目标:有可能从外部访问生产者 API(而不是REST API)。
我正在为密钥、DNS、kafka 侦听器的组合以及从生产者到代理的永久连接可能不是我用来启动连接的那个事实而苦苦挣扎。
多次尝试使用反向代理失败 - 由于无法解析密钥,即使 ssh 隧道也无法工作。
对于这种情况,有人有一种参考架构吗?我在这里省略了配置细节,因为它在不同的配置、键等中分布得太多,但如果需要,我可以提供我的设置。
好的,我找到了一个解决方案 - 可能不是最有效的,但对我来说很好。我在三个代理前面实现了三个 4 级负载均衡器,并使用负载均衡器之一配置了每个代理的 advanced_listener 地址。就像一个魅力 - 即使它相对昂贵并且在一定程度上限制了流量。