Kafka 설치하기

이벤트 스트림을 제공하는 브로커 이다. 더블어 메시지 스트림도 지원한다. Scala 로 제작되었으며 JVM 위에서 동작한다. 따라서 Java 가 있어야 한다.

환경

서버는 3대로 준비했다. Production 에서는 적어도 3대의 Broker 를 권장대로 설치한 것이다. 서버 3대는 다음과 같다.

  • klab-master1.systemv.local(192.168.96.60)
  • klab-worker1.systemv.local(192.168.96.61)
  • klab-worker2.systemv.local(192.168.96.62)

배포판은 Rocky Linux 9.3 최신 버전이다.

요구사항

Apache Kafka 를 실행하기 위해 JVM 이 필요하다. Kafka 버전에 따라서 Java 버전도 선택해야 한다. 최신의 Kafka 는 Java 11 을 필요로 한다.

Java 11 을 설치는 패키지로 설치 했다.

Kafka 다운로드 및 설치

Apache Kafka 는 AWS 의 MSK 에 버전과 동일하게 선택했다.

다음과 같이 /app 디렉토리에 압축해제로 설치를 완료 한다.

Zookeeper 설정

kafka 에 zookeeper 가 내장되어 있다. 설정은 /app/kafka/config 디렉토리에 zookeeper.properties 파일이다. 다음은 예시다.

systemd Unit을 작성해서 관리한다.

Kafka 설정

kafka 의 설정은 /app/kafka/conf/server.properties 파일이다. 주요한 설정은 다음과 같다.

systemd Unit을 작성해서 관리한다.

토픽 테스트

이제 토픽을 생성해 테스트를 해본다. 다음과 같이 Topic 을 생성한다.

파티션 1개 복제는 3개로 토픽이 생성되었다. consumer 명령어를 이용해서 토픽에 접속한다.

접속을 하면 아무런 일도 발생하지 않는다.

이제 producer 를 이용해서 메시지를 생산한다.

이렇게 메시지를 생성하면 앞서 접속한 consumer 화면에 똑같이 내용이 나와야 한다.

topic 의 통계 정보를 다음과 같이 확인해 볼 수 있다.

참고

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">