최적화된 Windows AMI로 노드 생성

최적화된 Windows AMI로 노드 생성

Amazon EKS 최적화 Windows AMI를 사용하여 Windows 컨테이너 워크로드용 노드를 생성하는 방법과 부트스트랩 구성 매개변수를 설명합니다.

출처: 문서

본문

Windows Amazon EKS 최적화 AMI는 Windows Server 2019, Windows Server 2022, Windows Server 2025를 기반으로 구축됩니다. Amazon EKS 노드의 기본 이미지 역할을 하도록 구성됩니다. 기본적으로 AMI에는 다음 구성 요소가 포함됩니다.

  • kubelet
  • kube-proxy
  • Kubernetes용 AWS IAM Authenticator
  • csi-proxy
  • containerd

참고

Windows Server의 보안 또는 프라이버시 이벤트는 Microsoft 보안 업데이트 가이드로 추적할 수 있습니다.

Amazon EKS는 Windows 컨테이너에 최적화된 AMI를 다음 변형으로 제공합니다.

  • Amazon EKS 최적화 Windows Server 2019 Core AMI
  • Amazon EKS 최적화 Windows Server 2019 Full AMI
  • Amazon EKS 최적화 Windows Server 2022 Core AMI
  • Amazon EKS 최적화 Windows Server 2022 Full AMI
  • Amazon EKS 최적화 Windows Server 2025 Core AMI
  • Amazon EKS 최적화 Windows Server 2025 Full AMI

중요

Amazon EKS 최적화 Windows Server 20H2 Core AMI는 더 이상 사용되지 않습니다(deprecated). 이 AMI의 새 버전은 릴리스되지 않습니다.

기본적으로 최신 보안 업데이트를 보장하기 위해 Amazon EKS는 지난 4개월 동안 최적화된 Windows AMI를 유지 관리합니다. 새 AMI는 초기 릴리스 시점부터 4개월 동안 사용할 수 있습니다. 이 기간이 지나면 이전 AMI는 비공개로 전환되어 더 이상 접근할 수 없습니다. 보안 취약점과 지원 수명이 끝난 이전 AMI 접근 상실을 피하기 위해 최신 AMI를 사용할 것을 권장합니다. 비공개로 전환된 AMI에 대한 접근을 보장할 수는 없지만, AWS Support에 티켓을 제출하여 접근을 요청할 수 있습니다.

릴리스 달력

다음 표는 Amazon EKS에서 Windows 버전의 릴리스 및 지원 종료 날짜를 나열합니다. 종료 날짜가 비어 있으면 해당 버전이 여전히 지원 중임을 의미합니다.

Windows 버전 Amazon EKS 릴리스 Amazon EKS 지원 종료
Windows Server 2025 Core 01/27/2026
Windows Server 2025 Full 01/27/2026
Windows Server 2022 Core 10/17/2022
Windows Server 2022 Full 10/17/2022
Windows Server 20H2 Core 8/12/2021 8/9/2022
Windows Server 2004 Core 8/19/2020 12/14/2021
Windows Server 2019 Core 10/7/2019
Windows Server 2019 Full 10/7/2019
Windows Server 1909 Core 10/7/2019 12/8/2020

부트스트랩 스크립트 구성 매개변수

Windows 노드를 만들 때 노드에 다양한 매개변수를 구성할 수 있는 스크립트가 있습니다. 구성에 따라 이 스크립트는 노드의 C:\Program Files\Amazon\EKS\Start-EKSBootstrap.ps1 같은 위치에서 찾을 수 있습니다. 부트스트랩 스크립트에 인수로 지정하여 사용자 지정 매개변수 값을 지정할 수 있습니다. 예를 들어 시작 템플릿의 사용자 데이터를 업데이트할 수 있습니다. 자세한 내용은 Amazon EC2 user data를 참조하세요.

