[kafka] Spring실행 시 consumer 연결문제 해결

2024. 2. 18. 01:52·Apache Kafka
반응형
 
 
 

SpringBoot 설정을 잘못해서 kafka 연결이 안 되는 문제를 해결했다.

📌 서론

이번 포스트는 SpringBoot의 application.yml에 kafka 설정을 잘못해서 오류가 발생한 부분을 수정한 내용이다.

발생했던 오류는 스프링 서버를 실행했을 때 consumer의 연결이 불가능했던 문제다.

 

1. SpringBoot에 KafkaListener 코드를 작성하자

kafka를 실행했는데 에러가 발생했다.

  • 이건 연결 에러인데 로그만 봐도 Consumer관련 오류인 것을 알 수 있다.
[Consumer clientId=consumer-error-handler-group-1, groupId=error-handler-group] 
Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

kafka 오류 분석
kafka 오류 분석

application.yml 세팅을 확인해 보자

  • 오류코드를 보고 바로 consumer 쪽에 문제가 생겼다고 판단했고 yml에 작성한 내용을 확인했다.
spring:
    kafka:  
      producer:    
        bootstrap-servers: localhost:10000,localhost:10001,localhost:10002 # 카프카 서버 주소  
        key-serializer: org.apache.kafka.common.serialization.StringSerializer  
        value-serializer: org.apache.kafka.common.serialization.StringSerializer  
      consumer:  
        group-id: error-handler-group  
        auto-offset-reset: earliest  
      template:  
        default-topic: error-messages

여기서 빼먹은 부분이 있는데 producer, consumer 모두 bootstrap-servers를 설정해줘야 한다는 것이다.

  • producer에만 설정을 해줘서 서버를 실행했을 때 consumer가 연결하지 못해서 계속 연결 관련 에러 로그를 보여줬던 것이었다. 아래와 같이 수정하면 된다.
kafka:  
  bootstrap-servers: localhost:10000,localhost:10001,localhost:10002 # 카프카 서버 주소  
  producer:  
    key-serializer: org.apache.kafka.common.serialization.StringSerializer  
    value-serializer: org.apache.kafka.common.serialization.StringSerializer  
  consumer:  
    group-id: error-handler-group  
    auto-offset-reset: earliest  
  template:  
    default-topic: error-messages

application.yml을 수정하고 다시 서버를 실행하니 kafka 연결에 성공하는 것을 볼 수 있다.

카프카 연결 성공
카프카 연결 성공

 

사이드 팀원 "평양냉면"님의 블로그도 들려주세요! 좋은 글이 많습니다.

 

하다보니 재미있는 개발

하다 보니 재미있는 개발에 빠져있는 중입니다. 문의사항: ysoil8811@gmail.com

yijoon009.tistory.com

반응형

'Apache Kafka' 카테고리의 다른 글

Kafka에서 Locale.ROOT 사용의 중요성  (3) 2024.12.06
[kafka] Docker로 카프카 실행하기 (KRaft 모드)  (7) 2024.08.25
[kafka] 스프링부트와 kafka를 이용한 slack 예외알림 구현  (1) 2024.02.18
[Kafka] 슬랙 webhook 설정하기 (kafka에서 호출)  (0) 2024.02.18
[Kafka] SpringBoot3.x.x에서 Kafka 연동하기  (2) 2024.02.18
'Apache Kafka' 카테고리의 다른 글
  • Kafka에서 Locale.ROOT 사용의 중요성
  • [kafka] Docker로 카프카 실행하기 (KRaft 모드)
  • [kafka] 스프링부트와 kafka를 이용한 slack 예외알림 구현
  • [Kafka] 슬랙 webhook 설정하기 (kafka에서 호출)
Stark97
Stark97
문의사항 또는 커피챗 요청은 링크드인 메신저를 보내주세요! : https://www.linkedin.com/in/writedev/
  • Stark97
    오늘도 개발중입니다
    Stark97
  • 전체
    오늘
    어제
    • 분류 전체보기 (247)
      • 개발지식 (20)
        • 스레드(Thread) (8)
        • WEB, DB, GIT (3)
        • 디자인패턴 (8)
      • JAVA (21)
      • Spring (88)
        • Spring 기초 지식 (35)
        • Spring 설정 (6)
        • JPA (7)
        • Spring Security (17)
        • Spring에서 Java 활용하기 (8)
        • 테스트 코드 (15)
      • 아키텍처 (6)
      • MSA (15)
      • DDD (11)
      • gRPC (9)
      • Apache Kafka (18)
      • DevOps (23)
        • nGrinder (4)
        • Docker (1)
        • k8s (1)
        • 테라폼(Terraform) (12)
      • AWS (32)
        • ECS, ECR (14)
        • EC2 (2)
        • CodePipeline, CICD (8)
        • SNS, SQS (5)
        • RDS (2)
      • notion&obsidian (3)
      • AI 탐험대 (1)
      • 팀 Pulse (0)
  • 링크

    • notion기록
    • 깃허브
    • 링크드인
  • hELLO· Designed By정상우.v4.10.0
Stark97
[kafka] Spring실행 시 consumer 연결문제 해결
상단으로

티스토리툴바