HiveMQ Kafka 솔루션
IoT 데이터와 MQTT 메시지를 Kafka로 스트리밍
Apache Kafka는 기업 시스템과 애플리케이션 간에 데이터를 쉽게 공유할 수 있는 오픈 소스 스트리밍 플랫폼입니다. HiveMQ Enterprise Extension for Kafka는 Kafka 클러스터를 사용하여 IoT 디바이스 데이터를 송수신하는 것을 가능하게 합니다.
새로운 기능: HiveMQ Cloud는 이제 Confluent Cloud와 통합되어 IoT 데이터를 Confluent Cloud로 쉽게 전송할 수 있습니다.
HiveMQ는 MQTT 메시지를 Kafka 메시징 스트림에 원활하게 통합하여 Kafka for IoT의 문제를 해결합니다. 대신 Kafka 메시지는 HiveMQ 및 MQTT 클라이언트로 배포될 수 있습니다. HiveMQ 에이전트는 Kafka 프로토콜을 포함하는 네이티브 구현으로 확장되었습니다. 이를 통해 HiveMQ는 MQTT 메시지를 Kafka 프로토콜로 전환할 수 있으며 그 반대의 경우에도 실현 가능합니다.
왜 IoT에 HiveMQ와 MQTT가 필요한가 ?
Kafka는 기업 시스템과 데이터 센터 또는 클라우드에 애플리케이션 간 데이터 공유에 적합합니다.
하지만, IoT에 대해 Kafka가 적합하지 않은 이유는 여러 가지가 있습니다.
- Kafka 에이전트는 로드 이퀄라이저를 통해 연결된 IoT 장치의 경우 클라이언트에서 직접 주소를 지정해야 합니다.
- Kafka 클라이언트는 안정적인 IP 연결이 필요하며 신뢰할 수 없는 셀룰러 네트워크를 통해 연결된 IoT 장치가 항상 그런 것은 아닙니다.
- Kafka는 많은 테마를 지원하지 않으므로 큰 테마 공간을 가진 대규모 IoT 배포는 일반적으로 Kafka에 적합하지 않습니다.
- Kafka 클라이언트는 복잡하고 리소스 집약적이기 때문에 작은 제한된 IoT 장치는 일반적으로 Kafka 클라이언트를 실행할 수 없습니다.
기본 기능 |
Kafka 프로토콜을 구현하면 MQTT 메시지를 Kafka 테마에 쓸 수 있으며 Kafka 메시지를 여러 MQTT 클라이언트에 배포할 수 있습니다. |
모든 MQTT3 및 MQTT5 기능을 지원합니다. (QoS 등급 포함) |
각 Kafka 테마에 대해 여러 MQTT 테마 필터를 선택합니다. (MQTT 주제 필터는 MQTT 와일드카드를 완전히 지원합니다). |
메시지를 에이전트에서 버퍼링하여 Kafka 클러스터를 사용할 수 없을 때 높은 가용성 및 내결함성을 보장합니다. |
HiveMQ 컨트롤 센터에서 Kafka에 기록된 MQTT 메시지를 모니터링합니다. |
여러 MQTT 클라이언트에 Kafka 메시지를 배포합니다. |
하나에서 여러 개의 Kafka 테마를 여러 MQTT 테마에 매핑합니다. |
MQTT에서 Kafka 테마 매핑 및 사용자 정의 메시지 변환을 지정하는 데 사용되는 사용자 정의 API를 프로그래밍합니다. |
MQTT PUBLISH 패킷은 런타임에 동적으로 생성되며 일부 Kafka 메시지로 변수를 대체합니다. |
스키마 레지스트리에 따라 카프카에서 읽은 메시지를 확인합니다. |
MQTT PUBLISH 메타데이터의 가능성을 미리 정의된 기본 구성을 사용하거나 구성으로 설정합니다. |