자드's

하둡과 카프카, windows에서 카프카 설치 및 topic 생성 본문

프로그래밍/KAFKA

하둡과 카프카, windows에서 카프카 설치 및 topic 생성

최자드 2023. 1. 12. 18:25
728x90

 

Hadoop 

 

데이터 엔지니어를 위해 첫 발을 디뎌본다

 

 

Hadoop - 여러대의 컴퓨터 클러스터에서 대용량 데이터를 분산처리하는 프레임워크

 

HDFS(분산 파일 시스템) = 여러개의 컴퓨터를 하나로 묶어 대용량 데이터를 처리

Map Reduce = 저장된 분산파일을 분산된 서버의 CPU와 메모리를 사용해 분석

Zoo Keeper = 하둡의 서브프로젝트를 관리하는 것 ( 분산 서버 관리자 )

등으로 구성 되어있음.

 

 

분산 리소스 관리

  • Yarn - 맵리듀스, 하이브, 스파크 등 Yarn에서 작업 실행

데이터수집

  • kafka ( 실시간 데이터 스트리밍 ) : 데이터 실시간 관리 분산 시스템, 대용량 이벤트 처리

데이터 저장

  • HBase ( 분산 데이터 베이스 ) : 구글의 Bigtable 기반 비관계형DB, 하둡과 HDFS 위에 Bigtable기능 제공
  • HDFS ( 분산 데이터 저장 )

 

데이터 처리

  • Spark : 대규모 데이터 처리를 빠르게 실행시키는 엔진, Python과 R 등 에서 사용함
  • HIVE : 하둡 기반 데이터 솔루션, SQL과 유사한 HIVEQL을 사용, 데이터 분석에 사용
  • MapReduce : 대용량 데이터를 분산처리하기 위한 프로그램, 정렬된 데이터를 분산처리(map) 하고 이를 다시 합치는(Reduce) 과정, 하둡의 대용량 데이터 처리에서 제일 핫함

 

 

정리

데이터 수집 ( kafka 등 )

 

         ZooKeeper의 영역

 

=>  데이터 저장 ( HDFS로 분산화 시켜서 HBase에 저장 )  

 

=>  데이터 처리 ( Spark, HIVE , MapReduce 등으로 데이터 처리, 분석 )

 

의 과정으로 진행되는 거 같다.

 

 

Kafka 설치와 파일 확인

 

일단, 백문이 불여일견 설치부터 해보기로 했다.

리눅스에서 구동해볼 예정이었지만 가상머신이 너무 느리고…

아직 익숙치 않은 환경이라 익숙한 윈도우 환경에서 돌려보기로 했다.
python으로 사용해보기로 했다.
일단 링크로 가서 카프카를 다운로드 했다.

 

 

 

 

 

 

 

 

 

 

 

Kafka 실행

 

일단 카프카 사용을 위해서는 Zookeeper를 구동시켜야 한다.

 

제일 먼저 카프카를 설치한 경로로 이동을 해줌

터미널 실행 (편의상 카프카 디렉토리 이름을 변경해주었다)

 

주키퍼 서버 실행

zookeeper 실행 명령어 bin\windows\zookeeper-server-start.bat config\zookeeper.properties

실행 됨을 확인 후에 카프카 서버 실행도 해주면 된다.

 

 

 

 

 

 

카프카 서버 실행     * 참고 *  터미널을 새로 열어서 서버를 실행해줘야함

                                              또한, 명령어는 카프카의 설치 경로로 이동해준 후에 입력 (bin앞에 경로를 직접 적어도됨)

kafka 실행 명령어 bin\windows\kafka-server-start.bat config\server.properties

정상적으로 실행 되었으면 준비는 완료가 된 것

 

 

 

 

Topic 생성과 확인

 

 

* 참고 *

카프카의 기본 포트번호는 9092

또한, 두개의 서버를 시작한 터미널 말고 따로 또 열어서 명령어를 실행 해줘야한다. 

역시 카프카 경로로 이동해준 후에 입력.

 

kafka topic 생성하기

# bin\windows\kafka-topics.bat --create --bootstrap-server
카프카 접속주소:카프카 포트 --topic 카프카 토픽이름
ex) bin\windows\kafka-topics.bat --create --bootstrap-server localhost:9092 --topic testtopic

 

 

kafka topic 생성 확인

# bin\windows\kafka-topics.bat --list --bootstrap-server
카프카 접속주소:카프카 포트
ex) bin\windows\kafka-topics.bat --list --bootstrap-server localhost:9092

 

 

 

kafka topic 에 메세지 보내보기 (producer)

# bin\windows\kafka-console-producer.bat  --broker-list  카프카 접속주소:카프카 포트 --topic 카프카 토픽이름
ex) bin\windows\kafka-console-producer.bat  --broker-list  localhost:9092 --topic testtopic 
  >   메세지 입력

 

 

kafka topic 의 메세지 가져오기 (consumer)

#bin\windows\kafka-console-consumer.bat --bootstrap-server 카프카 접속주소:카프카 포트 --topic 카프카 토픽이름 --from-beginning
ex) bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic testtopic --from-beginning
 
 
 

728x90
Comments