스크립트에는 다음 명령줄 매개변수가 포함됩니다.

  • -EKSClusterName — 이 워커 노드가 조인할 Amazon EKS 클러스터 이름을 지정합니다.
  • -KubeletExtraArgs — kubelet의 추가 인수를 지정합니다(선택 사항).
  • -KubeProxyExtraArgs — kube-proxy의 추가 인수를 지정합니다(선택 사항).
  • -APIServerEndpoint — Amazon EKS 클러스터 API 서버 엔드포인트를 지정합니다(선택 사항). -Base64ClusterCA와 함께 사용할 때만 유효합니다. Get-EKSCluster 호출을 건너뜁니다.
  • -Base64ClusterCA — base64 인코딩된 클러스터 CA 내용을 지정합니다(선택 사항). -APIServerEndpoint와 함께 사용할 때만 유효합니다. Get-EKSCluster 호출을 건너뜁니다.
  • -DNSClusterIP — 클러스터 내 DNS 쿼리에 사용할 IP 주소를 재정의합니다(선택 사항). 기본 인터페이스의 IP 주소에 따라 기본값은 10.100.0.10 또는 172.20.0.10입니다.
  • -ServiceCIDR — 클러스터 서비스가 주소 지정되는 Kubernetes 서비스 IP 주소 범위를 재정의합니다. 기본 인터페이스의 IP 주소에 따라 기본값은 172.20.0.0/16 또는 10.100.0.0/16입니다.
  • -ExcludedSnatCIDRs — SNAT(Source Network Address Translation)에서 제외할 IPv4 CIDR 목록입니다. 즉 VPC 주소 지정이 가능한 Pod 개인 IP가 아웃바운드 트래픽에 대해 인스턴스 ENI의 기본 IPv4 주소로 변환되지 않습니다. 기본적으로 Amazon EKS Windows 노드의 VPC IPv4 CIDR이 추가됩니다. 이 매개변수에 CIDR을 지정하면 지정된 CIDR도 추가로 제외됩니다. 자세한 내용은 Pod용 아웃바운드 인터넷 액세스 활성화를 참조하세요.
  • -EnableCimFS — (선택 사항) CimFS(Composite Image File System) containerd 스냅샷터를 켭니다. 이 기능은 옵트인 기능이며 Kubernetes 버전 1.35 이상을 위한 Amazon EKS 최적화 Windows Server 2025 AMI에서만 사용할 수 있습니다. 자세한 내용은 CimFS snapshotter를 참조하세요.

명령줄 매개변수 외에도 일부 환경 변수 매개변수를 지정할 수 있습니다. 명령줄 매개변수를 지정하면 해당 환경 변수보다 우선합니다. 부트스트랩 스크립트는 머신(또는 시스템) 범위 변수만 읽으므로 환경 변수는 머신 범위로 정의해야 합니다.

스크립트는 다음 환경 변수를 고려합니다.

  • SERVICE_IPV4_CIDR — 정의는 ServiceCIDR 명령줄 매개변수를 참조하세요.
  • EXCLUDED_SNAT_CIDRS — 쉼표로 구분된 문자열이어야 합니다. 정의는 ExcludedSnatCIDRs 명령줄 매개변수를 참조하세요.
  • EKS_ENABLE_CIMFS — CimFS containerd 스냅샷터를 켜려면 true 또는 1로 설정합니다. 정의는 -EnableCimFS 명령줄 매개변수를 참조하세요.

gMSA 인증 지원

Amazon EKS Windows Pod는 다양한 유형의 gMSA(Group Managed Service Account) 인증을 허용합니다.

  • Amazon EKS는 인증을 위한 Active Directory 도메인 자격 증명을 지원합니다. 도메인 조인 gMSA에 대한 자세한 내용은 AWS 블로그의 Amazon EKS Windowspods의 Windows 인증을 참조하세요.
  • Amazon EKS는 이식 가능한 사용자 자격 증명으로 비도메인 조인 Windows 노드가 gMSA 자격 증명을 검색할 수 있게 해주는 플러그인을 제공합니다. 도메인리스 gMSA에 대한 자세한 내용은 AWS 블로그의 Amazon EKS Windowspods용 도메인리스 Windows 인증을 참조하세요.

캐시된 컨테이너 이미지

Amazon EKS Windows 최적화 AMI는 containerd 런타임용 특정 컨테이너 이미지를 캐시합니다. Amazon 관리 빌드 구성 요소를 사용하여 사용자 지정 AMI를 구축할 때 컨테이너 이미지가 캐시됩니다. 자세한 내용은 Amazon 관리 빌드 구성 요소 사용을 참조하세요.

