본문 바로가기

Open Source/Kafka

(6)
카프카 명령어 정리 [1. 개요] 카프카 설치 시, 기본적으로 제공하는 명령어를 통해 카프카 관리 [2. 주키퍼 관련 명령어] zookeeper-server-start.sh # 주키퍼 서버 실행 zookeeper-server-stop.sh # 주키퍼 서버 종료 zookeeper-shell.sh # 주키퍼 서버 접속 클라이언트 # 아래와 같은 형태로 서버 접속 정보를 입력할 수 있다. # -server ip:port zookeeper-security-migration.sh # [3. 카프카 관련 명령어] kafka-server-start.sh kafka-server-stop.sh kafka-run-class.sh # 다른 툴들은 결과적으로 이 명령어를 이용하여 실행 된다. # USAGE: kafka-run-class.bat ..
topic 생성 시 유의 할 점 [1. partition 과 replication-factor] paritition 개수는 적어도 broker 개수 만큼 있어야 한다. => partition 및 replication-factor 가 모두 1 인 경우, => Leader 장애 발생 시, produce 및 consume 모두 동작하지 않는다.. partition 개수를 하나만 할 경우, replication-fator 는 broker 개수 만큼 설정해야 한다. => replication-factor 는 broker 개수를 넘길 수 없다. => partition 개수는 broker 개수를 넘길 수 있다. => 다른 broker 가 Leader 가 되어, produce 및 consume 이 가능해 진다. partition 개수 replicat..
rdkafka 빌드 [1. 개요] the Apache Kafka C/C++ client library librdkafka 는 C/C++ 환경에서 kafka 클라이언트 구현을 위한 라이브러리 로컬 환경에서 라이브러리 빌드 방법을 정리한다. [2. 개발환경] OS : Windows Compiler : mingw64 리눅스도 비슷한 방식으로 진행한다. [3. 라이브러리 빌드] wget https://github.com/confluentinc/librdkafka/archive/refs/tags/v2.1.1.zip # 혹은 git clone https://github.com/confluentinc/librdkafka 압축 해제 cd librdkafka-2.1.1 mkdir build cd build cmake .. -G "MinGW..
카프카 서버 설정 값 정리 [1. 개요] kafka 서버 구축 시, server.properties 에서 사용하는 설정 의미 정리한다. [2. 설정 값 목록] 필수 목록 broker.id => 카프카 id 를 의미한다고 볼 수 있다. => 클러스터 구축 시, 각 노드의 카프카는 서로 다른 id 를 가져야 한다. => 0 부터 순차적을 할당하도록 한다. => log.dirs => zookeeper.connect => 그 외 listeners => kafka broker 가 내부적으로 바인딩 하는 주소, 서버 실행 시 서버 소켓을 위함 => ip:port 형식으로 작성 => 0.0.0.0:9092 로 binding 하면, 모든 NIC 에서 요청을 받는다. advertiesd.listeners => producer 또는 consumer..
Kafka 기본 개념 [1. Kafka 란?] Publisher, Consumer 모델의 메시지 큐 이다. Publisher 가 어떤 Topic 을 주제로 메시지를 발행하면, 해당 Topic 을 구독하는 Consumer 가 발행된 메시지를 가져가는 것이다. [2. Kafka 구성요소] broker Kafka 서버(머신)를 칭한다. broker.id 라는 설정 값을 통해서 클러스터 내에서 구분된다. zookeeper broker 를 관리하는 관리자 역할을 한다. => kafka 노드 관리 및 topic 의 offset 정보등을 관리한다. kafka 서버를 실행하기 위해서는 zookeeper 의 실행이 반드시 선행되어야 한다. topic kafka 내에서 메시지를 분류하기 위한 하나의 단위 topic 이 같은 메시지는 같은 공간..
Kafka 설치 및 실행 [1. Kafka 다운로드] 아래 웹 사이트에서 바이너리 버전을 다운 받도록 한다. https://kafka.apache.org/downloads [2. Zookeeper 설정] Kafka 실행을 위해서는 먼저 Zookeeper 를 실행해야 하며, 실행 시 설정 파일 경로를 인자로 전달한다. 다만, 다운 받은 직후 설정 파일은 리눅스 기반으로 하고 있기 때문에 윈도우 OS 에서는 일부 설정 값을 변경 할 필요가 있다. config\zookepper.properties 위 파일에서 dataDir 설정 값을 PC 환경에 맞게 수정하도록 한다. 윈도우는 파일 경로 구분자를 (\) 로 처리하는데, 설정 값에서는 리눅스 파일 경로 구분자로 작성하는 편이 더 나은 거 같다. (설정 파일에 "\\" 로 써야 제대로 ..