본문 바로가기
반응형

전체 글80

[Prometheus] HA 구성 1 (with Thanos) "> Prometheus는 쿠버네티스 환경에서 인기 있는 오픈소스 모니터링 도구이다.하지만 몇 가지 치명적인 단점이 있다. 확장 및 고가용성의 한계Prometheus는 단일 서버로 동작하게 설계되어 있다. 즉, 서버가 내려가면 그 시간 동안 메트릭을 수집할 수 없게 됨을 의미한다. 이를 보완하기 위해 프로메테우스 서버를 2개로 하여 모니터링을 하면 하나의 서버가 내려가더라도 다른 하나의 서버로 메트릭을 볼 수 있지만, 여전히 근본적인 해결이 안된 불완전한 아키텍처로 샤딩, Prometheus Federation 구성 등의 추가 작업이 필요하다.오래된 데이터 보관의 어려움Prometheus는 메트릭을 로컬 디스크에 수집하여 보관하는데, 저장소의 용량이 한계에 도달하면 오래된 데이터가 자동으로 삭제되어 일정.. 2023. 5. 3.
[Amazon EKS] EBS-CSI-Driver 설치 EKS 1.22 버전을 사용하다 1.23 버전으로 업그레이드 하면 기본 EKS에서 제공하는 StorageClass(gp2)를 사용하지 못하고 ebs-csi-driver를 설치하여 사용할 수 있다. (참고 : https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/ebs-csi-migration-faq.html ) ebs-csi-driver는 serviceaccount를 통해 아래 정책을 사용하여 ebs에 접근하기 때문에 다음과 같은 정책을 생성해야 한다.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateSnapshot".. 2023. 5. 3.
[Linkerd] 자동 Canary 배포 (with Flagger, Prometheus) Canary 배포는 새로운 버전의 애플리케이션을 일부 사용자에게 먼저 배포하고, 이후에 전체 사용자에게 배포하는 전략이다. 이를 통해 새로운 버전에 대한 안정성과 성능을 검증할 수 있다. Flagger는 Kubernetes에서 Canary 배포를 자동화하는 툴 중 하나이다. 서비스에 대한 트래픽을 모니터링하고, Canary 배포를 위한 새로운 버전의 Pod를 배포한다. 그 후, 일부 사용자의 트래픽을 새로운 버전의 Pod로 전환하고, 이후 일정 시간 동안 이를 모니터링한다. 만약 새로운 버전의 Pod에서 에러나 불안정한 동작이 발생하면, 자동으로 롤백을 수행한다.또한 Prometheus를 사용하여 서비스의 지표(metric)를 수집하고, 이를 기반으로 Canary 배포를 수행한다. 실제 트래픽 분할은 L.. 2023. 4. 29.
[Prometheus] + Grafana 초간단 설치 본 글에서는 Prometheus와 grafana를 설치하고 대시보드를 통해 간단하게 메트릭 수집을 확인하는 실습을 다룬다. Prometheus와 Grafana는 Helm 차트("prometheus-community.github.io")를 사용하여 Kubernetes 환경에서 간단하게 설치할 수 있다. (Grafana만 따로 설치하고 싶다면 참고 : [Grafana 설치] ) 설치를 완료하면 아래와 같은 Pod가 설치되는데, 각각의 역할은 다음과 같다.alertmanagerPrometheus에서 수집된 경고 알림을 관리하고 전송하는 기능을 담당한다.grafanaGrafana 서버로, Prometheus에서 수집된 데이터를 시각화하는 대시보드를 제공하는 서버이다.kube-state-metricsKubern.. 2023. 4. 29.
[Linkerd] + Prometheus 통합하기 Linkerd-viz는 기본적으로 Prometheus와 함께 설치된다. 하지만 이미 기존에 운영 중인 Prometheus가 있다면, 이를 통합하여 Linkerd-viz 대시보드에 표시되는 메트릭 데이터를 수집할 수 있다. 본 글에서는 외부 Prometheus와 Linkerd 대시보드를 통합하는 실습을 다룬다. 전제 조건- [Prometheus + Grafana 설치]- [Linkerd 설치]- [Linkerd 대시보드 구성]- 쿠버네티스 클러스터 실습 절차 1. Likerd 메트릭 수집을 위한 Prometheus 설정 2. Linkerd-viz 설정 3. 문제 해결 ">실습 절차 1. Likerd 메트릭 수집을 위한 Prometheus 설정 2. Linkerd-viz .. 2023. 4. 29.
[Linkerd] 멀티클러스터 통신 구성 Linkerd MultiCluster는 여러 Kubernetes 클러스터를 하나의 서비스 메시로 연결하여, 클러스터 간 안전하고 신뢰성 높은 통신을 가능하게 한다. 이를 통해 서로 다른 클러스터에 있는 Pod 간의 통신이 가능해지며, 고가용성, 확장성, 격리 등 다양한 이점을 제공한다. 멀티클러스터 통신 흐름은 아래와 같다. 본 글에서는 멀티클러스터 간 통신 및 트래픽 흐름을 실습을 통해 확인해 보려 한다. 실습 절차 1. 공유 Trust anchor를 위한 인증서 업데이트 2. 멀티클러스터 통신을 위한 linkerd gateway 구성 3. 서비스 내보내기 4. 멀티클러스터 통신 5. 구간별 패킷 흐름 검증 ">실습 절차1. 공유 Trust anchor를 위한 인증서 .. 2023. 4. 28.
728x90
반응형