https://kafka.apache.org/downloads
위 링크에서 다운로드를 진행 하시면 되는데요 src가 아니라 Binary 다운로드를 진행해야 해요!
오늘 기준으로 2.8.0이 가장 최근 버전이네요!
이 후에 다운로드를 받게 되면 윈도우 전용 폴더가 생기는데요.
이 압축 파일을 C드라이브에 풀어줍시다.
먼저 zookeeper 를 실행 시켜야 하는데 그 이유는 zookeeper가 카프카를 관리해주기 때문에 zookeeper가 먼저 실행 되야
카프카가 실행 할 수 있습니다.
C:\카프카설치경로\bin\windows\zookeeper-server-start.bat C:\카프카설치경로\config\zookeeper.properties
로 실행시켜주시면 됩니다.
저 같은 경우엔 카프카 설치 경로에 들어가서 실행해서 조금 다를 수 있다는점 참고 해주세요.
그 후에 카프카를 실행 시켜 줍시다.
C:\카프카설치경로\bin\windows\kafka-server-start.bat C:\카프카설치경로\config\server.properties
그 후 Topic 이라는 것을 생성 해야 하는데요.
토픽은 카프카서버에 데이터를 저장하는 공간 이라고 생각하시면 돼요.
토픽을 생성해야 해당 토픽으로 producer가 데이터를 전송하고 consumer는 토픽을 통해 데이터를 가져와요.
C:\카프카 설치 폴더\bin\windows>kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic [생성하실 토픽이름]
그 후에 있을 부분은 카프카설치폴더\bin\windows경로에 들어가셔서 하시면 좀 더 편한데요. (전체 경로로 하셔도 무방합니다.)
이제 부터 Consumer 와 Producer 를 생성할 것인데요.
먼저 아까 생성했던 토픽이 제대로 생성이 되었는지 확인해봅시다.
kafka-topics.bat --list --zookeeper localhost:2181
그 후 Consumer 생성을 진행해보죠.
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic [토픽이름]
테스트를 위해 닫지 마시구요. 다른 CMD창을 여셔서 Producer 를 생성해봅시다.
그 후
kafka-console-producer.bat --broker-list localhost:9092 --topic [토픽 이름]
을 입력하여 producer를 실행시켜줍니다. 그러면 입력할 수 있는 상태로 변하게 되는데요. 이 때 전송되는 메세지가 Consumer에게 전달됩니다.
테스트를 해볼까요?
정상적으로 실행 되는 것을 볼 수 있습니다.
다만 한글은 깨지네요 ㅎㅎ
리눅스 환경에서 할 경우 조금 다릅니다.
우선 kafka를 다운받아 봅시다.
wget http://apache.mirror.cdnetworks.com/kafka/2.8.0/kafka\_2.12-2.8.0.tgz
tar -zxvf kafka 2.12-2.8.0.tgz
tar 명령어로 압축을 풀어준 뒤 원하는 디렉토리로 옮겨 줍니다.
mv ./kafka\_2.12-2.8.0.tgz /usr/local/lib/kafka
이제 kafka 디렉토리로 이동해봅시다.
cd /usr/local/lib/kafka/
윈도우와 마찬가지로 zookeeper 서버를 실행 해줍니다.
bin/zookeeper-server-start.sh config/zookeeper.properties
혹시나
INFO binding to port 0.0.0.0/0.0.0.0:2181(org.apache.zookeeper.server.NIOServerCnxnFactory
이러한 메세지가 떴다면 당황하지말고 kakfa server properties파일에 들어가 변경해줍시다.
vi ./config/server.properties
이렇게 해서 들어가보면
\# 변경전
#listeners=PLAINTEXT://:9092
zookeeper.connect=localhost:2181
\# 변경후
#listeners=PLAINTEXT://{호스트}:9092
zookeeper.connect={host}:2181
위와 같이 변경해 줍시다.
그 후 방화벽 포트 열어 설정을 해줍니다.
iptables -I INPUT 1 -p tcp --dport 2181-j ACCEPT
iptables -I INPUT 1 -p tcp --dport 9092 -j ACCEPT
service iptables save
vi /etc/sysconfig/iptables
service iptables restart
그 후 Topic을 생성 해줍시다.
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic bami-kafka
이렇게 뜨면 된겁니다.
Created topic kafka-test.
그 다음 Producer를 생성 해줍니다.
bin/kafka-console-producer.sh --broker-list localhost:9092 -topic bami-kafka
그 다음 다른 창을 열어 Consumer를 생성해줍니다.
bin/kafka-console-consumer.sh --broker-list localhost:9092 -topic bami-kafka
이렇게 하면 linux 버전도 설치와 실행이 끝이 났습니다.
이상 WIndows 버전과 Linux 버전 설정, 실행 방법에 대해 알아봤습니다! 도움이 되셨길 바랍니다
'프로그래밍(Web) > 업무관련' 카테고리의 다른 글
[바미] Javascript (!) Missing global variable name 에러 해결하기. (0) | 2021.11.01 |
---|---|
[바미] VScode중 tab키가 먹통일 때 해결 방법. (0) | 2021.10.19 |
[바미] 개발 하면서 사용해 본 협업 툴들 (0) | 2021.06.04 |
[바미] JMeter 설치부터 사용기 (Windows) (0) | 2021.05.17 |
[바미] Golang reflect 함수 사용하여 필수 값 체크 함수 만들기. (0) | 2021.05.08 |