2. Apache Kafka 다운로드 및 실행 ( Windows )

kafka

이번 장에서는 apache kafka 다운로드 및 간단한 실행 방법에 대해 알아보도록 하겠습니다.
필자는 Windows 환경에서 Kafka를 실행해볼 것입니다.

[목차]
1. Apache Kafka 소개 및 아키텍쳐
2. Apache Kafka 다운로드 및 실행 ( Windows )
3. Apache Kafka java를 이용한 producer 와 consumer 작성
4. Intellij 환경에서 Spring boot를 이용하여 Kafka api 구축 (1)

 

1. Apache Kafka 다운로드 ( Download the code )

Apache Kafka는 공식 홈페이지에서 직접 다운로드할 수 있습니다.
혹은 다음 링크를 통하여 다운로드 해주세요 : http://mirror.navercorp.com/apache/kafka/1.1.0/kafka_2.11-1.1.0.tgz
다운로드가 완료되었스면 적절한 공간에 압축을 해제하시면 됩니다.

 

2. 서버 시작 ( Start the server )

> bin/windows/zookeeper-server-start.bat config/zookeeper.properties

zookeeper 실행

일단 kafka를 실행하기 이전에 zookeeper를 실행하여야 합니다. kafka는 기본적으로 zookeeper 위에서 돌아갑니다.

그 다음에 kafka를 실행하면 됩니다.

> bin/windows/kafka-server-start.bat config/server.properties

kafka 실행
kafka 실행

3. Topic 생성 ( Create a Topic )

kafka를 실행하고 있는 상태에서 다음과 같이 topic을 생성할 수 있습니다.

> bin/windows/kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test20180604

topic 생성
topic 생성

현재 작성된 topic 목록을 확인해 보겠 습니다.

> bin/windows/kafka-topics.bat --list --zookeeper localhost:2181

topic 목록
저의 경우엔 약 100개 정도가 있습니다.

4. Consumer 시작 - Message 가져오기 ( Start a consumer )

먼저 consumer를 실행하여 producer에서 보내는 message를 확인할 수 있도록 합니다

> bin/windows/kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test20180604

실행하고 나면 처음에는 아무 변화가 없습니다.

 

5. Producer 시작 - Message 보내기 ( Send some messages )

이제 producer를 시작해보겠습니다.

> bin/windows/kafka-console-producer.bat --broker-list localhost:9092 --topic test20180604
> this is a message
> this is a another message

producer
producer

이 때 consumer에서 producer에서 보낸 message를 띄우게 됩니다.

consumer
consumer

 

 

6. 다중 클러스터 설정 - Setting up a multi-broker cluster

이 부분은 kafka 공식 사이트를 참고해주세요 (바로가기)

 

이후에 config/server.properties를 여러개 복사한 다음에
위에서 한것과 똑같이 이제 다른 포트 혹은 호스트에서 kafka 를 실행시키는 방식으로 확장을 할 수 있습니다.

 

7. 정리

> bin/windows/zookeeper-server-start.bat config/zookeeper.properties
> bin/windows/kafka-server-start.bat config/server.properties
> bin/windows/kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test20180604
> bin/windows/kafka-topics.bat --list --zookeeper localhost:2181
> bin/windows/kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test20180604
> bin/windows/kafka-console-producer.bat --broker-list localhost:9092 --topic test20180604

 

# 참조

https://kafka.apache.org/quickstart