본문 바로가기

DevSecOps/Amazon EKS

(18)
AWS Security Group for Pods AWS Security Group for Pods 정리Amazon EKS에서는 AWS VPC CNI의 확장 기능을 통해 Pod 단위로 Security Group을 직접 할당할 수 있습니다. 이를 Security Group for Pods (SGP)라고 하며, 기존에는 노드 단위로만 보안 그룹을 적용할 수 있었던 제약을 보완합니다. 즉, 워크로드(Pod)마다 네트워크 경계를 분리해 더 세밀한 보안 제어가 가능합니다.1. 동작 원리Pod ENI 할당. VPC CNI가 Pod에 ENI를 직접 붙여주고, 해당 ENI에 보안 그룹을 매핑IAM Role for Service Account(IRSA). Pod에 할당할 보안 그룹 권한 부여를 위해 IRSA를 사용Security Group Policy CRD. Kube..
Amazon VPC CNI와 Kubernetes Network Policy Amazon VPC CNI와 Kubernetes Network PolicyAmazon EKS에서 기본적으로 사용되는 Amazon VPC CNI(Container Network Interface) 플러그인은 Pod에 직접 VPC의 ENI(Elastic Network Interface)와 IP를 할당하는 구조를 사용합니다. 이로 인해 Pod가 클러스터 내부 전용 IP가 아닌 VPC 네이티브 IP를 가지게 되며, AWS 보안 그룹(Security Group) 및 VPC 네트워크 제어와 자연스럽게 연계되는 장점이 있습니다. 하지만 순수 Kubernetes Network Policy 지원은 제한적이며, CNI 구성에 따라 별도의 구현이 필요합니다.1. VPC CNI의 기본 동작Pod IP = VPC IP. Pod..
EKS Fully Private에서 ENI별 Security Group 베스트 프랙티스 EKS Fully Private에서 ENI별 Security Group 베스트 프랙티스완전 프라이빗 EKS 아키텍처에서 EKS-owned ENI, Worker Node ENI, VPC Endpoint ENI, 운영용 호스트 ENI(myeks-host)에 적용할 Security Group(SG) 규칙을 정리합니다. 원칙은 최소 권한, 보안그룹 참조 기반, 인터넷 무노출입니다.요약 테이블대상 ENI부착 SG주요 Inbound주요 Outbound비고EKS-owned ENI(컨트롤플레인 ENI)sg-eks-controlplane443/TCP. 소스 sg-eks-nodes, sg-myeks-host10250/TCP. 대상 sg-eks-nodes443/TCP. 대상 sg-eks-nodes, sg-vpce-*API ..
Amazon EKS Fully Private Cluster 아키텍처 VPC Endpoint와 PrivateLink로 API Server 및 엔드포인트 프라이빗 액세스 구현인터넷 게이트웨이와 NAT 없이도 운영 가능한 완전 프라이빗 EKS를 설계합니다. 클러스터 API 서버는 Private Access 전용으로 열고, 워커 노드는 필요한 AWS 서비스에 VPC Endpoint로만 접근합니다. 외부 VPC·온프레미스에서 관리용 접근이 필요하면 AWS PrivateLink를 사용해 프라이빗 경로로만 접속합니다.핵심 설계 원칙클러스터 엔드포인트. endpointPrivateAccess=true, endpointPublicAccess=false. VPC 내부 DNS로만 해석됩니다.네트워크. 퍼블릭 서브넷 미사용. 프라이빗 서브넷, VPC DNS 활성화, IGW·NAT 비사용.엔드..
Kubernetes 클러스터 오토스케일링 - Cluster Autoscaler vs Karpenter Kubernetes 클러스터 오토스케일링 - Cluster Autoscaler vs Karpenter앞서 살펴본 HPA, VPA, KEDA는 파드(Pod) 단위의 오토스케일링입니다. 하지만 파드를 아무리 늘려도 클러스터에 충분한 노드(서버)가 없으면 배포되지 않습니다. 이를 해결하기 위한 것이 노드 오토스케일링(Node Autoscaling)이고, Kubernetes에서는 대표적으로 Cluster Autoscaler(CA)와 Karpenter 두 가지 방식이 있습니다.Cluster Autoscaler (CA)CA는 Kubernetes에서 가장 먼저 등장한 기본 노드 오토스케일러입니다. 파드를 배치할 공간이 부족한 경우, 노드 그룹(ASG)을 확장하거나 축소합니다.기본 동작 방식파드가 스케줄되지 못하면 →..
Kubernetes 오토스케일링 - HPA, VPA, KEDA Kubernetes 오토스케일링 - HPA, VPA, KEDAKubernetes에서 워크로드(Deployment, StatefulSet 등)를 안정적으로 운영하려면 자원 사용량에 따라 자동으로 스케일링되는 구조가 필요합니다. 이 기능을 담당하는 것이 HPA, VPA, KEDA입니다.이 글에서는 각 스케일링 방식이 어떤 역할을 하고, 어떤 상황에서 어떤 도구를 선택해야 하는지 이해하기 쉽게 설명합니다.1. HPA (Horizontal Pod Autoscaler)가장 널리 쓰이는 Kubernetes 기본 오토스케일링 기능입니다. Pod 수를 자동으로 늘리거나 줄이는 방식으로 작동합니다.기본 동작 방식CPU 사용률, 메모리 사용률, 또는 사용자 정의 메트릭(Prometheus 등)을 기반으로 판단스케일링 주기..
AWS EKS에서 AMP, AMG, Thanos AWS EKS에서 AMP, AMG, Thanos AWS에서 Kubernetes(EKS)를 운영하다 보면 반드시 부딪히는 문제가 있습니다. 모니터링과 관측성(Observability)입니다. 로그는 CloudWatch나 Loki로 어느 정도 커버가 되지만, 지표(metrics) 수집과 시각화는 Prometheus와 Grafana 조합이 사실상의 표준입니다.하지만 Prometheus는 운영이 어렵습니다. 스토리지 관리, 장기 보관, 레이블 폭증, 대시보드 관리까지… 그래서 AWS는 이를 해결하기 위해 AMP(Amazon Managed Prometheus), AMG(Amazon Managed Grafana)라는 관리형 서비스를 제공합니다. 반대로 오픈소스 기반으로 완전한 통제를 원한다면 Thanos가 대안입니..
EKS Logging 핵심 정리 메트릭·로그·트레이스와 EKS 로깅. 실무 핵심 정리쿠버네티스 옵저버빌리티의 세 가지 신호와 Amazon EKS 로깅을 한 번에 정리했습니다. 개념과 설계 기준, EKS의 컨트롤 플레인 로깅과 애플리케이션 로깅, 노드 로깅을 구성하는 방법을 담았습니다.옵저버빌리티 개념 요약목표는 외부 관찰만으로 내부 상태를 추론하는 능력 확보입니다.SLI와 SLO를 먼저 정의합니다. 지연과 오류율과 가용성이 중심입니다.황금 신호는 트래픽과 지연과 오류와 포화입니다.세 신호의 역할과 차이신호목적수집 경로주요 설계 포인트메트릭상태를 시계열로 수치화합니다.Prometheus 스크레이프, OpenMetrics, ADOT Collector레이블 카디널리티 관리, 히스토그램 버킷을 SLO에 맞춤로그사건의 맥락과 감사 추적을 복원합..
EKS 환경을 위한 스토리지 전략. EBS와 EFS CSI 총정리 EBS와 EFS CSI 총정리요점부터 정리합니다. 단일 노드에 낮은 지연과 일관된 성능이 필요하면 EBS가 기본 선택입니다. 여러 파드와 노드가 동시에 같은 데이터를 읽고 써야 하면 EFS가 적합합니다. 두 드라이버 모두 CSI 기반으로 동적 프로비저닝, 확장, 권한 관리를 표준화할 수 있습니다.선택 기준 요약요건EBS CSI 권장EFS CSI 권장접근 모드ReadWriteOnce, ReadWriteOncePod 중심ReadWriteMany 필요성능 특성낮은 지연, 예측 가능한 IOPS동시성 높음, 지연은 상대적으로 김토폴로지가용 영역 종속멀티 AZ 마운트 타깃 구성대표 워크로드데이터베이스, 큐, 단일 인스턴스 스토리지공유 웹 컨텐츠, 분석 결과 공유, 팀 디렉터리운영 포인트WaitForFirstCons..
Kubernetes CSI Provisioner, Attacher, Controller, NodeServer 정리 Kubernetes CSI Provisioner, Attacher, Controller, NodeServer 정리이 글은 필수 구성요소 네 가지만 집중적으로 설명합니다. 전제와 역할을 분명히 하고, 프로비저닝부터 마운트까지의 흐름, 운영 체크리스트와 장애 포인트를 간결하게 제시합니다.전제. CSI는 표준 RPC 규격이고, 드라이버와 사이드카가 분업합니다CSI 드라이버는 Controller와 NodeServer 두 서비스로 나뉩니다.쿠버네티스 표준 사이드카가 Provisioner, Attacher 역할을 맡아 이벤트를 감시하고 드라이버의 CSI RPC를 호출합니다.핵심 오브젝트는 StorageClass, PV, PVC, VolumeAttachment, CSIDriver, CSINode입니다.이 글에서는 R..