728x90
📌Index Cluster AutoScaling 수동 스케일링 자동 스케일링 CloudWatch Container Insight ✔️ Cluster AutoScaling Kubernetes의 Cluster Autoscaling Kubernetes는 Cluster AutoScaler를 통해 동적으로 인프라를 확장할 수 있다. Kubernetes Cluster Autoscaler는 Pod가 실패하거나 다른 노드로 다시 예약될 때 클러스터의 노드 수를 자동으로 조정하며, Pod의 리소스 요청에 따라 클러스터의 노드를 추가하거나 제거한다. 만약 리소스 부족으로 인해 스케줄링 대기 상태(Pending)의 Pod가 존재하는 경우 Cluster AutoScaler가 노드를 추가한다. 추가 시, 설정한 Min, Max..
📌Index Metrics-Server란? Metrics-Server 설치하기 ✔️ Metrics-Server란? 쿠버네티스의 Metrics-Server는 각 노드에 설치된 kubelet을 통해 node 및 pod의 CPU, Memory의 사용량 Metric을 수집한다. 과거에는 Heapster를 사용했으나, 더 이상 개발되고 있지 않기 때문에(지원 중단) 이를 대체하는 Metrics-Server를 사용한다. Metrics-Server가 있어야 kubectl top 명령어를 사용하여 CPU/메모리 사용량 등을 확인할 수 있으며, HPA(Horizontal Pod Autoscaler) 및 VPA(Vertical Pod Autoscaler)을 사용할 수 있다. ✔️ Metrics-Server 설치하기 다음 ..
CSI(Container Storage Interface)란, Kubernetes와 같은 CO(컨테이너 오케스트레이션 시스템)의 컨테이너화된 워크로드에, 임의의 블록 및 파일 스토리지 시스템을 노출하기 위한 표준 인터페이스이다. Amazon EBS CSI Driver를 사용하면 표준 Kubernetes 인터페이스를 사용하여, AWS에서 EKS 및 자체 관리형 Kubernetes 클러스터 모두에서 실행되는 애플리케이션에 대해 블록 스토리지를 간단하게 구성하고 사용할 수 있다. Amazon EBS CSI Driver에서는Amazon EKS 클러스터가 영구 볼륨을 위해 Amazon EBS 볼륨의 수명 주기(LifeCycle)를 관리할 수 있게 해준다. 클러스터를 처음 생성할 때는 Amazon EBS CSI D..
최근에는 소프트웨어 개발 시 애자일(Agile) 형태를 많이 추구하게 되는데, 간단하게 설명하자면 작업 계획을 짧은 단위로 세우고, 만들어 나가는 사이클을 반복함으로써 고객의 요구 변화에 유연하고도 신속하게 대응하는 일종의 개발 방법론이라고 할 수 있다. 개발주기를 이렇게 짧은 라이프 사이클로 진행하다보면, 개발과 운영 사이에 상당히 많은 갭(Gap)이 발생할 수 있다. 매번 개발자가 코드를 수정하고 빌드와 테스트, 배포까지 한다면 상당히 많은 시간이 소요되지만, 레포지토리에 코드를 올리는 것만으로 빌드와 테스트, 배포까지 해결된다면 불필요한 시간을 단축시키고 개발에 더 많은 시간을 투자할 수 있게 된다. 이러한 방법을 제공하는 것이 바로 CI/CD이다. CI/CD란? CI/CD는 애플리케이션 개발 단계..
📌Index EFK란? EFK 설치하기 EFK 세팅하기 ✔️ EFK란? EFK stack은 Elasticsearch, Fluent bit(Fluentd), Kibana 3개의 플랫폼 조합을 뜻하며, 클러스터 환경에서 로그의 수집, 검색, 시각화를 가능하게 한다. 그림을 보면 알 수 있듯이, 각 클러스터에 fluent bit가 daemonset으로 log를 수집한다. elasticsearch는 fluent bit가 수집한 로그를 저장하며, 요청에 따라 검색을 한다. 마지막으로 유저가 용이하게 사용할 수 있도록 kibana로 시각화 한다. FluentBit Log는 /var/log(시스템 로그)또는 /var/log/container(파드 로그) 또는 /var/log/pods(파드 로그)에 저장된다. (이때 ..