Kafka 운영은 이제 그만! EasyQueue로 비즈니스 로직에 집중하세요.

by DD
1일 전
조회수 28

Kafka 운영의 복잡성(클러스터 구성, 디스크, 복제본 수, 백업 등)으로 인한 개발자 부담을 해소하기 위해 완전관리형 서비스 EasyQueue를 출시함

NHN Cloud가 클러스터 운영을 전담하고, 사용자는 토픽 설계 등 Kafka 본연의 유연함만 활용하는 관리형과 Kafka 사이의 균형점을 제공함

콘솔에서 토픽 생성, 메시지 테스트, Lag 확인 등 운영 부담을 줄이고, 기존 Kafka 클라이언트 코드 호환성을 유지하여 신속한 도입 및 전환을 지원함

현재 베타 단계로 한국 판교·평촌 리전에서 서비스 중이며, 종량제 기반으로 사용한 만큼만 비용을 지불하는 구조임

EasyQueue의 공용 클러스터 모델과 트레이드오프

EasyQueue는 공용 클러스터(Shared Cluster) 모델을 채택하여 사용자가 즉시 토픽을 생성하고 비용 부담 없이 사용할 수 있도록 설계되었습니다. 이는 인프라 운영 부담을 최소화하고 빠른 서비스 시작을 가능하게 합니다. 하지만 이 모델은 한 토픽에 매우 큰 부하가 몰리는 대규모 워크로드에는 한계가 있을 수 있다는 트레이드오프를 가집니다. 이를 보완하기 위해 토픽 수와 파티션 수를 제한하는 가드레일(Guardrail) 정책을 적용하여, 특정 사용자의 과도한 리소스 사용이 다른 사용자에게 영향을 미치는 것을 방지합니다. 필요시 고객 지원을 통해 제한 확장이 가능합니다.

콘솔 기반 운영 간소화: 토픽 관리 및 테스트

EasyQueue는 Kafka 운영의 복잡성을 대폭 줄이기 위해 콘솔 중심의 사용자 경험을 제공합니다. CLI 명령어 대신 직관적인 UI를 통해 토픽 생성, 수정, 삭제가 가능하며, 복제본 수(3)와 최소 동기화 복제본 수(2) 같은 운영 안정성 관련 설정은 기본값으로 고정되어 있어 별도 고민 없이 안전한 토픽 구성이 가능합니다. 또한, `kafka-console-producer`나 `kafka-console-consumer` 없이도 토픽 상세 화면에서 메시지 전송 테스트 및 조회가 가능하여, 개발 초기 단계의 통신 점검이나 장애 조사 시 운영 부담을 크게 줄여줍니다.

컨슈머 Lag 모니터링 및 데이터 보존 정책

컨슈머 Lag은 Kafka 운영에서 핵심적인 지표임에도 불구하고, 기존에는 Burrow나 Kafka Exporter 같은 별도 도구를 필요로 했습니다. EasyQueue는 콘솔 내에서 Lag을 시각적으로 제공하여 이러한 운영 부담을 해소합니다. 토픽 상세 화면의 컨슈머 그룹 탭에서 그룹별 Lag 현황을 실시간으로 확인하고, 모니터링 탭에서 시간에 따른 Lag 추이를 시계열 차트로 분석할 수 있습니다. 또한, 모니터링 데이터는 90일간 보존되어 별도 메트릭 저장소 없이도 사후 분석이 용이합니다.

표준 Kafka 프로토콜 호환성과 인증 방식

EasyQueue는 표준 Apache Kafka 프로토콜 호환성을 유지하여 기존 Kafka 클라이언트 코드(Java, Python, Go 등)를 그대로 사용할 수 있습니다. 이는 벤더 락인(Vendor Lock-in) 우려를 해소하고 기존 코드 자산을 그대로 활용할 수 있게 합니다. 인증 방식은 SASL/OAUTHBEARER를 사용하며, NHN Cloud 콘솔에서 발급받은 User Access Key와 Secret Access Key를 활용합니다. 토픽 이름과 컨슈머 그룹 ID는 `{APP_KEY}.` 접두사를 붙여야 하는 규칙이 있으며, 이는 권한 분리를 위한 설계입니다. 클라이언트 라이브러리가 OAuth 토큰을 자동으로 발급 및 갱신하므로, 설정 후에는 일반 Kafka와 동일하게 메시지를 주고받을 수 있습니다.

메시지 3중 복제와 리전별 클러스터 구성

EasyQueue는 메시지 유실 방지를 위해 메시지 3중 복제(Triple Replication)를 기본으로 적용합니다. 이는 한 메시지가 서로 다른 브로커 3대에 저장되며, 리더 브로커 장애 시에도 남은 복제본이 즉시 리더 역할을 이어받아 서비스 중단 없는 안정적인 운영을 보장합니다. 또한, 판교와 평촌 두 리전에 독립적인 클러스터를 운영하여, 한 리전의 장애가 다른 리전으로 전파되지 않도록 인프라 레벨의 안정성을 확보하고 있습니다. 이러한 설계는 운영 안정성을 최우선으로 고려한 결과입니다.

종량제 기반 과금 모델과 비용 통제

EasyQueue는 사용한 만큼만 비용을 지불하는 종량제(Pay-as-you-go) 과금 모델을 채택하고 있습니다. 주요 과금 항목은 파티션 수, 저장 데이터 용량, 메시지 쓰기량, 메시지 읽기량입니다. 특히 저장 데이터 용량은 메시지 3중 복제로 인해 실제 저장 크기의 최대 3배로 측정될 수 있습니다. 사용자는 토픽별로 메시지 보존 기간, 파티션 최대 크기, 파티션 개수 등을 직접 조정하여 비용을 효율적으로 통제할 수 있습니다. 최신 요금 정보는 공식 요금 안내 페이지에서 확인할 수 있습니다.

운영하지 않는 Kafka, EasyQueue를 소개합니다