kafka 명령어 모음

Viva의 놀이터·2022년 3월 2일
0

kafka

목록 보기
3/5

zookeeper을 실행시키는 명령어

  • kafka 파일 안에 bin/zookeeper-server-start.sh [설정한 zookeeper 파일(config/zookeeper.properties)]

zookeeper안의 kafka 관리하기

  • bin/zookeeper-shell.sh [zookeeper config에서 설정한 주소]
    bin/zookeeper-shell.sh localhost:2181

    명령어

    ls / : zookeeper에 설치된 파일들
    ls /brokers : zookeeper에 생성된 broker 정보
    ls /brokers/topics : broker에 생성된 topic 정보

kafka broker 생성

  • config 파일안에 server.properties 설정 파일에서 지정하면 된다.
    해당 파일에서 broker의 설정들을 설정해주면 되는데 가장 중요한 것은 listeners 부분을 주석을 풀고 받을 ip 번호를 입력해줘야한다.

kafka broker 실행

  • bin/kafka-server-start.sh [설정한 broker 파일(config/server.properties)]

kafka topic 생성

  • bin/kafka-topics.sh --create --topic [원하는 이름] --bootstrap-server [broker config에서 설정한 ip]
    bin/kafka-topics.sh --create --topic viva --bootstrap-server localhost:9092

kafka topic 리스트 조회

  • bin/kafka-topics.sh --list --bootstrap-server [broker config에서 설정한 ip]
    bin/kafka-topics.sh --list --bootstrap-server localhost:9092

kafka topic 생성 제약

  • 공백 허용 안함
  • '_' or '.' 은 내부 함수로 인해서 충돌날 가능성이 있기 때문에 권장하지 않는다.

kafka message publish 하기

  • bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic [토픽 이름]

kafka message consume하기

  • bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic [토픽 이름]

하지만 실제로 찍어보면 consumer로 메시지를 받아왔을 때 이전에 저장된 데이터는 가져오지 않고 붙은 순간부터 데이터를 가져오기 시작한다.
만약 처음부터 모든 데이터를 가져오기를 원한다면 옵션이 붙는다.

(producer에 생성된 모든 데이터 가져오기)

  • bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic [토픽 이름] --from-beginning
profile
역사를 잊은 기술에겐 미래가 없다

0개의 댓글