DevOps 9

[OpenTelemetry] 1. What is OpenTelemetry?

1. Observability Framework & Toolkit코드에 계측을 심어서 Trace, Metric, Log를 뽑아낼 수 있게 해주는 표준 도구 모음✅ 애플리케이션이 Telemetry 데이터를 생성, 수집, 내보내기 하도록 도와줌✅ 저장소와 시각화는 다른 툴이 담당함 2. 특징OTLP 프로토콜 (Telemetry 데이터 형식 정의)Semantic Convention (공통 데이터의 표준 네이밍 규칙)오픈소스 (CNCF 주도)벤더 독립적: 유연성 + 독립성 출처OpenTelemetry - What is OpenTelemetry?

DevOps 2025.09.19

[Kafka] Dead Letter Queue

1. Dead Letter Queue란?메시지 브로커가 전달에 실패한 메시지를 별도로 보관하는 백업 저장소✅ 소비자가 처리 중 메시지 처리가 실패될 수 있음✅ 견고하고 장애에 강한 데이터 파이프라인을 구축할 때 중요한 요소 이점목적설명Fault Tolerance메시지 처리 중 오류가 발생해도 전체 시스템에 영향을 주지 않도록 함Data Integrity처리할 수 없는 메시지를 안전하게 저장해 데이터 손실을 방지Recovery원인 해결 후 DLQ에 쌓인 메시지를 선택적으로 재처리해 데이터/서비스 복구 가능Monitoring & Troubleshooting실패한 메시지를 추적·분석하여 오류 원인 파악 및 디버깅 용이Scalability실패한 메시지를 DLQ로 분리하여 메인 처리 흐름의 적체(Backlog) ..

DevOps/Kafka 2025.08.15

[Debezium] 1. Introduction

다양한 데이터베이스의 CDC를 위한 오픈소스 커넥터 모음 (Kafka Connect 위에서 동작함)각 데이터베이스의 로그를 기반으로 한 변경 스트림을 읽음 장점항목설명예완전성모든 데이터 변경을 누락 없이 캡처 낮은 지연폴링 대비 매우 낮은 레이턴시MySQL·Postgres 사례: ms 수준스키마 변경 불필요Last Updated 같은 컬럼 추가 불필요 삭제 캡처DELETE 이벤트도 포함 메타데이터 제공DB/설정에 따라 포함 가능이전 레코드 상태, 트랜잭션 ID, 유발 쿼리 등 1. ArchitectureKafka Connect 위에서 동작하는 소스 커넥터로 배포됨구분내용가능 여부/비고토픽 네이밍기본은 서버/DB/테이블 기반 토픽명 생성✅ SMT로 패턴 치환/이름 변경 가능토픽 라우팅 1:1한 테이블 → ..

DevOps/Kafka 2025.08.11

[MongoDB Kafka Connector] 1. Kafka Connector

1. Kafka ConnectorApache Kafka의 하위 구성 요소Kafka를 데이터 저장소와 연결해줌 2. Install the MongoDB Kafka ConnectorKafka plugins 디렉토리에 복사커넥터 플러그인(JAR 파일들)을 plugin.path로 지정된 디렉토리에서 찾음예: plugin.path=/usr/local/share/kafka/plugins 라고 설정하면,/usr/local/share/kafka/plugins 폴더 안에 MongoDB Kafka Connector JAR을 넣어야 함.이렇게 하면 Kafka Connect 실행 시 해당 디렉토리에서 커넥터 클래스를 자동으로 로딩합니다. 분산 모드(Distributed Worker)Kafka Connect는 Standalon..

DevOps/Kafka 2025.08.10

[Prometheus] 2. Concepts

