AWS/EKS (10) 썸네일형 리스트형 [EKS] AWS EKS 환경에서 kube-bench 활용하는 방법 Amazon EKS(Amazon Elastic Kubernetes Service)에서는 kube-bench를 사용할 수 있지만, 관리형 컨트롤 플레인 제약 때문에 몇 가지 주의사항과 한계가 있습니다. 아래에 EKS 환경에서 kube-bench를 효율적으로 활용하는 방법을 정리했습니다.대상점검 가능 여부설명노드(Worker)가능EC2 기반 워커 노드에서 직접 실행컨트롤 플레인불가AWS가 관리하므로 접근 불가kubelet, etcd, config제한적마스터 관련 구성은 점검 불가, kubelet 설정은 가능 활용방법1. EKS 노드에서 kube-bench 실행EKS 노드는 일반 EC2 인스턴스이므로, 직접 kube-bench를 실행하거나 DaemonSet으로 배포할 수 있습니다. 방법1 : DaemonSet.. [EKS] EKS 안정적인 버전 업그레이드 절차 1. 사전 준비1) EKS 릴리즈 노트 확인 - AWS 공식 문서에서 EKS 릴리즈 노트(https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html)를 확인하여 변경 사항, deprecated 기능 등을 사전에 파악합니다. 2) EKS 업그레이드 지원 여부 확인 - EKS는 한 번에 하나의 minor 버전만 업그레이드할 수 있습니다. 예: 1.24 → 1.25 가능, 1.24 → 1.26 불가 3) 클러스터 백업 - etcd는 AWS가 관리하지만, Kubernetes 리소스 (Deployments, Services, CRDs 등) 를 kubectl get all --all-namespaces -o yaml 형태로 백업. .. [EKS] 노드 스토리지 사이즈 변경 방법 EKS 노드 스토리지 사이즈 변경 방법1. 시작 템플릿 수정(새 버전 생성)EC2 > 시작 템플릿 > 변경 필요한 템플릿 선택 > 작업 "템플릿 수정(새 버전 생성)" 2. 스토리지(볼륨) 사이즈 변경EBS 크기(GiB) 원하는 사이즈로 변경 3. CA(Cluster Autoscaler) 중지CA를 사용할 경우 중지가 필요하다. 중지를 하지 않으면 노드 중지시 자동으로 오토스케일링이 되기 때문에 노드 변경 작업시 중지 필요 4. 전체 노드 중지 EKS > Cluster 선택 > 컴퓨팅 선택 > 변경할 노드 그룹 선택 후 편집 5. 변경 템플릿 적용EC2 > AutoScaling 그룹에서 변경할 노드쪽 작업 기록을 확인(정상 종료 유무 확인) EKS 서비스 > 클러스터 선택 > 컴퓨팅 선택 > 변경할 노드.. [EKS] EKS에서의 Auto Scaling EKS에서의 Auto Scaling 1. CA(Cluster Auto-Scaler) - Pod를 배포할 Node가 부족한 경우 신규 Node Provisioning 2. HPA(Horizontal Pod Auto-Scaler) - 서비스를 처리할 Pod 자원이 부족한 경우 신규 Pod Provisioning 3. VPA(Vertical Pod Auto-Scaler) - 서비스를 처리할 Pod 자원이 부족한 경우 Pod 교체(자동 or 수동) 4. Karpenter - Unscheduled Pod가 있는 경우 새로운 Node 및 Pod Provisioning [EKS] EKS 사용시 참고할 유용한 링크 EKS 사용시 참고할 유용한 링크 1. EKS 모범 사례 가이드 https://aws.github.io/aws-eks-best-practices/ 2. Amazon EKS 워크샵 페이지 https://www.eksworkshop.com/ https://main.d18gq8z65416af.amplifyapp.com/ko/ 3. AWS Observability 워크샵 페이지 https://observability.workshop.aws/ko/intro.html 4. AWS Containers from the couch 유튜브 https://www.youtube.com/containersfromthecouch 5. CNCF 유튜브 https://www.youtube.com/c/cloudnativefdn/fea.. [EKS] pod로 파일 전송 EKS 환경에서 서비스중인 pod로 파일 전송시 아래 명령어 사용 # kubectl cp [전송할 파일] [pod명]:[이전할 디렉토리] $ kubectl cp /data/test.sh nginx-12345:/tmp/ pod에 저장된 파일을 다운 받기 위해서는 아래 명령어 사용 # scp 명령어 $ sudo ssh -i /data/.ssh/test.pem ec2-user@10.100.101.102 -p 22 $ scp -P 22 -i /data/.ssh/test.pem ./test.sh ec2-user@10.100.101.102:/tmp/test [EKS] eks node autoscaling 부팅 속도 개선 EKS에서 사용하는 노드의 부팅은 일반적인 EC2 인스턴스의 부팅과 동일하며 이와 더불어 클러스터와 연결하기 위한 여러 과정이 필요하므로 더 많은 시간이 소요된다. 일반적인 부팅 속도 개선을 위한 방법 1. EKS 최적화 AMI 사용 2. 이벤트 대비 사전 pod Scale-out 이외 쿠버네티스 내 설정을 통한 부팅 속도 개선이 가능하지만 충분한 테스트 및 검증 필요 1. EKS AMI 커스터마이징을 통해 부팅 과정에서 불필요하게 소요되는 시간을 직접 개선하는 방법 [관련 링크] https://github.com/awslabs/node-latency-for-k8s https://github.com/awslabs/amazon-eks-ami/issues/1099 https://medium.com/keiko.. [EKS] Amazon EC2 인스턴스 유형별 EKS 최대 pods 수 a1.2xlarge 58 a1.4xlarge 234 a1.large 29 a1.medium 8 a1.metal 234 a1.xlarge 58 c1.medium 12 c1.xlarge 58 c3.2xlarge 58 c3.4xlarge 234 c3.8xlarge 234 c3.large 29 c3.xlarge 58 c4.2xlarge 58 c4.4xlarge 234 c4.8xlarge 234 c4.large 29 c4.xlarge 58 c5.12xlarge 234 c5.18xlarge 737 c5.24xlarge 737 c5.2xlarge 58 c5.4xlarge 234 c5.9xlarge 234 c5.large 29 c5.metal 737 c5.xlarge 58 c5a.12xlarge 234 c5a.16xl.. 이전 1 2 다음