노드를 사용한 컴퓨팅 리소스 관리

노드를 사용한 컴퓨팅 리소스 관리

Amazon EKS에서 노드(node)를 사용해 컴퓨팅 리소스를 관리하는 방법과 컴퓨팅 옵션을 비교합니다.

출처: 문서

본문

Kubernetes 노드는 컨테이너화된 애플리케이션을 실행하는 머신입니다. 각 노드에는 다음 구성 요소가 있습니다.

  • 컨테이너 런타임(Container runtime) – 컨테이너 실행을 담당하는 소프트웨어.
  • kubelet – 컨테이너가 해당 Pod 내에서 정상적으로 실행되고 있는지 확인합니다.
  • kube-proxy – Pod와의 통신을 허용하는 네트워크 규칙을 유지 관리합니다.

자세한 내용은 Kubernetes 문서의 "Nodes"를 참고하세요.

Amazon EKS 클러스터는 EKS Auto Mode 관리형 노드, 자체 관리형 노드, Amazon EKS 관리형 노드 그룹, AWS Fargate, Amazon EKS Hybrid Nodes의 어떤 조합으로든 Pod를 스케줄할 수 있습니다. 클러스터에 배포된 노드에 대해 자세히 알아보려면 "AWS Management Console에서 Kubernetes 리소스 보기"를 참고하세요.

참고: 하이브리드 노드를 제외하고 노드는 클러스터를 만들 때 선택한 서브넷과 동일한 VPC에 있어야 합니다. 하지만 노드가 동일한 서브넷에 있을 필요는 없습니다.

컴퓨팅 옵션 비교

다음 표는 어떤 옵션이 요구 사항을 가장 잘 충족하는지 결정할 때 평가할 여러 기준을 제공합니다. 자체 관리형 노드는 나열된 모든 기준을 지원하는 또 다른 옵션이지만, 훨씬 더 많은 수동 유지 관리가 필요합니다. 자세한 내용은 "자체 관리형 노드로 직접 노드 유지 관리"를 참고하세요.

참고: Bottlerocket은 이 표의 일반 정보와 몇 가지 차이가 있습니다. 자세한 내용은 GitHub의 Bottlerocket 문서를 참고하세요.

