# 1d = 86400000ms
$ ./bin/kafka-topics.sh --zookeeper <Zookeeper ip address> --alter --topic \
<Topic name> --config retention.ms=86400000

# 변경되었는지 확인 retention.ms=86400000면 성공
$ ./bin/kafka-topics.sh  --describe --zookeeper <Zookeeper ip address> --topic <Topic name>

 

 

참고



https://knight76.tistory.com/entry/kafka%EC%97%90%EC%84%9C-retentionms-%EC%88%98%EC%A0%95%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

kafka에서 retention.ms 수정하는 방법

kafka에서 retention.ms 수정하는 방법은 다음 예처럼 간단한다. $ ./bin/kafka-topics.sh --create --zookeeper zkserver -replication-factor 1 --partitions 1 --topic samuel.test $ ./bin/kafka-topics.sh -..

knight76.tistory.com

 

https://github.com/occidere/TIL/issues/13

 

카프카 데이터 보관주기 설정 · Issue #13 · occidere/TIL

카프카 데이터 보관주기 설정 기본 개념 메시지 보관 기간 설정은 개별 메시지가 아닌 log segment 파일을 대상으로 처리된다. 이를 바탕으로 메시지가 카프카 브로커에 생성될 때, 해당 파티션의 l

github.com

 

'Database > Kafka' 카테고리의 다른 글

Kafka QuickStart  (0) 2020.07.30
centOS 8에 Kafka 설치  (0) 2020.07.28
[MacOS] Cloudkarafka와 python를 연동해서 메세지 전송하기  (0) 2020.07.25
[MacOS] Cloudkarafka로 kafka 맛보기  (1) 2020.07.24
$ wget http://mirror.navercorp.com/apache/kafka/2.4.0/kafka_2.12-2.4.0.tgz
$ tar -xzf kafka_2.12-2.4.0.tgz
$ cd kafka_2.12-2.4.0


# kafka 폴더 안에서 zookeeper 실행
$ bin/zookeeper-server-start.sh config/zookeeper.properties

# kafka 실행
$ bin/kafka-server-start.sh config/server.properties


# create topic
$ bin/kafka-topics.sh --create --bootstrap-server localhost:9092 \
--replication-factor 1 --partitions 1 --topic <topic name>

# topic 리스트 확인
$ bin/kafka-topics.sh --list --bootstrap-server localhost:9092

 

 

참고


https://kafka.apache.org/quickstart

 

Apache Kafka

Apache Kafka: A Distributed Streaming Platform.

kafka.apache.org

https://soyoung-new-challenge.tistory.com/61

 

[Kafka] 카프카 튜토리얼_Quick Start

카프카를 처음 접했을 때 빠르게 시작할 수 있는 튜토리얼 입니다:) "공식문서를 바탕으로 작성 된 카프카 Quickstart" Kafka 다운로드 # Kafka 2.4.0 버전 다운로드 : https://www.apache.org/dyn/closer.cgi?pa..

soyoung-new-challenge.tistory.com

https://sejoung.github.io/2018/09/2018-09-11-kafka_quickstart/#7%EB%8B%A8%EA%B3%84-Use-Kafka-Connect-to-import-export-data

 

카프카 Quickstart | 폭간의 기술블로그

카프카 Quickstart 이 튜토리얼은 당신이 기존의 Kafka 또는 ZooKeeper 데이터가 없다고 가정합니다. Kafka 콘솔 스크립트는 Unix 기반 및 Windows 플랫폼에서 서로 다르므로 Windows 플랫폼에서는 bin/대신 bin\w

sejoung.github.io

https://12bme.tistory.com/521

 

[Kafka] 카프카 스트림즈 (1) - 카프카 훑어보기

카프카 스트림즈의 구성요소를 다루어 기본적인 "추출/변환/적재"부터 레코드 조인을 통한 복잡한 상태 변환까지 스트리밍 애플리케이션의 다양한 문제를 해결할 수 있게 된다. 대량의 데이터��

12bme.tistory.com

 

Java 설치


$ sudo dnf install java-11-openjdk wget vim

 

 

Kafka 다운로드


$ wget http://www-us.apache.org/dist/kafka/2.4.0/kafka_2.13-2.4.0.tgz
$ tar xzf kafka_2.13-2.4.0.tgz
$ mv kafka_2.13-2.4.0 /usr/local/kafka

//root 아닐 경우에는 sudo mv kafka_2.13-2.4.0 /usr/local/kafka

 

 

Unit file Setting


Zookeeper

$ vim /etc/systemd/system/zookeeper.service

 

[Unit]
Description=Apache Zookeeper server
Documentation=http://zookeeper.apache.org
Requires=network.target remote-fs.target
After=network.target remote-fs.target

[Service]
Type=simple
ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

 

 

Kafka

$ vim /etc/systemd/system/kafka.service

 

[Unit]
Description=Apache Kafka Server
Documentation=http://kafka.apache.org/documentation.html
Requires=zookeeper.service

[Service]
Type=simple
Environment="JAVA_HOME=/usr/lib/jvm/jre-11-openjdk"
ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh

[Install]
WantedBy=multi-user.target

 

$ systemctl daemon-reload	//마무리

 

 

Kafka 실행


$ sudo systemctl start zookeeper	//zookeeper 시작
$ sudo systemctl start kafka		//kafka 시작
$ sudo systemctl status kafka		//kafka active 확인

 

오류발생

 

zookeeper 실행 안되는 현상으로 kafka까지 active fail

 

 

아래 명령어로 프로세스 조회

