본문 바로가기

confluent6

실시간 데이터 수집-6 (Elasticsearch & kibana 설치) filebeat로 수집한 데이터를 metric 수집 및 적재에 특화되어 있는 promethues에 적재하는 것은 적절하지 않다고 판단하여 적재 장소를 Elasticsearch로 변경하게 되었다. (Filebeat와 호환성 보장) 또한 아키텍쳐에 필수요소는 아니나 Elasticsearch 데이터조회의 편의성을 위해 Kibana도 함께 설치를 진행하였다. Elasticsearch 설치 및 kafka를 통한 데이터 적재를 기록할 예정이다. Elasticsearch 설치 Elasticsearch 설치 $ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.12.2-amd64.deb $ wget https://artifacts.ela.. 2024. 3. 24.
실시간 데이터 수집-5 (Filebeat 설치) 환율 데이터를 API로 받아보니 json array 형태로 되어있어서 kafka로 직접적으로 넣기가 힘들었다. filestream connector를 사용하면 json array를 하나하나 풀어서 파일에 write 한 후 읽어갈 수 있지만 실제 운영환경에서는 사용을 권하지 않는다고 공식문서에 적혀있었다. 그렇다면 log 파일 형태로 관리했을때 어떻게 kafka로 수집할 수 있을지 찾아보다 ELK stack에서 자주 사용되는 filebeat를 사용하기로 결정했다. connector의 역할을 충분히 대체할 수 있고 제한적인 환경에서 logstash보다 적은 리소스를 차지한다. 환율 log 파일 생성 현재 환율 api를 통해 가져오는 데이터가 json형태의 데이터가 여러개 들어있는 array 형태이기 때문에 .. 2024. 3. 10.
실시간 데이터 수집-2 (AWS에서 Confluent 설치) 실제로 Confluent를 서버에 설치해본다. 리소스 한계상 Standalone 버전으로 진행했다. 설치 환경 서버 aws ec2 : t2.xlarge 유형 OS / 소프트웨어 버전 S/W Version Ubuntu 20.04.6 JAVA 11 Confluent - Community 7.6.0 JAVA 설치 java 11버전 설치 script : https://github.com/tjsdud594/Confluent/blob/main/ShellScript/install_java.sh java 17 버전 설치시 아래 에러발생 Error: the Confluent CLI requires Java version 1.8 or 1.11. See https://docs.confluent.io/current/insta.. 2024. 2. 11.
실시간 데이터 수집-1 (시나리오) 실시간 데이터 수집을 위한 시나리오를 구축한다. 어떤 데이터를 수집할 지, 가공을 어떻게 할 것인지, 어디에 저장할 것인지, 시각화는 어떻게 할 것인지. Architecture 수집대상 실시간 환율 api : 실시간 환율 정보를 가져온다. (링크) 수집기 Filebeat : json log file 형태로 기록되고 있는 실시간 환율 데이터를 수집하여 kafka topic에 저장한다. Kafka : Topic에 실시간 데이터를 queue 방식으로 저장한다. Sink Connector : Topic에 저장된 데이터를 Sink Connector를 활용하여 Target DB(Elasticearch)에 저장한다. Prometheus : node와 Kafka의 Metric 수집에 사용. 가공 Spark Stream.. 2024. 2. 11.
Confluent 구축 사양 체크 목표 Onpremise 환경을 기준으로 Confluent를 활용하여 실시간 데이터 수집 / 가공 데이터 pipeline을 구축 하기 전 필요한 서버의 최소 사양, Clustering 여부, 호환되는 JAVA, OS 를 조사하기 위함. Confluent 설치사양 Standalone Memory CPU Storage OS 32GB (JVM default 6GB) 8 (or more cores) 300GB (SSD 권장) Ubuntu 14.04 이상 Debian 8 이상 RHEL/Centos 6.8 이상 Cluster Component Nodes Storage Memory CPU Control Center - nomal Control Center - reduced 1 300 GB (SSD 권장) 128 GB .. 2024. 2. 4.
Confluent Architecture Confluent 란? 실시간 데이터 파이프라인 및 스티리밍 애플리케이션을 구축하는 데 사용되는 분산 이벤트 스트리밍 플랫폼. 실시간 분석, 데이터 수집, 이벤트 기반 아키텍쳐와 같은 사례에 적합하다. Confluent vs. Kafka Apache kafka 개발진들이 기업용으로 확장한 소프트웨어가 Confluent Kafka Confluent 개발지원언어 JAVA Java, Python, C, C++, Go, NET 관리 및 모니터링 GUI X O Kubernetes 설치여부 X O Ansible Playbook X O Auto Data Balancing X O Pre-Built Connector X O KsqlDB X O Kafka를 활용한 ETL Architecture 용어 정리 클러스터 외부 C.. 2024. 1. 28.