Today
-
Yesterday
-
Total
-
  • windows11 : kafka 실행하기
    프로젝트 관련 2023. 12. 18. 00:01

    참고 : https://inf.run/GHeRm

    1. kafka 실행 파일 다운로드

    https://kafka.apache.org/downloads 위 사이트를 통해 다운받은 파일을 적당한 위치에 압축 해제해준다.


    이때 , 아래와 같은 위치에 생성한다면 kafka 실행시 경로가 너무 길다고 오류가 난다.;;


    • 경로가 길어서 발생한 에러 🔻


    • 나는 c:\program files 위치에 압축 해제 했다가 c:\ 위치로 옮겨주어 해결했다.



    그냥 압축파일 해제만 해주면 이제 사용하기만 하면 된다 ! 😊


    추가로 압축 해제 후 원만한 사용을 위해

    해당 폴더의 사용자 권한을 변경해주도록 한다.


    사용자 권한 변경 방법은

    1. 권한 변경할 폴더를 우클릭 한 후 속성 메뉴를 누른다.

    2. 보안 탭에서 편집을 누른다.

    3. 그룹 또는 사용자 이름 부분에서 Users를 선택하고, 아래의 사용 권한에 모든 권한을 체크해준 후 확인버튼을 누르고 빠져나온다.




    2. Zookeeper 실행

    압축 해제 후 /bin , /config 등등의 폴더가 있는 위치로 이동하여 터미널을 실행한다.

    터미널 실행 후 탭 부분에 마우스 우클릭 하면 분할 탭 이라는 메뉴가 나타나는데,

    이걸 사용하면 하나의 창에 터미널 창을 원하는 갯수 만큼 만들 수 있다.

    kafka를 실행하기 위해선 zookeeper를 먼저 실행해야 한다. 아래 명령어 입력!

    .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties
    




    3. Kafka 실행

    다른 탭 혹은 다른 터미널 창을 실행하여 kafka 실행을 위한 명령어를 입력해준다.

    .\bin\windows\kafka-server-start.bat .\config\server.properties
    

    kafka를 실행하면 마지막 출력 로그에 port 번호가 나온다.




    4. topic - producer / consumer test

    kafka는 producer가 topic이라는 메세지 저장소에 메세지를 보내면, topic을 구독한 consumer가 메세지를 받아보는 형태로 동작한다.

    1) topic (메세지 저장소) 1개 생성

    .\bin\windows\kafka-topics.bat --bootstrap-server localhost:9092 --create --topic test-quickstart-event --partitions 1

    • localhost:9092 = kafka 서버 ip : 실행 port
    • test-quickstart-event = topic 이름
    • 1 = partision 갯수


    * topic 목록 조회

    .\bin\windows\kafka-topics.bat --bootstrap-server localhost:9092 --list

    * topic 목록 상세 조회

    .\bin\windows\kafka-topics.bat --bootstrap-server localhost:9092 --describe --topic test-quickstart-event


    2) consumer topic 구독

    .\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test-quickstart-event --from-beginning


    3) producer 메세지 발송

    .\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test-quickstart-event

    > 가 나타났을 때 텍스트 입력 후 엔터를 누르면 같은 topic을 구독한 consumer에게 텍스트가 전달된다.

Designed by Tistory / Custom by 얼거스