1. Data modelPrometheus는 모든 데이터를 time series 형태로 저장함메트릭 이름 + 라벨로 고유한 시계열 데이터를 만들어냄항목설명예시Metric Name측정 대상의 기능/특징을 설명하는 이름http_requests_total (총 HTTP 요청 수)Label같은 메트릭의 상태를 구분하기 위한 key-valuemethod="POST", handler="/api/tracks"Notation메트릭 이름과 라벨을 함께 사용하는 표기 형식http_requests_total{method="POST", handler="/api/tracks"}Sample하나의 값(value) + 시간(timestamp)0.56 at 2024-05-31T12:00:00Z 2. Metric TypePromethe..

DevOps 2025.05.31

[Prometheus] 1. Introduction

1. OverviewPrometheus란?시스템 모니터링 및 알림 도구: 애플리케이션의 time series 메트릭 데이터 수집 및 저장오픈 소스 (CNCF 공식 프로젝트) 기능기능설명예 / 특징다차원 데이터 모델Label로 시계열 데이터 구분metrics + key-valuePromQL시계열 데이터 전용 쿼리 언어강력하고 유연함자율 동작단일 서버만으로 동작분산 스토리지 불필요Pull 기반 수집스크래핑HTTP로 타겟에 접근해 메트릭을 수집Push 지원짧은 작업의 메트릭도 수집 가능Push Gateway 활용서비스 디스커버리 / 정적 설정자동화 or 수동 설정 지원ex. Consul시각화 도구 연동대시보드 생성 및 시각화 지원Grafana 등과 연동 Metrics숫자 기반 지표숫자 데이터를 시간별로 기록해..

DevOps 2025.05.31

[Kafka] 9. Kafka Streams

3. Developer Guide항목명간단 설명Writing a Streams Application스트림 처리 로직을 작성하고 실행하는 기본 구조 제공 (토폴로지 정의)Configuring a Streams Application설정 지정 (브로커 주소, 앱 ID, 직렬화 방식 등)Streams DSL고수준 연산을 위한 간편 API (map, filter 등)Processor API사용자 정의 처리 로직을 위한 저수준 APINaming OperatorsDSL 연산자에 이름 붙이기 (디버깅/모니터링 용이)Data Types & Serialization메시지 직렬화/역직렬화 방식 정의TestingTopologyTestDriver로 로컬 테스트 가능Interactive Queries상태 저장소 데이터를 외부에서..

DevOps/Kafka 2025.05.12

[Docker] 1. Docker overview

Docker는 애플리케이션을 개발, 배포 및 실행하기 위한 오픈 플랫폼입니다. 애플리케이션을 인프라에서 분리하여 빠르게 소프트웨어를 제공할 수 있습니다. 코드를 작성하고 프로덕션에서 실행하는 사이의 지연 시간을 크게 줄일 수 있습니다. 1. The Docker platform Docker는 컨테이너라는 약간 격리된 환경에서 애플리케이션을 패키지화하고 실행할 수 있게 합니다. 컨테이너는 경량화되어 있으며, 애플리케이션을 실행하는 데 필요한 모든 것을 포함하므로 호스트에 의존할 필요가 없습니다. 2. What can I use Docker for? Fast, consistent delivery of your applications 개발자가 로컬 컨테이너를 사용하여 표준화된 환경에서 작업할 수 있게 해줍니다...

DevOps/Docker 2023.10.29

[Github Actions] 1. GitHub Actions 이해

1. Overview GitHub Actions는 CI/CD 플랫폼입니다. 빌드 - 테스트 - 배포 를 자동화할 수 있습니다. Repository의 다양한 이벤트가 발생할 때 Workflow를 실행합니다. 데이터 센터나 클라우드 인프라를 사용하기 위한 Virtual Machine을 호스팅해줍니다. 2. The Components of GitHub Actions Workflow는 저장소에서 발생하는 이벤트에 따라 트리거 될 수 있습니다. Workflow에는 하나 이상의 Job이 포함되면 각 Job은 다양한 Step을 포함합니다. 작업은 가상 머신 러너나 컨테이너 내에서 실행됩니다. Action은 Workflow를 단순화하기 위한 재사용 가능한 확장 기능입니다. 3. Create an example work..

DevOps/CI&CD 2023.10.29