본문 바로가기
반응형

Orchestration11

K8sGPT 사용하여 Kubernetes 문제 해결하기 K8SGPT란?K8sGPT는 Kubernetes 환경에서 GPT-3와 같은 자연어 처리 모델을 사용하여 클러스터 문제를 진단하고 해결 방법을 간단한 문장으로 제공해 주는 도구이다. K8SGPT 분석기에 SRE 경험이 코드화되어 있으며 가장 관련성이 높은 정보를 추출하여 제공해 준다. Kubernetes 환경에서는 다양한 문제가 발생하기 때문에 GPT 모델의 강력한 처리 능력을 활용해서 다양한 문제들을 보다 빠르고 효율적으로 해결할 수 있다. 이번 글에서는 Kubernetes 환경에 K8sGPT를 설치하고 사용하는 실습을 다룬다. 구성 환경Amazon EKS v1.28.8구성 버전Helm cli : 3.8.2K8sGPT Helm Chart : 0.1.6K8sGPT Helm APP : 0.0.26전제 조건C.. 2024. 7. 3.
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.
EKS add-on(vpc-cni) 업그레이드 이슈 본 글은 EKS add-on 업그레이드 중 발생한 이슈 내용을 기록하기 위한 글이다. 아래는 AWS에서 제공하는 EKS 버전 공식 지원 종료 날짜이다.Kubernetes 버전 업스트림 릴리스 Amazon EKS 릴리스 Amazon EKS 지원 종료 1.262022년 12월 9일2023년 4월 11일2024년 6월1.252022년 8월 23일2023년 2월 22일2024년 5월1.242022년 5월 3일2022년 11월 15일2024년 1월1.232021년 12월 7일2022년 8월 11일2023년 10월1.222021년 8월 4일2022년 4월 4일2023년 6월 4일1.212021년 4월 8일2021년 7월 19일2023년 2월 15일1.202020년 12월 8일2021년 5월 18일2022년 11월 .. 2023. 5. 24.
EKS Pod 전용 Security group (SecurityGroupPolicy) 일반적으로 EKS에서 Pod의 트래픽은 EKS Worker Node Security group의 In/Out 규칙을 따른다. 하지만 Pod용 Security groups을 적용하면 이때부터 EKS Worker Node Security group의 규칙을 따르지 않고 Pod 전용 Security group의 규칙을 따르게 된다. 사용방법은 간단하다. apiVersion: vpcresources.k8s.aws/v1beta1 kind: SecurityGroupPolicy metadata: name: policy-test spec: podSelector: matchLabels: app: static-client securityGroups: groupIds: - {security-groups id} --- api.. 2023. 5. 18.
AWS 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", "ec2:AttachVolume", .. 2023. 5. 3.
728x90
반응형