시나리오: SSL 암호화 및 SASL/PLAIN 인증으로 보호되는 Kafka 클러스터는 전용 VPC 내의 AWS 프라이빗 서브넷에 상주합니다. 프라이빗 서브넷 내에서는 모든 것이 정상입니다. 자체 생성 CA와 키를 사용하여 통신을 보호하고 호스트 ID는 AWS 내부 DNS를 기반으로 합니다.
내가 달성하고 싶은 것: 생산자 API(~ 아니다REST API)를 외부에서 사용합니다.
저는 키, DNS, kafka 리스너의 조합과 생산자에서 브로커로의 영구 연결이 연결을 시작하는 데 사용한 연결이 아닐 수도 있다는 사실 때문에 어려움을 겪고 있습니다.
역방향 프록시를 사용한 여러 시도가 실패했습니다. 키를 확인할 수 없기 때문에 SSH 터널도 작동하지 않습니다.
그러한 경우에 대한 일종의 참조 아키텍처가 있는 사람이 있습니까? 여기에서는 구성 세부 정보가 다른 구성, 키 등에 너무 많이 분산되어 있으므로 생략합니다. 하지만 필요한 경우 설정을 제공할 수 있습니다.
답변1
좋아, 해결책을 찾았습니다. 아마도 가장 효율적이지는 않지만 나에게는 괜찮을 것입니다. 3개의 브로커 앞에 3개의 레벨 4 로드 밸런서를 구현하고 각 브로커의 Advanced_listener 주소를 로드 밸런서 중 하나로 구성했습니다. 비록 상대적으로 비용이 많이 들고 트래픽 속도를 다소 제한하더라도 매력적으로 작동합니다.