목록kafka 설치 및 구성/참고) configuration (10)
saay, hi

옵션 명설명batch.size배치 전송을 위해 메시지(레코드)들을 묶는 단위를 설정하는 배치 크기 옵션.위 그림에서 우측 중앙의 토픽A-파티션1 하단의 점선 박스로 둘러싼 부분.기본값은 16KB로 설정돼 있으며, 관리자는 배치 크기를 더 높이거나 줄일 수 있음buffer.memory카프카로 메시지들을 전송하기 위해 담아두는 프로듀서의 버퍼 메모리 옵션.위의 그림과 같이 가장 큰 점선 박스로 둘러싼 부분기본값은 32MB로 설정되어 있으며, 관리자는 필요에 따라 설정값을 조정할 수 있음linger.ms배치 전송을 위해 버퍼 메모리에서 대기하는 메시지들의 최대 대기시간을 설정하는 옵션.단위는 밀리초(ms)이며, 기본값은 0임즉, 기본값을 0으로 설정하면, 배치 전송을 위해 기다리지 않고 메시지들이 즉시 전송됨
프로듀서 옵션값설명enable.idempotencetrue프로듀서가 중복 없는 전송을 허용할 지 결정하는 옵션.기본 값은 false이므로, 이 옵션을 설정하기 원한다면 true로 변경해야 함.true로 변경 시 다음에 나오는 옵션들도 반드시 변경해야 함. 그렇지 않으면, ConfigException 이 발생함max.in.flight.requests.per.connection1~5ack을 받지않은 상태에서 하나의 커넥션에서 보낼 수 있는 최대 요청 수.기본 값은 5이며, 5이하로 설정해야 함acksall프로듀서 acks와 관련된 옵션으로서, 기본값은 1이며 all로 설정해야 함retries5ack을 받지 못한 경우 재시도를 해야 하므로 0보다 큰 값으로 설정 해야 함.

static memebership이란,컨슈머 그룹 내에서 컨슈머가 재시작 등으로 그룹에서 나갔다가 다시 합류하더라도 리밸런싱이 일어나지 않게 하는 정책즉, 컨슈머마다 인식할 수 있는 ID를 적용함으로써 다시 합류하더라도 그룹 코디네이터가 기존 구성원임을 인식하게 하는 것. 설정 방법group.instance.id옵션에 그룹 코디네이터가 컨슈머를 식별하기 위해 컨슈머 인스턴스별로 고유한 값을 입력해야 함정상case 1. group.instacne.id 입력 안할 경우컨슈머 리밸런싱은 재시작되거나 그룹에서 떠나는 컨슈머만 대상으로 동작하는 것이 아니라서, 컨슈머 그룹 내 전체 컨슈머를 대상으로 동작함컨슈머 리밸런싱 동작 과정 중 일시적으로 모든 컨슈머가 일시 중지하게 되며 대량의 메시지를 컨슘하는 컨슈머 그..