기준 EKS 관리형 노드 그룹 EKS Auto Mode Amazon EKS Hybrid Nodes
AWS Outposts에 배포 가능 아니요 아니요 아니요
AWS Local Zone에 배포 가능 예 아니요 아니요
Windows를 요구하는 컨테이너 실행 가능 예 아니요 아니요
Linux를 요구하는 컨테이너 실행 가능 예 예 예
Inferentia 칩을 요구하는 워크로드 실행 가능 예 – Amazon Linux 노드만 예 아니요
GPU를 요구하는 워크로드 실행 가능 예 – Amazon Linux 노드만 예 예
Arm 프로세서를 요구하는 워크로드 실행 가능 예 예 예
AWS Bottlerocket 실행 가능 예 예 아니요
Pod가 다른 Pod와 CPU, 메모리, 스토리지, 네트워크 리소스를 공유 예 예 예
Amazon EC2 인스턴스 배포 및 관리 필요 예 아니요 - EC2 관리형 인스턴스 알아보기 예 – 온프레미스 물리적 또는 가상 머신을 선택한 도구로 직접 관리
Amazon EC2 인스턴스의 운영 체제 보안·유지 관리·패치 필요 예 아니요 예 – 물리적 또는 가상 머신에서 실행되는 운영 체제를 선택한 도구로 직접 관리
노드 배포 시 부트스트랩 인수(예: 추가 kubelet 인수) 제공 가능 예 – eksctl 또는 사용자 지정 AMI가 있는 런치 템플릿 사용 아니요 - NodeClass를 사용해 노드 구성 예 - nodeadm으로 부트스트랩 인수를 사용자 지정할 수 있습니다. Hybrid nodes nodeadm reference 참고
노드에 할당된 IP 주소와 다른 CIDR 블록에서 Pod에 IP 주소 할당 가능 예 – 사용자 지정 AMI가 있는 런치 템플릿 사용. 자세한 내용은 "런치 템플릿으로 관리형 노드 사용자 지정" 참고 아니요 예 - Hybrid nodes용 CNI 구성 참고
노드에 SSH 가능 예 아니요 - 노드 문제 해결 방법 알아보기 예
노드에 자체 사용자 지정 AMI 배포 가능 예 – 런치 템플릿 사용 아니요 예
노드에 자체 사용자 지정 CNI 배포 가능 예 – 사용자 지정 AMI가 있는 런치 템플릿 사용 아니요 예
노드 AMI 직접 업데이트 필요 예 – Amazon EKS 최적화 AMI를 배포했다면 업데이트가 가능할 때 Amazon EKS 콘솔에서 알림을 받습니다. 콘솔에서 원클릭으로 업데이트를 수행할 수 있습니다. 사용자 지정 AMI를 배포했다면 업데이트가 가능할 때 Amazon EKS 콘솔에서 알림을 받지 못합니다. 직접 업데이트를 수행해야 합니다. 아니요 예 - 물리적 또는 가상 머신에서 실행되는 운영 체제를 선택한 도구로 직접 관리. Hybrid nodes용 운영 체제 준비 참고
노드 Kubernetes 버전 직접 업데이트 필요 예 – Amazon EKS 최적화 AMI를 배포했다면 업데이트가 가능할 때 Amazon EKS 콘솔에서 알림을 받습니다. 콘솔에서 원클릭으로 업데이트를 수행할 수 있습니다. 사용자 지정 AMI를 배포했다면 업데이트가 가능할 때 Amazon EKS 콘솔에서 알림을 받지 못합니다. 직접 업데이트를 수행해야 합니다. 아니요 예 - 선택한 도구나 nodeadm으로 하이브리드 노드 업그레이드를 관리합니다. 클러스터용 하이브리드 노드 업그레이드 참고
Pod와 함께 Amazon EBS 스토리지 사용 가능 예 예, 통합 기능으로 사용. 스토리지 클래스 생성 방법 알아보기 아니요
Pod와 함께 Amazon EFS 스토리지 사용 가능 예 예 아니요
Pod와 함께 Amazon S3 Files 스토리지 사용 가능 예 예 아니요
Pod와 함께 Amazon FSx for Lustre 스토리지 사용 가능 예 예 아니요
서비스에 Network Load Balancer 사용 가능 예 예 예 - 대상 유형 ip를 사용해야 함
Pod가 공용 서브넷에서 실행 가능 예 예 아니요 - Pod는 온프레미스 환경에서 실행
개별 Pod에 다른 VPC 보안 그룹 할당 가능 예 – Linux 노드만 아니요 아니요
Kubernetes DaemonSet 실행 가능 예 예 예
Pod 매니페스트에서 HostPort 및 HostNetwork 지원 예 예 예
AWS 리전 가용성 모든 Amazon EKS 지원 리전 모든 Amazon EKS 지원 리전 AWS GovCloud (US) 리전과 중국 리전을 제외한 모든 Amazon EKS 지원 리전
Amazon EC2 전용 호스트에서 컨테이너 실행 가능 예 아니요 아니요
요금 여러 Pod를 실행하는 Amazon EC2 인스턴스 비용. 자세한 내용은 Amazon EC2 요금 참고 클러스터에서 EKS Auto Mode가 활성화되면 Auto Mode의 컴퓨팅 기능으로 시작한 인스턴스에 대해 표준 EC2 인스턴스 요금에 더해 별도의 요금을 지불합니다. 금액은 시작된 인스턴스 유형과 클러스터가 있는 AWS 리전에 따라 다릅니다. 자세한 내용은 Amazon EKS 요금 참고 하이브리드 노드 vCPU당 시간당 비용. 자세한 내용은 Amazon EKS 요금 참고

더 알아보기 (Learn more)