[Kafka] 카프카 설치

600g (Kim Dong Geun)·2021년 5월 30일
0

카프카를 로컬환경에서 사용하기 위해서는 주키퍼등 여러가지 설치 및 설정을 해야할 것이 많다.

따라서 나는 카프카를 도커 환경에다 설치해서, 로컬환경과 개발환경을 분리하는 방법을 택했다.

  1. docker-compose.yaml 작성
    Kafka는 주키퍼 라는 분산 코디네이터 프레임워크를 기반으로 제작되어져있기 때문에 주키퍼의 설치가 선행으로 필요하다.
    따라서 Docker compose를 사용해서 하나의 어플리케이션으로 쉽게 제작할 수 있도록 하겠다
version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    container_name: zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka:2.12-2.5.0
    container_name: kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      

Kafka는 아파치에서 제공하고 있는 공식 docker image가 존재하고 있지 않기 때문에, docker hub에서 제공하는 가장 Star수가 높은 이미지를 선택해서 설치했다.

Docker search kafka

하면 실시간으로 stars 확인가능

  1. 카프카 설치하기
# 카프카 설치
docker-compose up -d

# 카프카 실행
docker container exec -it kafka bash

를 통해서 카프카 환경에 접속할 수 있다.

설치한 이미지는 kafka 경로가 $PATH에 등록되어있어서, 카프카가 지원하는 다양한 쉘들을 터미널에 바로 입력하기만 해도 사용가능하다.

  1. 동작 잘되는지 확인하기
#토픽 생성하기
kafka-topics.sh --bootstrap-server localhost:9092 --create --topic hello.kafka.

#토픽 리스트 확인
kafka-topics.sh --bootstrap localhost:9092 --list

#토픽 상세정보 확인
kafka-topics.sh --bootstrap localhost:9092 --describe --topic hello.kafka.

잘 동작된다:)

다음은 간단하게 카프카 shell 명령어에 대해 알아보겠다 :)

profile
수동적인 과신과 행운이 아닌, 능동적인 노력과 치열함

0개의 댓글