$ journalctl -xe

 

Cloudkarafka


클라우드에서 관리되는 apache kafka 서버로, 카프카의 설정, 실행 및 확장 등을 자동화시킨 서비스를 제공한다.

 

cloud에 대한 자세한 내용은 아래 아파치 카프카의 공식 홈페이지에서 확인할 수 있다.

https://www.cloudkarafka.com/docs/index.html

 

Documentation - CloudKarafka, Apache Kafka Message streaming as a Service

Documentation Getting started CloudKarafka are managed Apache Kafka servers in the cloud. Kafka is a distributed publish-subscribe messaging systems that is designed to be fast, scalable, and durable. It's an open-source message broker written in Scala and

www.cloudkarafka.com

 

 

 

cloudkarafka getting start - python


툴은 Visual Studio를 사용

 

1. 원하는 디렉터리 경로에서 아래 명령어를 입력

git clone https://github.com/CloudKarafka/python-kafka-example.git

 

 

2. visual studio에서 해당 프로젝트 오픈

 

 

3. 환경변수 설정을 위해서 cloudkarafka의 왼쪽 메뉴바의 [Detail] 클릭

Connection details의 Download를 클릭하여 instance 정보가 담긴 txt 파일을 다운로드

txt 파일 내용

 

 

4. 3번의 txt파일의 정보를 가지고, 터미널로 환경변수 설정

~ export CLOUDKARAFKA_BROKERS="rocket-01.srvs.cloudkafka.com:9094,rocket-02.srvs.cloudkafka.com:9094,rocket-03.srvs.cloudkafka.com:9094"
~ export CLOUDKARAFKA_USERNAME="it5v25et"
~ export CLOUDKARAFKA_PASSWORD="xDjmU_mpuzRcoux8pjFkPJAmgutBU0ar"
~ export CLOUDKARAFKA_TOPIC="it5v25et-testTopic"

// TOPIC은 "username-내가정한인스턴스이름"

 

 

5. 환경변수 설정을 끝내고 터미널로 consumer.py 실행

~ python consumer.py

 

 

6. 또 다른 Terminal을 열고 producer.py 실행

~ python producer.py

 

 

7. cloudkarafka에서 producer에서 메시지 적재

 

메시지 적재가 된 것을 Terminal에서 확인할 수 있다.

 

터미널 화면

 

'Database > Kafka' 카테고리의 다른 글

Kafka message(data) 보관주기 설정  (0) 2020.07.30
Kafka QuickStart  (0) 2020.07.30
centOS 8에 Kafka 설치  (0) 2020.07.28
[MacOS] Cloudkarafka로 kafka 맛보기  (1) 2020.07.24

 

Cloudkarafka


귀여운 오리

클라우드에서 관리되는 apache kafka 서버로, 카프카의 설정, 실행 및 확장 등을 자동화시킨 서비스를 제공한다.

 

cloud에 대한 자세한 내용은 아래 아파치 카프카의 공식 홈페이지에서 확인할 수 있다.

https://www.cloudkarafka.com/docs/index.html

 

Documentation - CloudKarafka, Apache Kafka Message streaming as a Service

Documentation Getting started CloudKarafka are managed Apache Kafka servers in the cloud. Kafka is a distributed publish-subscribe messaging systems that is designed to be fast, scalable, and durable. It's an open-source message broker written in Scala and

www.cloudkarafka.com

 

 

 

Cloudkarafka 시작하기


1. 홈페이지에 접속한 뒤 초록색 버튼 클릭 - https://www.cloudkarafka.com/ 

 

 

2. 이 포스팅에서 사용할 것은 이 귀여운 DEVELOPER DUCK! 

[Try a Developer Duck]을 클릭 -> 회원가입 진행 -> 로그인

 

 

3. 로그인하면 아래와 같은 창이 보이고, Name에는 자신이 원하는 Instance 이름을 입력 -> [Select Region] 클릭

(위의 노란색 알림은 무시해도 상관 없음)

 

 

4. data 센터의 위치 선택 -> [review] 클릭

버지니아는 에러나서 EU-WEST-1로 선택

 

 

5. [create instance] 클릭

 

 

6. instance가 생성된 것을 확인 (testinstance)

 

 

7. 방금 만든 인스턴스를 클릭하면 아래와 같이 정보를 확인할 수 있다. 

 

 

 

Consumer & Producer 사용해보기 (message 적재)


이번 포스팅은 producer를 이용해서 메세지를 적재하고, consumer가 소비하는 것을 확인하는 것이 목표!!

 

1. 왼쪽 메뉴바의 [TOPICS]를 클릭하여 토픽에 대한 정보를 입력 -> [create] 클릭

(간단한 테스트만 진행할 것이기 때문에, partitions와 replicas를 모두 1로 정함)

 

 

2. 왼쪽 메뉴바의 [BROWSER] 클릭 -> topic name을 Consumer, Producer에 입력

 

 

 

3. Producer 에 적재하고 싶은 Message를 작성하여 [Produce] 클릭하면 Consumer에서 확인할 수 있다

 

4. [Consume] 클릭하면 메세지를 소비

소비하기 전
소비 후

 

 

 

'Database > Kafka' 카테고리의 다른 글

Kafka message(data) 보관주기 설정  (0) 2020.07.30
Kafka QuickStart  (0) 2020.07.30
centOS 8에 Kafka 설치  (0) 2020.07.28
[MacOS] Cloudkarafka와 python를 연동해서 메세지 전송하기  (0) 2020.07.25

+ Recent posts