아파치 카프카 입문 2강 - Kafka 설치,실행,CLI

openthem00n·2022년 8월 13일

aws EC2 프리티어 생성

방화벽(보안그룹)
인바운드 규칙에 9092 포트 추가해주기
why? : kafka 를 aws안에 설치하면 kafka 는 9092포트로 사용하게 된다.

pem 파일 권한 설정
why?: 권한설정을 해줘야 pem 파일 사용가능

윈도우 11인 나는 이 블로그를 참고했다. :
https://techsoda.net/windows10-pem-file-permission-settings/

ec2 접근하려면 public ip 로 접근해야한다.
: mobaxterm 과 pem키로 접근 성공!

kafka 설치 중 not found 에러가 떠서 url 접속해보니 2.7 버전이 없어져 있었다.
대신 2.8.1 버전을 설치했다.

-> 이러면 주키퍼 실행할때, Classpath is empty. Please build the project first e.g. by running ~ 가 뜨게 되는데, 이는 바이너리파일이 아닌 src 파일을 설치해서 그렇다. 삭제하고 binary 파일로 재설치하니 잘된다.

3.2.1 은 kafka 실행 명령어가 안먹어서 2.8.1 로 재설치 하니까 됐다.
링크: https://downloads.apache.org/kafka/2.8.1/kafka_2.12-2.8.1.tgz

a 누르면 insert 로 변환 가능
listeners 부분과
advertised.listeners 부분의 주석을 해제하고 hostname에 ec2의 public ip 를 적어준다.

kafka 설정 최적값


설정값들

  • broker.id: 정수로된 브로커번호, 클러스터 내 고유번호로 지정
    listeners: kafka 통신에 사용되는 host:port
    advertised.listeners :Kafka client 가 접속할 host:port
    log.dirs : 메시지를 저장할 디스크 디렉토리, 세그먼트가 저장됨
    log.segment.bytes : 메시지가 저장되는 파일의 크기 단위
    log.retention.ms :메시지를 얼마나 보존할지 지정, 닫힌 세그먼트를 처리
    zookeeper.connect : 브로커의 메타데이터를 저장하는 주키퍼의 위치
    auto.create.topics.enable : 자동으로 토픽생성 여부
    num.partitions : 자동생성된 토픽의 default partitions 개수
    message.max.bytes : kafka broker에 쓰려는 메시지 최대크기
profile
개발자

0개의 댓글