Skip to content

[Chore] Kafka 환경 설정#461

Merged
jjjjjinseo merged 6 commits into
devfrom
chore/#457-kafka-setting
Jul 21, 2026
Merged

[Chore] Kafka 환경 설정#461
jjjjjinseo merged 6 commits into
devfrom
chore/#457-kafka-setting

Conversation

@jjjjjinseo

Copy link
Copy Markdown
Member

🔗 관련 이슈

resolve #457

✅ 작업 내용

💡개선 사항

1️⃣ Docker compose 파일 구성

KRaft모드로 Kafka 구성

kafka구성

  • KAFKA_PROCESS_ROLES: Kafka 서버 역할 지정 (kraft 특징)
  • CLUSTER_ID: 주키퍼가 없기 때문에, 이 카프카 서버가 어떤 클러스터 소속인지 식별하기 위해 임의로 발급해 둔 고유 식별 번호
  • KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 현재는 1대로 설정했지만, 추후 실제 운영 시에는 3대로 할 수 있다.

kafka-ui 구성

localhost:8085

  • 터미널 명령어 없이 웹 브라우저에서 카프카 클러스터, 브로커, 토픽, 컨슈머 그룹의 상태를 시각적으로 모니터링하고 관리할 수 있는 GUI 도구이다.
  • 토픽 내부의 파티션 구조와 유입되는 메시지 데이터를 실시간으로 열람할 수 있어 개발 및 디버깅 생산성을 극대화해 준다.

2️⃣Kafka 토픽 생성

🔗 자세한 내용

image
  • 토픽은 앞서 설계한 대로 battle-eventsbattle-chat-events로 구성한다.
  • 파티션의 개수는 Worst case 기반 이벤트 처리량과 브로커 장애 상황을 고려하여 6개로 구성한다.
kafka-topics --create --topic battle-events --bootstrap-server kafka:9092 --partitions 6 --replication-factor 1
kafka-topics --create --topic battle-chat-events --bootstrap-server kafka:9092 --partitions 6 --replication-factor 1

3️⃣NestJS Kafka 세팅

  • kafkajs 설치
pnpm add kafkajs

📸 참고 사항

Kafka UI cli
image image

💬 질문사항 (고민했던 부분)

@jjjjjinseo jjjjjinseo self-assigned this Jul 6, 2026
@jjjjjinseo jjjjjinseo added ⚙️ settings This issue or pull request already exists 🛠️ BE Extra attention is needed labels Jul 6, 2026
@jjjjjinseo
jjjjjinseo force-pushed the chore/#457-kafka-setting branch from 6f95aa2 to 0f57570 Compare July 21, 2026 07:03
@jjjjjinseo
jjjjjinseo merged commit 454209f into dev Jul 21, 2026
2 checks passed
@jjjjjinseo
jjjjjinseo deleted the chore/#457-kafka-setting branch July 21, 2026 07:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🛠️ BE Extra attention is needed ⚙️ settings This issue or pull request already exists

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Story] Kafka 인프라 구축 및 토픽 환경 설정

1 participant