본문 바로가기
반응형

전체 글79

Opentelemetry를 사용하여 AWS EKS 환경 로그 모니터링 구성하기 (with Grafana Loki + Grafana) Grafana loki를 사용하면 일반적으로 로그 수집기는 같은 Grafana Labs 프로젝트에 포함되어 있는 Promtail을 사용하여 구성한다.(구성 참고:[Grafana Loki란? 개념부터 설치까지]) 본 글에서는 로그 수집기로 Opentelemetry collector를 사용하여 구성하는 실습을 다룬다. 실습 구성은 아래와 같다.Opentelemetry collector의 filelog Recivers가 노드에 있는 Pod의 로그 파일을 읽어 파싱 한다. Opentelemetry collector의 Processors로 body에 있는 로그 내용을 fields로 변환한다. Opentelemetry collector의 loki Exporters가 로그 데이터를 Grafana loki로 보낸다... 2023. 10. 31.
AWS EKS AutoScaling 속도 비교(Cluster Autoscaler vs Kerpenter) Auto Scaling Group(ASG)와 Karpenter의 auto scaling이 발생하는 속도에서 꽤 많은 차이를 보인다.그렇다면, ASG를 사용하는 환경에서 속도를 줄일 수 있는 방법은 없을까? 생각하다 한 가지 기능을 발견하여 테스트해 보았다. 바로 Warm Pool 기능이다.Auto Scaling Group(ASG)의 Warm Pool 기능은 노드를 미리 초기화하고, 초기화된 노드는 시작되었다가 중지(Stop) 상태로 대기하게 된다. 그런 상태에서 Scale-out이 발생하여 desired 값이 증가하면 중지 상태로 대기하고 있던 노드를 구동시킨다. Warm Pool에 있는 노드는 대기 상태이기 때문에 Scale-out 발생하는 데 필요한 시간을 줄일 수 있고, 대기 상태에 있는 노드는 추.. 2023. 10. 22.
Karpenter로 AWS EKS 환경에 AutoScaling 구현하기 AWS 환경에서 EKS를 운영하면서 자동으로 확장 및 축소되는 기능을 설정하려면 AutoScaling 기능이 필요하다.이를 위해 일반적으로 Cluster Autoscaler(CA)를 사용한다. 그러나 최근에 Karpenter라는 제품에 대한 관심이 늘어나고 있어, Karpenter 기준으로 두 제품을 사용하여 비교해 보고 느낀 차이점을 작성해 보려 한다. Karpenter란?Karpenter는 Cluster Autoscaler와 유사하게 Kubernetes 클러스터에서 자동 스케일링을 관리하기 위한 오픈 소스 도구이다.  아래 그림을 통해 두 제품의 실제 작동 방식을 비교해 보자.Cluster Autoscaler(CA)의 동작은 아래와 같다.HPA에 의해 자동확장 또는 재배포하여 새로운 Pod가 생성된다.. 2023. 10. 18.
AWS EKS 노드그룹 자동 시작, 중지하기 사내 AWS EKS 테스트 환경을 구성한 후 사용 중인 리소스로 인해 발생하는 비용을 효율적으로 관리하기 위해서는 퇴근 시간 등 비활성 기간에 해당 환경을 사용 중지 처리하는 것이 중요하다. 그러나 이러한 작업을 매일 수동으로 조작하기에는 번거롭고 종종 잊어버리는 경우가 발생한다.본 글에서는 이 문제를 해결하고 이러한 프로세스를 자동화하기 위해 자동 시작 및 중지 스케줄링을 설정하기 위한 방법을 기술한다.  목차 방법 1 : AWS CLI + Linux Crontab 사용 방법 2 : Terraform + Linux Crontab 사용 방법 3 : Auto Scaling 그룹 작업 예약" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스  " dat.. 2023. 10. 17.
Opentelemetry를 사용하여 Prometheus Metrics 수집하기 일반적으로 Helm chart(prometheus-community.github.io)를 사용하여 Prometheus를 설치하면 node-exporter와 kube-state-metrics 수집기가 기본으로 활성화되어 Kubernetes 리소스 관련 메트릭 데이터를 자동으로 수집한다. (관련 구성 참고 :Prometheus + Grafana 설치) 이번 글에서는 Prometheus에서 기본으로 제공하는 수집기가 아닌 opentelmetry 수집기를 사용하여 메트릭을 수집하는 실습을 다룰 것이다. 그렇기 때문에 기본으로 제공하는 Prometheus 수집기 및 Scrape 설정을 모두 비활성화 후 구성해야 한다.  OpenTelemetry exporter에서 prometheus로 metric을 전송하는 방법.. 2023. 10. 11.
OpenTelemetry란? OpenTelemetry란? OpenTelemetry는 traces, metrics 및 logs와 같은 telemetry 데이터를 생성하고 관리하기 위해 설계된 Observability 프레임워크 및 도구로, 애플리케이션의 동작을 추적하고 성능 문제나 에러를 식별하여 이를 신속하게 해결할 수 있게 도와준다. OpenTelemetry는 벤더 및 도구에 종속되지 않고, Jaeger 및 Prometheus와 같은 오픈 소스 도구뿐만 아니라 상용 제품을 포함한 다양한 Observability 백엔드와 함께 사용할 수 있으며, Cloud Native Computing Foundation(CNCF) 프로젝트로 활발한 커뮤니티 활동을 통해 개발 및 유지되고 있다. 클라우드 컴퓨팅, 마이크로서비스 아키텍처의 증가, 그.. 2023. 9. 18.
728x90
반응형