PaaS/MQ 23

TypeScript, NestJS로 Confluent Kafka 연결 3-Consumer 개발

1.NestJS는 설치npm i -g @nestjs/cli 2. Consumer 프로젝트를 생성nest new consumer 3. 필요 패키지 설치yarn add @nestjs/microservicesyarn add kafkajs 4. 개발https://github.com/armyost/kafka-sample/tree/main/consumer kafka-sample/consumer at main · armyost/kafka-sampleContribute to armyost/kafka-sample development by creating an account on GitHub.github.com src/main.ts import { NestFactory } from '@nestjs/core';imp..

PaaS/MQ 2025.09.01

TypeScript, NestJS로 Confluent Kafka 연결 2-Producer 개발

1.NestJS는 설치npm i -g @nestjs/cli 2. Consumer 프로젝트를 생성nest new consumer 3. 필요 패키지 설치yarn add @nestjs/microservicesyarn add kafkajs 4. 개발https://github.com/armyost/kafka-sample/tree/main/producer kafka-sample/producer at main · armyost/kafka-sampleContribute to armyost/kafka-sample development by creating an account on GitHub.github.com src/kafka-producer.service.tsimport { Injectable, OnModuleI..

PaaS/MQ 2025.09.01

TypeScript, NestJS로 Confluent Kafka 연결 1- Confluent 세팅

이러한 SAAS 서비스를 통해 인프라를 구축하면 손쉽고 관리가 용이하다. 이 페이지에서는 Confluent에서 Cluster 생성과 Topic , Client 인증을 위한 Key를 생성한다. 1. Confluent 접속https://www.confluent.io/ Confluent | The Data Streaming PlatformStream, connect, process, and govern your data with a unified Data Streaming Platform built on the heritage of Apache Kafka® and Apache Flink®.www.confluent.io 2. Create Cluster 클릭 > 생성하고자 하는 Type의 Cluster를 지정한..

PaaS/MQ 2025.09.01

kafka 내, 외부 IP모두에서 접속할수 있게 세팅

어플리케이션 및 기타 서비스에서 kafka서버에 연결할때 bootstrap Server를 정의하는데, 이때 내부IP로 충분한 경우도 있지만, 부득이하게 외부 네트워크 환경을 거쳐 kafka서버에 접속이 필요한 경우가 있다. kafka가 이게 쫌 예민해서 아래와 같이 잘 적용해야 한다. kafka config 파일에서 internal과 External을 나눠서 입력해줘야합니다. ~/config/server.properties 에서 아래와 같이 수정 listeners=INTERNAL://0.0.0.0:19092,EXTERNAL://0.0.0.0:9092 listener.security.protocol.map=INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT advertised.listene..

PaaS/MQ 2023.03.08

Kafka Oauth 인증 추가하기

원문 : https://medium.com/egen/how-to-configure-oauth2-authentication-for-apache-kafka-cluster-using-okta-8c60d4a85b43 How to Configure OAuth2 Authentication for Apache Kafka Cluster using Okta OAuth2 Authentication using OAUTHBEARER mechanism medium.com 우선 kafka oauth Class File을 다운로드 받는다 repository에서 다운로드 : https://github.com/vishwavangari/kafka-oauth2 이걸 Build수행하고 target에 있는 kafka-oauth2-0.0.1...

PaaS/MQ 2023.02.22

kafka 서버에 SSL 혹은 SASL 을 적용하면 성능 저하가 있을까?

SSL SSL의 경우 이미 리포트가 있어서 결과만 공유한다. https://blog.mimacom.com/apache-kafka-with-ssltls-performance/ Performance considerations when using Apache Kafka with SSL/TLS Running a cluster of a distributed software such as Apache Kafka in a production environment will lead to operational concerns. One of these concerns is certainly security. Companies have varying… blog.mimacom.com 테스트 환경 SPEC Number of c..

PaaS/MQ 2022.07.14

kafka SASL 인증 구축하기

※오타주의! 오타하나에 매우 민감한 작업임.. 우선 시작전에 인스턴스 구성을 설명하겠다. peter-zk01.foo.bar : kerberos Server (원래 이용도가 아닌데, 자원이 없어서..) peter-kafka01.foo.bar : broker Server 아무 Server : Client용 Server 최소 3대가 필요하고, broker가 replication으로 다중으로 운영된다면 broker는 여러개 여도 된다. kerberos Server는 별도로 빼도 되고 그냥 broker서버에다가 같이 올려도 잘돌아간다. 당연히 운영을 생각한다면 분리하는것이 맞지만, 테스트용이라면 같이해도 무방 Kerberos 서버 세팅은 내가 공부한 책의 github에 있는 ansible-playbook를 실행하..

PaaS/MQ 2022.07.14

kafka 클러스터 만들기

kafka broker 클러스터는 master / slave 개념이 없다. 그냥 다 동등한 broker. 다만 partition에는 Leader와 Follower가 있으며 이 Leader 파티션을 각 broker에 균등하게 분배 해주는것이 kafka 부하분산의 핵심 그리고 quorum 개념으로 꼭 홀수의 노드구성이 필요하다는 것은 잘 알것이다. kafka 서버 설치는 이전 포스팅을 참고해서 진행바란다. https://armyost.tistory.com/254?category=1028239 kafka 서버 설치하기 CentOS7을 기준으로 작성한 가이드 입니다. JDK 설치 # sudo yum install java-1.8.0-openjdk-devel # java -version kafka 서버 Insta..

PaaS/MQ 2022.07.13

엔터프라이즈용 kafka의 환경구성

엔터프라이즈 환경에서는 장애 복구등을 위해 하나 이상의 데이터 센터를 운영, 관리하는 경우가 많습니다. 따라서 kafka클러스터 역시 다수의 데이터 센터에 배치되어 있으므로, kafka와 kafka간의 데이터 리플리케이션은 필수 입니다. 이때 kafka간의 데이터 리플리케이션에는 주로 미러 메이커를 사용합니다. 커넥터 기반의 미러메이커 2.0 장애복구 차원에서 다중 데이터센터를 운영하는 경우 각 데이터 센터에 kafka 클러스터를 배치하고 kafka와 kafka간에는 리플리케이션을 구성해야 합니다. 두번째 최근 가장 흔한 사례로써 온프레미스에서의 데이터를 클라우드로 마이그레이션하려는 경우에는 온프레임스에 kafka를 하나 두고 클라우드에 또 다른 kafka를 두어서 온프레미스에서 클라우드로 리플리케이션 ..

PaaS/MQ 2022.07.08

kafka 커넥트

kafka 커넥트는 아파치 kafka의 오픈소스 프로젝트 중 하나로 데이터 베이스 같은 외부 시스템과 kafka를 손쉽게 연결하기 위한 프레임워크 입니다. kafka 사용자들은 kafka 커넥트 프레임워크를 이용해 대용량의 데이터를 kafka 안팎으로 손수비게 이동시킬 수 있으며, 코드를 작성하지 않고도 간단히 사용할 수 있습니다. 물론 프로듀서와 컨슈머를 직접 개발해 원하는 동작을 실행하고 처리할 수 있지만, 때로는 애플리케이션을 개발하고 운영하는데 들어가는 리소스나 비용이 부담되는 경우가 있습니다. 이런 경우 kafka 커넥트를 이용하면 좀더 효율적이고 빠르게 클라이언트를 구성하고 적용할 수 있습니다. 데이터 중심 파이프라인 : 커넥트를 이용해 kafka로 데이터를 보내거나, kafka로부터 데이터를..

PaaS/MQ 2022.07.08