ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • kafka 다운 및 실행
    📚 개발백과 2023. 12. 23. 17:30
    728x90

    * kafka 2.1.0 기준 입니다. *

     

    2.1.0 전까지는 자바8, 2.1.0 이후부터는 자바11이 지원됩니다.

    자바8을 사용한다면 전자, 자바11은 후자를 선택해야합니다.

    ( $ java --version 으로 확인)

    https://kafka.apache.org/downloads

     

     

     

    $ cd kafka_2.12-2.1.0

    $ bin/kafka-server-start.sh config/server.properties

    백그라운드에서 zookeeper 가 실행 되도록합니다.

    자바 버전에 맞지 않는 kafka 다운 및 실행 시 다음과 같은 에러가 뜰 수 있습니다.

    /폴더/kafka_2.12-1.1.0/bin/kafka-run-class.sh: line 252: [[: 11 2023-07-18 LTS: syntax error in expression (error token is "2023-07-18 LTS") [0.002s][warning][gc] -Xloggc is deprecated. Will use -Xlog:gc:/Users/ysy/kafka_2.12-1.1.0/bin/../logs/zookeeper-gc.log instead. Unrecognized VM option 'PrintGCDateStamps' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.

    * 참고 : java 11 에 kafka 1.1.0(java8 지원) 실행 시 나온 오류

     

    $ bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

    이번에는 Kafka를 실행합니다.

    잘 실행되었는지 확인은 netstat 명령어를 통해 진행하면됩니다.

    $ netstat -an | grep 2181

    tcp46      0      0  *.2181                 *.*                    LISTEN

    이렇게 나온 것이 있다면 잘 실행된 것입니다.

     

    $ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

    kafka 토픽을 생성합니다.

    kafka 2.2.0 보다 옛버전에서는 --zookeeper 를 사용해야 합니다. 이후 버전에서는 --bootstrap-server 를 사용합니다.

    2.1.0에서 도큐먼트대로 --bootstrap-server 를 사용하면 다음과 같은 에러가 나옵니다.

    Exception in thread "main" joptsimple.UnrecognizedOptionException: bootstrap-server is not a recognized option
    at joptsimple.OptionException.unrecognizedOption(OptionException.java:108)
    at joptsimple.OptionParser.handleLongOptionToken(OptionParser.java:510)
    at joptsimple.OptionParserState$2.handleArgument(OptionParserState.java:56)
    at joptsimple.OptionParser.parse(OptionParser.java:396)
    at kafka.admin.TopicCommand$TopicCommandOptions.<init>(TopicCommand.scala:361)
    at kafka.admin.TopicCommand$.main(TopicCommand.scala:44)
    at kafka.admin.TopicCommand.main(TopicCommand.scala)

     

    명령어를 통해 Created topic "test". 가 반환됩니다.

     

    참고

    --create : 생성
    --topic  : topic 명
    --bootstrap-server : 연결한 카프카 서버 주소
    --partitions : 생성하는 토픽의 파티션 수
    --replication-factor : 생성하는 토픽의 각 파티션의 replication-factor 개수

     

    $ bin/kafka-topics.sh --describe --topic test --zookeeper localhost:2181

    카프카 topic이 잘 생성되었는지 확인은 위의 명령어를 통해 확인합니다.

    Topic:test PartitionCount:1 ReplicationFactor:1 Configs:
    Topic: test Partition: 0 Leader: 0 Replicas: 0 Isr: 0

    이와 같이 나오면 정상입니다.

     

    $ bin/kafka-console-producer.sh --topic test --broker-list localhost:2181

     

     

     

    728x90
Designed by Tistory.