공부/메세지

아파치 카프카(apache kafka) 스터디 - 1

JangGiraffe 2022. 10. 12. 23:25

오늘 공부한 내용

1. AWS EC2를 생성 후 카프카 브로커를 설치 및 실행 완료(주키퍼 실행 -> 카프카 브로커 실행)
2. 윈도우 로컬환경에서 우분투를 설치해 EC2에 있는 카프카 서비스가 정상 작동하는지 확인했다.

카프카 브로커 서비스 테스트 성공

 

오늘 새롭게 알게된 내용

1.주키퍼란 ?

1) 분산 코디네이션
 개발자가 비즈니스로직에 집중할 수 있게 분산처리를 해주는 오픈소스 프로젝트로
주키퍼가 설치된 여러 서버들의 동기화를 해주는 것을 말하는듯

2) 카프카의 클러스터 설정 리더 정보, 컨트롤러 정보를 담고 있어
카프카를 실행하는 데 필요한 필수 애플리케이션이라고 한다.
이 의미는 차차 카프카를 공부하다 보면 좀더 이해가 되지 않을까 싶다.

2. 윈도우 10버전부터 우분투를 설치하고  파워쉘을 통해 쉽게 우분투에 접근할 수 있다. 
(관련내용은 마소 공홈 참고 https://learn.microsoft.com/ko-kr/windows/wsl/install)

마이크로소프트 스토어와 우분투 실행 캡처

문제 및 해결

로컬에서 E2C에 설치된 kafka 테스트를 위해 kafka-broker-api.version.sh 를 실행했는데, 다음과 같은 오류메시지가 발생했다.

ubuntu@DESKTOP-0VPC2Q6:~/kafka_2.12-2.5.0$ bin/kafka-broker-api-versions.sh  --bootstrap-server 13.124.72.122:9092
Exception in thread "main" java.lang.RuntimeException: Request METADATA failed on brokers List(13.124.72.122:9092 (id: -1 rack: null))
        at kafka.admin.BrokerApiVersionsCommand$AdminClient.sendAnyNode(BrokerApiVersionsCommand.scala:158)
        at kafka.admin.BrokerApiVersionsCommand$AdminClient.findAllBrokers(BrokerApiVersionsCommand.scala:181)
        at kafka.admin.BrokerApiVersionsCommand$AdminClient.awaitBrokers(BrokerApiVersionsCommand.scala:173)
        at kafka.admin.BrokerApiVersionsCommand$.execute(BrokerApiVersionsCommand.scala:60)
        at kafka.admin.BrokerApiVersionsCommand$.main(BrokerApiVersionsCommand.scala:54)
        at kafka.admin.BrokerApiVersionsCommand.main(BrokerApiVersionsCommand.scala)

해결방법은 E2C의 방화벽 문제로 보안그룹에서 인바운드 규칙에 9092 포트를 추가해줬다.

 

반응형