Giter Site home page Giter Site logo

inflearn-kafka-perfect-guide-study's Introduction

인프런 카프카 완벽 가이드 스터디


https://www.inflearn.com/course/%EC%B9%B4%ED%94%84%EC%B9%B4-%EC%99%84%EB%B2%BD%EA%B0%80%EC%9D%B4%EB%93%9C-%EC%BD%94%EC%96%B4/dashboard


환경 구성


  • 로컬에 도커가 기본적으로 설치되어 있다는 가정하에 진행합니다.
  1. ubuntu 20.04 이미지를 다운받습니다.
docker pull ubuntu:20.04
  1. 내려받은 이미지를 통해 컨테이너를 생성합니다. 이때 root 권한을 줍니다.
docker run -it --name ubuntu-server -p 9092:9092 --privileged=true ubuntu:20.04
  1. docker container로 접속했다면 JDK 11버전을 설치합니다.
1. apt-get update && upgrade
2. apt-get install openjdk-11-jdk
3. java --version
  1. home 디렉토리로 이동하여 Kafka를 설치받습니다.
1. apt-get install wget
2. wget https://packages.confluent.io/archive/7.1/confluent-community-7.1.2.tar.gz
3. tar -xzvf confluent-community-7.1.2.tar.gz
4. rm -rf confluent-community-7.1.2.tar.gz
  1. 환경 변수를 지정합니다. 참고: 해당 파일의 맨 밑에 export를 추가합니다.
1. cd ~
2. vi .bashrc
3. export CONFLUENT_HOME=/home/confluent-7.1.2
4. export PATH=.:$PATH:$CONFLUENT_HOME/bin
5. wq!
6. . .bashrc(수정 내역 적용)
7. echo $CONFLUENT_HOME 테스트 입력 
  1. 주키퍼 서버 실행 테스트
zookeeper-server-start $CONFLUENT_HOME/etc/kafka/zookeeper.properties
  1. 카프카 서버 실행 테스트
kafka-server-start $CONFLUENT_HOME/etc/kafka/server.properties
  1. 환경 설정
1. mkdir data (home 디렉토리에서 data 디렉토리 생성)
2. mkdir zookeeper (data 디렉토리에서 생성)
3. mkdir kafka-logs (data 디렉토리에서 생성)
4. cd $CONFLUENT_HOME/etc/kafka
5. vi server.properties
  log.dirs=/home/data/kafka-logs 기존 로그 디렉토리를 이와 같이 변경
6. vi zookeeper.properties
  dataDir=/home/data/zookeeper 기존 데이터 디렉토리를 이와 같이 변경

다시 주키퍼와 카프카를 실행시켜 로그에서 디렉토리가 잘 변경되었는지 살펴본다.
  1. 간편한 쉘 스크립트 작성
1. vi zoo_start.sh
  $CONFLUENT_HOME/bin/zookeeper-server-start $CONFLUENT_HOME/etc/kafka/zookeeper.properties 입력 후 저장
2. vi kafka_start.sh
  $CONFLUENT_HOME/bin/kafka-server-start $CONFLUENT_HOME/etc/kafka/server.properties 입력 후 저장
3. chmod +x *.sh
  1. 토픽 만들어지는지 테스트
1. kafka-topics --bootstrap-server localhost:9092 --create --topic welcome-topic
Created topic welcome-topic. 뜨면 정상적으러 만들어진것

참고

  • 로컬에서 프로듀서 서버가 카프카에 접속하기 위해서는 server.properties의 dvertised.listeners를 수정해야함
#advertised.listeners=PLAINTEXT://your.host.name:9092 
advertised.listeners=PLAINTEXT://localhost:9092 << 이거처럼 수정

inflearn-kafka-perfect-guide-study's People

Contributors

kdg0209 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.