전체보기(316)
-
카프카 - 04 - 데이터 파이프라인
카프카를 활용한 데이터 파이프라인 카프카를 활용하기 위한 다양한 오픈소스들이 있다. 로그 데이터를 수집하는 간단한 워크 플로우는 아래와 같이 짤 수 있다. 파일비트 -> 카프카 -> 나이파이 -> ES -> 키바나 파일비트 앨라스틱 서치에서 제공하는 경량 데이터 수집기이다. 특정 로그 경로를 바라보게해서 input 으로 받고 카프카로 produce 할 수 있다. 나이파이 데이터 흐름을 처리하기 위해서 데이터 처리에 특화된 기능의 솔루션 나이아가라 폭포 + 파일즈 여서 나이파이다. 다양한 프로세서를 가져다 사용할 수 있고 GUI 단에서 데이터 파이프라인을 연결할 수 있다. EvaluateJsonPath 프로세서 : JsonPath 에서 flow 파일 속성에 추가할 수 있고, flow 파일 자체로 기록할 수..
2020.04.14 -
카프카 - 03 - 운영가이드
토픽 생성 /usr/local/kafka/bin/kafka-topics.sh --zookeeper my-zk001:2181,my-zk002:2181,my-zk003:2181/my-kafka -replication-factor 1 --partitions 1 --topic my-topic --create 토픽 상세 조회 /usr/local/kafka/bin/kafka-topics.sh --zookeeper my-zk001:2181,my-zk002:2181,my-zk003:2181/my-kafka --topic my-topic --describe 토픽의 파티션수, 리더인지 확인 가능하다. 토픽 리스트 조회 /usr/local/kafka/bin/kafka-topics.sh --zookeeper my-zk001:..
2020.04.14 -
카프카 - 02 -프로듀서 / 컨슈머
프로듀서의 주요 기능 메시지를 토픽 파티션에 매핑하고 파티션의 리더에 요청을 보내는 것 * auto.create.topics.enable = true 로 설정 되어있는 경우 카프카에 존재하지 않는 토픽에 메시지로 보내면 자동으로 토픽이 생성된다. 자바를 이용한 카프카 프로듀서 import org.apache.kafka.clients.producer.KafkaProducer; import org.apache.kafka.clients.producer.Producer; import org.apache.kafka.clients.producer.ProducerRecord; import java.util.Properties; public class KafkaBookProducer1 { public static vo..
2020.04.10 -
카프카 - 01 - 카프카의 디자인
카프카 디자인의 특징 분산 시스템 아파치 카프카 문서에 따르면 링크드인에서 가장 사용량이 노퓨은 클러스터는 60대의 브로커를 운영하고 있다. 페이지 캐시 카프카는 처리량을 높이기 위해 페이지 캐시를 이용한다. 그래서 카프카를 구성할 때는 디스크 중에서 가격이 저렴한 SATA 를 사용해도 무방하다. 카프카는 자바 기반의 JVM 을 사용하는 어플리케이션이다. 카프카는 JVM 에서 1GB 의 힙메모리 영역을 사용하게 되어있다. 컨플루언트 사의 문서에 따르면 카프카는 초당 메시지 단위, 메가비트 단위를 처리하기 위해 5GB 의 힙메모리면 충분하다고 한다. 그리고 남아있는 메모리는 페이지 캐시로 사용하라고한다. 배치 I/O 처리 카프카는 데이터 I/O를 배치로 묶어서 처리한다. 토픽 메시지를 받을 수 있도록 논리..
2020.04.10 -
카프카 - 00 - 개요
아래 책을 읽고 정리합니다. : http://www.yes24.com/Product/Goods/59789254 카프카, 데이터 플랫폼의 최강자 데이터 플랫폼의 핵심 컴포넌트로 각광받고 있는, 이벤트 기반 비동기 아키텍처를 위한 고가용성 실시간 분산 스트리밍 솔루션 카프카(Kafka)의 모든 것!국내 최대 모바일 플랫폼 회사인 카카오에서 `전사 공용 카프카` 서비스를 운영하고, 데이터 파이프라인과 빅데이터 플랫폼을 구축한 저자들의 풍부한 지식, 생생한 실전 경험, 노하우가 가득 담긴 책... www.yes24.com 엔드투엔드 아키텍쳐 문제점 엔드투엔드 연결은 빠른 전송 속도와 전송 결과를 신속하게 알수 있는 장점이 있는 반면 문제점이 많다. 트랜잭션 처리와 비동기 처리가 동시에 이뤄지지만 통합된 전송영역..
2020.04.10 -
쿠버네티스 입문 - 14 - 헬름
헬름 차트는 템플릿 파일들의 집합이다. 헬름은 차트를 관리하는 쿠버네티스 패키지 매니저 도구다. 헬름은 차트와 차트 압축 파일을 만들 수 있다. 헬름은 차트 저장소와 연결해 쿠버네티스 클러스터에 차트를 설치 / 삭제 할 수 있다. 헬름은 차트들의 배포주기를 관리할 수 있다. 용어 정리 차트 : 쿠버네티스에서 실행할 어플리케이션을 만드는데 필요한 정보 묶음 컨피그 : 패키지한 차트에 넣어서 배포 가능한 오브젝트를 만들 때 사용할 수 있는 설정 릴리즈 : 특정 컨피그를 이용해 실행중인 차트의 인스턴스 헬름 클라이언트 : 헬름의 커맨드라인 인터페이스 틸러 서버 : 쿠버네티스 클러스터 안에서 헬름 클라이언트의 명령을 받아 쿠버네티스 API 와 통신하는 서버 차트 뮤지엄 : 차트를 사내에서만 운영해야할 경우 차트..
2020.04.09