반응형

Monitoring 11

OpenTelemetry Collector 샘플링 튜닝: 원하는 트레이스를 잡아내는 방법

이전 글에서 분산 트레이싱 을 확인하기 위해 OpenTelemetry, Tempo 를 사용해서 구성을 했었습니다.그런데 샘플링 비율을 10%로 설정을 해서 Trace 를 확인하다 보니, 실제로 제가 원하는 Trace 가 보이질 않아서 방법을 찾아보았더니, OpenTelemetry-Collector 에서 원하는 정보는 무조건 Trace 가 찍히도록 하는게 있어서 적용 해보았습니다.이제 실제로 제가 했던 적용 했던 내용을 설명드리겠습니다.원하는 Trace 조건저 같은 경우, 아래와 같은 경우 무조건 Trace가 찍히도록 설정하였습니다.ERROR400, 500 번대 ERROR 발생11초 이상 걸린 작업개발자의 도움 없이 분산 Trace 추적:OpenTelemetry Auto-Instrumentation과 Te..

Monitoring 2025.08.26

개발자의 도움 필요 없이 분산 Trace 추적: OpenTelemetry Auto-Instrumentation과 Tempo 활용법

분산 트레이싱이 필요해진 계기일을 하다보니, K8s 클러스터에서 파드끼리 통신도 하고, 파드 Kafka, SQS에서 message를 받아서 처리하기도 하는데, 실제로 어디서 지연이 발생했는지 파악하기 힘들어서 분산 트레이싱을 통해 원인 파악이 필요하게 되었습니다.아키텍처주요 컴포넌트들을 소개 하자면,OpenTelemetry OperatorKubernetes Operator로서, Collector와 auto-instrumentation(자동 계측)을 관리 합니다.이는 Custom Resource(CRD)를 통해 다양한 언어(Java, Python, Go, Node.js, .NET 등)에 자동 계측을 주입할 수 있습니다.현재 아키텍처에서는 Instrumentation CRD를 이용해 계측 설정을 정의하고,..

Monitoring 2025.08.21

Alertmanager <-> Googlechat 으로 알람 보내기

기본적으로 Alertmanager는 기본적으로 Google-chat으로 알림을 보낼 수 없습니다.그러나 현재 회사에서 Google-chat을 사용하고 있어서, Alertmanager에서 발생하는 alert 페이로드를 받아서 설정된 Google-chat 웹훅 엔드포인트로 메시지를 전달해주는 애플리케이션을 생성하였습니다.이제 제가 했던 방법을 설명드리겠습니다.사전 준비k8s 클러스터kube-prometheus-stack 설치Google-chat 스페이스의 webhook 주소1. 코드 clone먼저 calert git clone 해줍니다.git clone https://github.com/mr-karan/calert.git2. go build 실행clone한 디렉터리로 이동 한 후 go build 명령어 실행..

Monitoring 2025.08.11

Istio ingressgateway 와 ALB 연결

AWS ALB와 istio의 ingressgateway와 연결해서 사용할 수 있도록 해주겠습니다.방법은 간단합니다. 저 같은 경우에는 istio-ingressgateway를 helm 차트에서 설치를 해주었습니다.helm repo add istio-official https://istio-release.storage.googleapis.com/chartshelm install my-gateway istio-official/gateway -f values.yaml다만, values.yaml 에서 서비스 타입을 기본 LoadBalancer가 아닌 ClusterIP로 설정을 해주었습니다.values.yaml--- service: # Type of service. Set to "None" to disabl..

Monitoring 2025.07.24

Istio, Kiali 설치 및 Prometheus, Grafana 연결 (Using Helm)

Istio는 수 많은 파드와 파드 사이의 트래픽을 관찰 할 수 있는 서비스 메쉬 툴 입니다.https://istio.io/latest/docs/setup/install/helm/https://kiali.io/docs/installation/installation-guide/install-with-helm/Helm 설치 (Mac 사용자)brew install helmhelm 저장소 구성helm repo add istio-official https://istio-release.storage.googleapis.com/charts helm repo updateistio-base 설치helm install my-base istio-official/base --version 1.26.0istiod 설치helm i..

Monitoring 2025.07.24

