본문 바로가기

반응형

Log,Monitorings

(20)
[EKS] Data Transfer 비용 절감 작업 (istio destination rule, topology aware hints) EKS 상에서 Data Transfer 비용을 줄이기 위해 했던 노력들과 그 후기를 정리해본다. 결론을 말하자면 서비스 안정성이 더 우선이기에 Data Transfer 줄이기 위한 작업은 포기했다. 1. Data Transfer 발생 원인Data Transfer 비용은 크게 2가지에서 발생되었다. 1. NAT Gateway 비용 2. AZ 간 통신 비용 여기서 이제 Bytes 단위로 과금이 되는데 AZ 간 통신할 때 Network Bytes가 많으면 그만큼 과금이 된다고 보면 된다. 본 글에서는 AZ 간 통신 Data Transfer 비용에 대해서 다룬다.2. EKS에서 Data Transfer 절감 방안요즘 인터넷에 EKS에서 Data Transfer를 절감할 수 있는 다양한 방안들에 대해서 많이 소개..
[Loki] Python으로 Loki에 로그 보내는 방법 일반적으로 Promtail, Logstash, fluentBit 등을 통해 로그를 전송하는 방법이 일반적이다. 하지만 경우에 따라서는 별도 개발언어를 사용하여 커스텀하게 Loki로 Log를 전송할 수 있다. 당연히 Loki도 HTTP API를 지원하기에 API Spec에 따라 POST로 로그를 전송하면 되기 때문이다. https://grafana.com/docs/loki/latest/api/#push-log-entries-to-loki Grafana Loki HTTP API | Grafana Loki documentation Open source Grafana Loki HTTP API Grafana Loki exposes an HTTP API for pushing, querying, and tailing..
Grafana Monitoring 스택 LGTM 구성기 (Loki, Mimir, Tempo) 아직 LGTM(Loki , Grafana , Tempo , Mimir)관련 한글 자료가 별로 없어서 간략하게 작성해본다.회사에서 도입을 고민하고 있거나 PoC 중이라면 이 글이 조금의 도움은 될 수 있겠다고 본다.   LGTM이란 무엇일까? Grafana에서 밀고 있는 LGTM(Loki , Grafana , Tempo , Mimir)이란 무엇일까? L : Loki (로그 수집 저장소)G : Grafana (시각화)T : Tempo (분산 추적 저장소 , APM)M : Mimr (시계열 메트릭 저장소)  그럼 왜 Grafana에서는 LGTM을 밀고 있는 것일까? 잘 생각해보면 답은 은근히 간단한데, 보통 시스템 모니터링 , 로깅 , 애플리케이션 성능 모니터링을 구성하기 위해 대부분의 회사에서 여러가지 오픈..
[Prometheus] AlertManager로 Slack 알람 전송하는 법 알아보자 1. 개요해외문서도 그렇고 국내문서도 그렇고 마땅히 잘 정리된 글을 찾기 힘들었다. 그나마 AliceK 님 글이 잘 정리되어 있어서 참고가 되었다. 그래서 전체적으로 이해하는데 약간 애를 먹었지만 삽질을 계속 하다보니 얼추 전체적인 흐름이 정리되어서 간략하게 정리해본다. 사실 Grafana Managed Alert를 사용하면 더욱 쉽고 간편하게 알람을 보낼 수 있지만 너무 많은 규칙들이 Grafana에서 처리될 경우 부하가 발생할 수 있기 때문에 이를 분산하기 위해 가급적이면 AlertManager로 알람을 보내려고 한다. 필자는 Grafana Mimir를 통해 시계열 메트릭을 저장하기에 Mimir Ruler를 통해 규칙을 평가하고, AlertManager에게 이를 전달하여 Slack으로 알람을 보내도록..
[Observability] fluentd 보다 더 좋은(?) Vector에 대해 알아보자. 개요 Toss slash 2023을 보다가 Logstash에서 Vector로 전환 후 상당히 만족한다는.. Star 수도 Fluentd를 넘었다고 한다. 작년에 Datadog에서 인수했다는 소식만 들었고 어떤 놈인지에 대해서는 관심이 없었는데, 마침 리서치를 해보자고 마음먹게 되었다. 허나, vector를 검색하니 기하와 벡터에서 배운 그 수학 용어만 나오던데.. 잘못 검색한 것인지 아직 한글로 정리된 글들이 없는 것인지.. 그래서 아래 Docs를 보면서 내용들을 정리하였다. 상당히 깔끔히 정리되어있었다. Vector란 ? Observability data를 관리하는 도구이다. : Logs, Metrics 등을 하나의 툴에서 수집하고, 변환하고, 라우팅하는 Observability pipeline이다. ..
[EKS] 로그 시스템 Loki 도입을 위한 몇가지 운영 팁 Loki로 로그 시스템을 구성해서 쓴지 어느덧 3개월이 넘어간다. Loki를 맨 처음에는 Loki Stack(Grafana, Promtail, Loki)로 구성해서 모놀리식 형태로 쓸 수 있지만 쓰다보면 다양한 문제점들이 발견된다. 1. 다량의 로그가 Write되면 Loki 파드가 죽는데 정확히 어떤 컴포넌트가 죽었는지 확인하기가 쉽지 않다. 2. Grafana에서 읽을 시 상당히 느리다. 3. 각 컴포넌트들에 대한 이해가 어렵다. 4. Ingest 할 때 어디에선가 쓰로틀링이 걸린다. 5. 등등 하여 사용가능한 로키 헬름 차트들은 어떤게 있으며 로키에 대한 간략한 컴포넌트 소개, 운영 시 어떤 설정값들을 적용하면 좋을지에 대해 간단히 설명하기 위해 글을 쓰게 되었다. 아직 많이 부족한 지식이지만 Lok..
[EKS] 아주 가벼운 Loki + Grafana + Promtail 로그 시스템 구성 본 글은 Loki Stack을 활용하여 설치하는 내용이다. 만약 Loki를 로그 시스템으로 도입하기 위해 필요한 내용들을 참고하고 싶다면 아래 글을 읽어보면 좋을 것 같다. (아래 글은 설치 및 구성 방법에 대한 내용을 소개하지 않는다.) https://nyyang.tistory.com/167 [EKS] 로그 시스템 Loki 도입을 위한 몇가지 운영 팁 Loki로 로그 시스템을 구성해서 쓴지 어느덧 3개월이 넘어간다. Loki를 맨 처음에는 Loki Stack(Grafana, Promtail, Loki)로 구성해서 모놀리식 형태로 쓸 수 있지만 쓰다보면 다양한 문제점들이 발견된다. 1. nyyang.tistory.com 1. 개요 ELK 스택이 부담스럽다면 Loki Stack(Promtail + Loki..
[Datadog] EKS에서 운영중인 SpringBoot HikarpCP 모니터링 (Auto Discovery) 1. 개요 보통 HikariCP를 모니터링 하기 위해서는 JConsole과 같은 Java 애플리케이션 모니터링 툴을 통해 진행해야 하지만, 다소 불편하다고 느낄 수 있다. MBean(Managed Bean)이란, 애플리케이션 혹은 리소스의 상태를 모니터링할 수 있는 Java 객체이다. HikariCP에서 제공하는 MBean을 통해 다음의 정보를 확인할 수 있다. Idle connections의 수 Active connections(현재 사용하고 있는)의 수 모든 connection의 수 connection을 기다리고 있는 thread의 수 그렇다면 SpringBoot 애플리케이션에서 Datadog에서 JMX MBean을 이용하여 HikariCP 모니터링을 어떻게 할 수 있을까? 전체적으로 다음의 과정이 ..

반응형