L4 스위치와 HAProxy로 IoT 트래픽 처리하기 – HTTP, TCP, MQTT 실전 운영기

기존 IoT 시스템을 운영하면서 각 도메인별로 서버와 포트가 분산되어 관리되는 구조를 사용하고 있었습니다.

예를 들어,

  • a.limgs.com API 서버1 (80, 443)
  • b.limgs.com API 서버2 (443)
  • mqtt 브로커 서버
  • tcp 소켓 디바이스 서버(다수)

이처럼 서비스별로 서로 다른 서버와 포트를 직접 노출하다 보니,
운영 복잡도가 점점 증가하기 시작했습니다.

  1. 서버 별 보안 정책 및 방화벽 관리 복잡성 증가
  2. 특정 포트 및 서버에 트래픽 집중
  3. 서버 물리적 장애 발생 시 대처 불가

이러한 문제를 해결하기 위해,

모든 트래픽을 하나의 진입점으로 통합하고 내부적으로 분산 처리할 수 있는 구조가 필요했습니다.

이번 글에서는 L4 스위치와 HAProxy를 활용하여 HTTP, TCP, MQTT 트래픽을 하나의 구조로 통합하고 실제 운영하면서 겪은 문제와 해결 과정을 정리해보겠습니다.