트래픽 조절하면서 Canary 배포 해보기 (used by Istio)

이번엔 트래픽을 조절하면서 Canary 배포를 해보겠습니다.왜 Canary 배포 + 헤더 기반 트래픽 분기를 도입했는가?기존 방식 (RollingUpdate)의 한계기존 배포 방식(RollingUpdate)은 새 버전의 파드를 조금씩 올리면서 기존 파드를 내림이 과정에서 사용자가 기존 파드에 연결되어 작업 중이면, 세션 끊김/진행 중인 요청 실패/예상치 못한 오류가 발생할 수 있음Canary 배포 전략 도입이러한 문제를 최소화하기 위해, 새 버전의 파드를 일부 트래픽에만 점진적으로 적용초기에 적은 비율만 새 버전으로 넘기고, 문제가 없는지 충분히 관찰→ 장애/버그가 발생해도 전체 서비스에는 영향이 최소화헤더 기반 트래픽 분기 활용추가로, 트래픽에 특정 조건(예: 헤더)을 걸어내부 테스트, 운영자, 베타 ..

Monitoring 2025.07.24

telegraf <-> Prometheus <-> Grafana 연결하여 모니터링 해보기

Prometheus - Grafana 설치했던 링크2024.11.15 - [Monitoring] - Prometheus - Grafana 설치 (Helm 차트) Prometheus - Grafana 설치 (Helm 차트)이번에는 Helm 을 사용하여 Prometheus와 Grafana를 설치해보도록 하겠습니다. https://artifacthub.io/먼저 helm 차트 홈페이지에 들어가서 kube-prometheus-stack 검색 해줍니다. Helm repo 추가를 해줍니다.# helm reksh-cloud.tistory.com  앞선 링크의 글에선, Prometheus와 Grafana를 설치해보았습니다. 이제 어떻게 활용이 되는지 알아보도록 하겠습니다. 구성은 아래의 이미지와 같이 할 예정 입니다...

Monitoring 2024.11.21

Prometheus - Grafana 설치 (Helm 차트)

이번에는 Helm 을 사용하여 Prometheus와 Grafana를 설치해보도록 하겠습니다. https://artifacthub.io/먼저 helm 차트 홈페이지에 들어가서 kube-prometheus-stack 검색 해줍니다. Helm repo 추가를 해줍니다.# helm repo add prometheus-community https://prometheus-community.github.io/helm-charts# helm repo update 그리고 추가적으로 설정을 변경 해줍니다. 변경 해줄 설정 파일은 DEFAULT VALUES 에 있는 내용에서 수정을 해주면 됩니다.  values.yamlyaml 파일의 내용이 많아서 수정한 부분만 설명 드리자면,1. Grafana 대시보드 접속 할 admin..

Monitoring 2024.11.15

ELK 연결 구성 (filebeat 포함)

이번엔 ELK 사용해보도록 하겠습니다.기본적인 Flow는 아래 이미지와 같습니다.  FileBeat는 로그를 가져올 서버에 설치를 한 후에 Logstash 에 로그를 전달, 그리고 Logstash에서 ElasticSearch에 로그 전송 후, Kibana에서 시각화 하는 형식으로 구성하였습니다. ELK 및 filebeat 설치 방법은 아래를 참조해주세요 2024.09.13 - [Monitoring] - filebeat 설치 해보기 filebeat 설치 해보기현재 제가 사용하는 OS는 ubuntu 22.04 입니다.apt 패키지 매니저를 사용해서 설치해보도록 하겠습니다.1. Public Signing Key 다운로드 공식 홈페이지에는 아래와 같이 나와있지만, # wget -qO - https://artif..

Monitoring 2024.09.24

filebeat 설치 해보기

현재 제가 사용하는 OS는 ubuntu 22.04 입니다.apt 패키지 매니저를 사용해서 설치해보도록 하겠습니다.1. Public Signing Key 다운로드 공식 홈페이지에는 아래와 같이 나와있지만, # wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - 실제로 실행을 해보니 아래와 같은 에러가 나옵니다.W: https://artifacts.elastic.co/packages/8.x/apt/dists/stable/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in..

Monitoring 2024.09.13
반응형