옵션 이름옵션 값적용 범위설명cleanup.policycompact토픽의 옵션으로 적용토픽 레벨에서 로그 컴팩션을 설정할 때 적용하는 옵션log.cleanup.policycompact브로커의 설정 파일에 적용브로커 레벨에서 로그 컴팩션을 설정할 때 적용하는 옵션log.cleaner.min.compaction.lag.ms0브로커의 설정 파일에 적용메시지가 기록된 후 컴팩션하기 전 경과되어야 할 최소 시간을 지정함.만약 이 옵션을 설정하지 않으면, 마지막 세그먼트를 제외하고 모든 세그먼트를 컴팩션할 수 있음log.cleaner.max.compaction.lag.ms9223372036854775807브로커의 설정 파일에 적용메시지가 기록된 후 컴팩션하기 전 경과되어야 할 최대 시간을 지정함log.cleaner..
[ default ] 옵션명default설명1dataDir/tmp/zookeeper주키퍼의 상태, 스냅션, 트랜잭션 로그들을 저장하고 업데이트하는 디렉토리의 위치3clientPort2181클라이언트로 요청을 받기 위한 포트4maxClientCnxns0클라이언트로 부터 동시에 접속할 수 있는 연결 수를 지정.연결수는 클라이언트 IP당 개수이며, 기본값은 10이며 0은 무제한이다.5admin.enableServerfalse주키퍼는 default로 admin server를 기동하는데에 8080 port를 사용하는데, 주키퍼 기동 시 port 충돌을 방지하기 위해 false 로 사용[ 그 외 주석처리나 cluster시 변경 사항] 옵션명default설명1initLimitX처음 주키퍼의 follower가 lead..
topic와 관련된 구성에는 서버 기본값과 선택적 주제별 재정의가 모두 가능함.항목별 구성이 지정되지 않은 경우 서버 기본값이 사용되며, 재정의는 하나 이상의 옵션을 제공하여 topic 생성 시 설정할 수 있음아래의 예제에서는 사용자 지정 최대 메시지 크기 및 플러시 속도를 사용하여 my-topic이라는 주제를 만듦재정의는 나중에 alter configs 명령을 사용하여 변경하거나 설정할 수도 있음bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic my-topic --partitions 1 \ --replication-factor 1 --config max.message.bytes=64000 --config flush.messa..
[ default 옵션] 옵션명default설명1bootstrap.serverslocalhost:9092초기 kafka cluster에게 연결하기 위한 host/port 쌍의 list.bootstrap.servers 를 등록해야 외부 서버에서 연결이 가능하며, 2개 이상 권장 ( consumer AP 끊기게 될 경우, 다른 consumer 로 연결하기 위해)default : ""2compression.typenone생성된 모든 데이터에 대한 압축 코덱 지정 : none, gzip, snnappy, lz4, zstd[ Producer AP 옵션 ] 옵션명default설명비고1key.serializer 인터페이스를 구현하는 키에 대한 직렬 변환기 클래스 2value.serializer 인터페이스를 구현하는 ..
[ default 옵션] 옵션명default설명1bootstrap.serverslocalhost:9092초기 kafka cluster에게 연결하기 위한 host/port 쌍의 list.bootstrap.servers 를 등록해야 외부 서버에서 연결이 가능하며, 2개 이상 권장 ( consumer AP 끊기게 될 경우, 다른 consumer 로 연결하기 위해)default : ""2group.idtest-consumer-group각 consumer가 속해있는 컨슈머 그룹들을 구별하기 위해 사용. 이 속성은 컨슈머가 susbscribe(topic)사용에 의한 그룹 관리 기능이거나 카프카 기반의 offset 관리 정책를 사용할 경우 요청됨dafult : null[ consumer AP 옵션 ] 옵션명def..
[ default 옵션 ] 옵션명default설명1bootstrap.serverslocalhost:9092카프카 클러스터에 대한 초기 커넥션을 구축하는 데 사용할 호스트/포트 쌍 리스트.kafka broker 서버 = bootstrap 서버.2group.idconnect-clusterconnect를 같은 클러스터로 묶기 위한 그룹 설정.3key.converterorg.apache.kafka.connect.json.JsonConverter카프카 커넥트 포맷과 카프카에 기록한 직렬화된 포맷 간을 변환할 때 사용할 컨버터 클래스. 카프카에서 쓰거나 읽은 메세지 키 포맷은 이 클래스가 제어하며, 컨버터는 커넥터와는 독립적이기 때문에, 사용하는 커넥터와는 무관하게 어떤 직렬화 포맷으로도 작업할 수 있다.4valu..
[ default configs ]-broker.id, log.dirs, zookeeper.connect는 필수 구성 요소임 옵션명default 값옵션 설명1broker.id0각 broker를 구별하기 위한 broker의 id. 서로 다른 값을 주어야 함2num.network.threads3서버에서 네트워크로부터 요청을 받고 네트워크로 응답을 전송할 때 사용할 스레드 수. (네트워크 요청을 처리하는 Thread의 개수)3num.io.threads8서버에서 request를 처리할 때 사용하는 스레드 수.(I/O가 생길때 마다 생성되는 Thread의 개수)4socket.send.buffer.bytes102400네트워크 요청을 처리할 소켓 서버가 사용하는 수신 메모리 사이즈5socket.receive.buff..