containerd 런타임용으로 캐시된 컨테이너 이미지는 다음과 같습니다.

  • amazonaws.com/eks/pause-windows
  • mcr.microsoft.com/windows/nanoserver
  • mcr.microsoft.com/windows/servercore

CimFS snapshotter

Microsoft Learn 웹사이트에 설명된 대로 Amazon EKS 최적화 Windows Server 2025 AMI는 CimFS(Composite Image File System) containerd 스냅샷터를 지원합니다. CimFS는 컨테이너 이미지 레이어를 .cim 아카이브로 저장하므로 대형 Windows 컨테이너 이미지의 콜드 이미지 풀 시간을 줄일 수 있습니다.

CimFS는 옵트인 기능입니다. Kubernetes 버전 1.35 이상을 위한 Amazon EKS 최적화 Windows Server 2025 AMI(Core 및 Full)에서만 사용할 수 있습니다. CimFS는 기본적으로 꺼져 있습니다.

Windows Server 버전 요구 사항

CimFS는 Windows Server 2025(빌드 26100) 이상에서만 지원됩니다. 이전 Windows Server 버전에서는 CimFS containerd 구성이 해당 AMI에 없으므로 켜도 효과가 없습니다.

AMI는 기본 구성과 함께 사전 빌드된 CimFS containerd 구성(config-cimfs.toml)을 제공합니다. CimFS를 켜면 부트스트랩 스크립트가 CimFS 구성으로 교체하고, containerd를 다시 시작하며, pause 및 기본 컨테이너 이미지를 CimFS 스냅샷터로 다시 캐시합니다.

노드에서 CimFS를 켜려면 다음 방법 중 하나를 사용합니다(부트스트랩 스크립트 구성 매개변수 참조).

  • -EnableCimFS 스위치를 Start-EKSBootstrap.ps1 부트스트랩 스크립트에 전달합니다.
  • 부트스트랩 스크립트가 실행되기 전에 EKS_ENABLE_CIMFS 머신 범위 환경 변수를 true 또는 1로 설정합니다.

다음 예시는 시작 템플릿 사용자 데이터에서 CimFS를 켜는 방법을 보여줍니다.

[string]$EKSBootstrapScriptFile = "$env:ProgramFiles\Amazon\EKS\Start-EKSBootstrap.ps1"
& $EKSBootstrapScriptFile -EKSClusterName "my-cluster" -EnableCimFS 3>&1 4>&1 5>&1 6>&1

스트림 리디렉션(3>&1 4>&1 5>&1 6>&1)을 사용하면 문제 해결을 위해 인스턴스의 사용자 데이터 로그에서 부트스트랩 스크립트의 경고, 자세한, 디버그, 정보 출력을 볼 수 있습니다.

추가 정보

Amazon EKS 최적화 Windows AMI 사용에 대한 자세한 내용은 다음 섹션을 참조하세요.

  • Amazon EKS 최적화 가속 Windows AMI에서 워크로드 실행에 대한 자세한 내용은 GPU 가속 컨테이너 실행(EC2 G-Series의 Windows)을 참조하세요.
  • 관리형 노드 그룹과 함께 Windows를 사용하려면 관리형 노드 그룹으로 노드 수명 주기 간소화를 참조하세요.
  • 자체 관리형 Windows 노드를 시작하려면 자체 관리형 Microsoft Windows 노드 생성을 참조하세요.
  • 버전 정보는 Windows AMI 버전 정보 검색을 참조하세요.
  • Amazon EKS 최적화 Windows AMI의 최신 ID를 검색하려면 권장 Microsoft Windows AMI ID 검색을 참조하세요.
  • Amazon EC2 Image Builder를 사용하여 사용자 지정 Amazon EKS 최적화 Windows AMI를 구축하려면 Image Builder로 사용자 지정 Windows AMI 구축을 참조하세요.
  • 모범 사례는 EKS Best Practices Guide의 Amazon EKS optimized Windows AMI management를 참조하세요.

더 알아보기 (Learn more)