본문 바로가기

DevOps

(102)
[AWS EKS] (15) EKS 스터디 5주차 ( CAS ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. HPA와 VPA KEDA등은 Pod의 리소스가 부족할때 Pod의 오토스케일을 적용하는 방법이었다.경우에 따라서는 Pod 가 배포될 Node 의 리소스가 부족해질 때도 있는데, 이 때 CA 를 사용하게 됩니다. Cluster AutoScaleadjusts the size of a Kubernetes Cluster  cluster-autoscaler 파드(디플로이먼트)를 배치합니다그리고 AWS에서는 Auto Scaling Group(ASG)을 사용하여 Cluster Autoscaler를 적용합니다.기본적으로 리소스에 의한 스케줄링은 Requests(최소)를 기준으로 이루어진다. 다시 말해 Requests 를 초과하여 할당..
[AWS EKS] (14) EKS 스터디 5주차 ( HPA / VPA ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. Horizontal Pod AutoscalerPod Autoscaling 방법리소스 종류 : HPA apiVersion: autoscaling/v2kind: HorizontalPodAutoscaler HPA 동작 방식 cAdvisor 이 컨테이너의 메모리/CPU 수집 →metrics-server 는 kubelet 를 통해서 수집 후 apiserver 에 등록 →HPA는 apiserver(Resource API)를 통해서 15분 마다 메모리/CPU 수집하여 정책에 따라 동작  1. php apache server을 배포 함# Run and expose php-apache servercurl -s -O https://raw..
[AWS EKS] (13) EKS 스터디 4주차 ( 운영에서 프로메테우스 스택 사용 ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. 프로메테우스/그라파나 활용시 운영환경에서 어떻게 대시보드를 구성하고 알람을 설정하여해당 알람이 발생시 어떤식으로 조치하는가 간략하게 소개해보려 합니다. 환경마다 중요시 하는 메트릭들이 상당히 차이가 있겠지만각 워커노드의 CPU 사용률과 같은 경우는 공통적으로 사용하기 때문에 해당 부분을 대표적으로 다루도록 하겠습니다.   CPU 사용률 대시보드 쿼리 설정 및 알람 설정  - 노드 별 CPU 사용률 목표: 기준을 80%로 지정해두고 해당 기준을 넘어갈 경우 Alert를 슬랙으로 전달합니다.sum by (instance) (irate(node_cpu_seconds_total{mode!~"guest.*|idle|iowait"..
[AWS EKS] (12) EKS 스터디 4주차 ( 프로메테우스 스택 ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. 옵저버빌리티에 모니터링 부분과 Alert 부분을 Prometheus Stack을 기반으로 활용하여 EKS 클러스터의 메트릭을 수집하고 모니터링 하는데 이번 포스팅에 목적이 있습니다. cAdvisor  쿠버네티스를 사용하다 보면 수많은 컨테이너와 그에 대한 리소스들을 어떻게 인프라 영역과 컨테이너 영역에서 모니터링 할수 있을가에 대한 고민을 하게됩니다. 다양한 오케스트레이션 작업(스케줄링, 컨테이너 자원 요청및 제한, HPA) 을 수행 하는 쿠버네티스는 스케줄러,Kubelet 및 컨트롤러같은 클러스터 구성요소에서 클러스터 메트릭을 수집, 분석해야 합니다. 특히 클러스터의 다양한 애플리케이션 및 구성 요소가 현재 얼마나 많..
[AWS EKS] (11) EKS 스터디 4주차 ( pod 로깅 ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. pod 로깅  pod로깅은 data plane 노드 로그와 노드에서 실행 중인 pod로그를 말합니다. pod로깅은 EKS설정을 지원하지 않습니다. 사용자가 도구를 선택해서 pod로그 수집과 저장을 해야 합니다. 본 포스팅에서는 Fluentbit또는 FlunetD를 사용하여 pod를 수집하고 cloudwatch에 전송하는 예제를 다룸 1. 로그수집은 누가? who collects logs? Fluentd 2. 로그 전송은 누가?who transfer logs? Fluentd3. 로그 저장과 검색은 누가? who stores and search logs? ElasticSearch Kibana   CW Agent & Flu..
[AWS EKS] (10) EKS 스터디 4주차 ( Control-plane ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. Control-plane 로깅  목표:Control Plane logging 😍 Addon 으로 ClusterWatch를  EKS와 함께 사용 할 수 있습니다.로그는 CloudWatch의 각 Amazon EKS 클러스터에 대한 로그 스트림으로 그룹으로 전송AWS 관리 콘솔, AWS CLI(버전 1.16.139 이상) 또는 Amazon EKS API를 사용하여 클러스터별로 각 로그 유형을 활성화 또는 비활성화Amazon EKS 컨트롤 플레인 로깅을 사용하는 경우, 실행하는 각 클러스터에 대한 표준 Amazon EKS 요금과 클러스터에서 CloudWatch Logs로 전송되는 모든 로그에 대한 표준 CloudWatch L..
[AWS EKS] (9) EKS 스터디 3주차 ( EFS Controller/ S3 CSI driver ) CloudNet@팀의 EKS 스터디 AEWS 2기에 작성된 자료를 토대로 작성합니다. 😍 EFS와 S3 역시 CSI Controller 및 Driver 을 통해 pod에서 볼륨을 사용할수 있습니다.S3 CSI Driver은 Controller 없이 사용 EBS 및 EFS에서는 볼륨을 이용할때 Controller pod와 Node pod가 각각의 역할을 합니다.Controller pod의 특징은 AWS API를 사용하여 실제  volume을 생성하는 역할을 합니다.node Pod은 AWS API를 사용하여 Kubernetes node (EC2 instance)에 volume을 attach 해줍니다. ✅   EFS Controller 설치                                    ..
[AWS EKS] (8) EKS 스터디 3주차 ( Storage 성능 지표 및 벤치마크 ) CloudNet@팀의 EKS 스터디 AEWS 3기에 작성된 자료를 토대로 작성합니다. 이번 포스팅에서는 Storage 성능 비교 및 벤치마크 주제입니다. ✅  처리량 (Throughput )에 대한 이해 성능 지표 에 대해 다시 한번 정리  목표: Throughput 네트워크 환경: 초당 전송할 수 있는 패킷 수 (ex. 1Gbps 네트워크)스토리지 환경: 초당 읽고 쓸 수 있는 데이터 양 (ex. 500MB/s SSD)데이터베이스 환경: 초당 실행 가능한 트랜잭션 수 (ex. 1000 TPS)웹 서버 환경: 초당 처리할 수 있는 HTTP 요청 수 (ex. 10,000 req/sec)  성능 비교 시 MB/s만 보며, 이 수치로 성능의 우위를 판단하는 경우가 많다. → 소비자들에게는 Throughput..