CVM(Confidential Virtual Machines) 테넌트에 대한 강력한 보안 및 기밀성을 제공합니다. CVM은 SEV-SNP 보안 기능을 활용하여 VM 메모리 및 상태에 대한 하이퍼바이저 및 기타 호스트 관리 코드 액세스를 거부하는 VM 기반의 TEE(하드웨어 신뢰할 수 있는 실행 환경)를 제공하여 운영자 액세스에 대한 심층 보호를 제공합니다. 이러한 기능을 통해 CVM이 있는 노드 풀은 AKS의 기능을 활용하면서 코드 리팩터링 없이 매우 중요한 컨테이너 워크로드를 AKS로 마이그레이션할 수 있습니다. 예를 들어 다음이 있는 경우 CVM이 필요할 수 있습니다.
- 보안에 중요한 데이터 및/또는 중요한 고객 데이터를 처리하는 워크로드
- 특히 정부 계약의 경우 다양한 규정 준수 요구 사항을 충족하는 데 필요한 서비스입니다. 데이터 보안을 위한 확장 가능한 솔루션이 없으면 이로 인해 인증 및 계약이 손실될 수 있습니다.
이 문서에서는 기밀 VM 크기를 사용하여 AKS 노드 풀을 만드는 방법을 알아봅니다.
AKS에서 지원하는 보안 가상 머신 크기
Azure는 AMD와 Intel 모두에서 TEE(신뢰할 수 있는 실행 환경) 옵션을 제공합니다. 이러한 TEE를 사용하면 코드를 변경하지 않고도 뛰어난 가격 대비 성능이 뛰어난 기밀 VM 환경을 만들 수 있습니다.
- AMD 기반 기밀 VM은 3세대 AMD EPYC™ 프로세서와 함께 도입된 AMD SEV-SNP 기술을 사용합니다.
- 인텔 기반 기밀 VM은 4세대 Intel Xeon® 프로세서와 함께 Intel® TDX를 사용합니다.
비고
Intel TDX 기반 기밀 VM은 현재 AKS에서 지원되지 않습니다.
자세한 내용은 CVM VM 크기를 참조하세요.
보안 기능
CVM은 다른 VM(가상 머신) 크기에 비해 다음과 같은 보안 향상 기능을 제공합니다.
- 가상 머신, 하이퍼바이저 및 호스트 관리 코드 간의 강력한 하드웨어 기반 격리
- 배포 전에 호스트의 호환성을 보장하기 위해 사용자 지정 가능한 증명 정책
- 플랫폼 또는 고객(선택 사항)이 소유하고 관리하는 VM 암호화 키
- 플랫폼의 성공적인 증명과 VM의 암호화 키 간의 암호화 바인딩으로 안전한 키 릴리스
- 가상 머신에서 키 및 비밀을 증명하고 보호하기 위한 전용 TPM(가상 신뢰할 수 있는 플랫폼 모듈) 인스턴스입니다.
- Azure VM의 신뢰할 수 있는 시작과 유사한 보안 부팅 기능
어떻게 작동하나요?
향상된 기밀성과 무결성이 필요한 워크로드를 실행하는 경우 애플리케이션의 코드 변경 없이 메모리 암호화 및 향상된 보안을 활용할 수 있습니다. CVM 노드의 모든 Pod는 동일한 신뢰 경계의 일부입니다. CVM으로 만든 노드 풀의 노드는 CVM용으로 특별히 구성된 사용자 지정된 노드 이미지를 사용합니다.
지원되는 OS 버전
Linux OS 유형(Ubuntu 및 Azure Linux)에서 CVM 노드 풀을 만들 수 있습니다. 그러나 모든 OS 버전이 CVM 노드 풀을 지원하지는 않습니다.
이 표에는 지원되는 OS 버전이 포함되어 있습니다.
| OS 유형 | 운영 체제 SKU | CVM 지원 | CVM 기본값 |
|---|---|---|---|
| 리눅스 | Ubuntu |
지원됨 | Ubuntu 20.04는 Kubernetes 버전 1.24-1.33의 기본값입니다. Ubuntu 24.04는 Kubernetes 버전 1.34-1.38의 기본값입니다. |
| 리눅스 | Ubuntu2204 |
지원되지 않음 | AKS는 Ubuntu 22.04용 CVM을 지원하지 않습니다. |
| 리눅스 | Ubuntu2404 |
지원됨 | Kubernetes 1.32-1.38에서는 Ubuntu2404에서 CVM이 지원됩니다. |
| 리눅스 | AzureLinux |
Azure Linux 3.0에서 지원됨 | Azure Linux 3은 Kubernetes 버전 1.28-1.36에 CVM을 사용하도록 설정하는 경우 기본값입니다. |
| 리눅스 | flatcar |
지원되지 않음 | AKS용 플랫카 컨테이너 Linux 는 CVM을 지원하지 않습니다. |
| 리눅스 | AzureLinuxOSGuard |
지원되지 않음 | AKS용 OS Guard를 사용하는 Azure Linux 는 CVM을 지원하지 않습니다. |
| 리눅스 | AzureContainerLinux | 지원되지 않음 | Azure ACL(Container Linux)은 CVM을 지원하지 않습니다. |
| 윈도우즈 | 모든 Windows 운영 체제 SKU | 지원되지 않음 | N/A |
osSKU로 Ubuntu 또는 AzureLinux를 사용하는 경우, 기본 OS 버전이 CVM을 지원하지 않으면 AKS는 CVM을 지원하는 최신 OS 버전을 기본값으로 사용합니다. 예를 들어, Ubuntu 22.04는 Linux 노드 풀의 기본값입니다. 22.04는 현재 CVM을 지원하지 않으므로 AKS는 Linux CVM 사용 노드 풀에 대해 기본적으로 Ubuntu 20.04로 설정됩니다.
제한 사항
CVM을 사용하는 노드 풀을 AKS에 추가하는 경우 적용되는 제한 사항은 다음과 같습니다.
- FIPS, ARM64, 신뢰할 수 있는 시작 또는 Pod 샌드박싱을 사용할 수 없습니다.
- CVM 크기로 마이그레이션하도록 기존 노드 풀을 업데이트할 수 없습니다. 마이그레이션하려면 노드 풀의 크기를 조정해야 합니다.
- Windows 노드 풀에는 CVM을 사용할 수 없습니다.
- Azure Linux가 있는 CVM은 현재 미리 보기로 제공됩니다.
- Azure ACL(Container Linux)은 현재 AKS의 CVM 노드 풀을 지원하지 않습니다.
필수 조건
시작하기 전에 다음을 확인합니다.
- 기존 AKS 클러스터
- 클러스터가 만들어진 지역에서 구독에 대한 CVM 크기를 사용할 수 있어야 합니다. CVM 크기의 노드 풀을 만들려면 충분한 할당량이 있어야 합니다.
- Azure Linux os를 사용하는 경우 확장을 설치
aks-preview하고, 확장을 업데이트aks-preview하고, 미리 보기 기능 플래그를 등록해야 합니다. Ubuntu를 사용하는 경우 다음 단계를 건너뛸 수 있습니다.
Azure Linux를 사용하는 경우
Ubuntu용 CVM은 GA이지만 Azure Linux를 사용하는 CVM은 현재 미리 보기로 제공됩니다. AZURE Linux에서 CVM 노드 풀을 선택한 OS로 사용하려면 확장을 사용하도록 설정하고 플래그를 등록해야 합니다.
확장 프로그램 설치 aks-preview
aks-preview명령을 사용하여 Azure CLI 확장을 설치합니다az extension add.중요합니다
AKS 미리 보기 기능은 셀프 서비스에서 사용할 수 있습니다(옵트인 방식). 미리 보기는 "있는 그대로" 및 "사용 가능한 상태로" 제공되며 서비스 수준 계약 및 제한적 보증에서 제외됩니다. AKS 미리 보기의 일부는 고객 지원팀에서 최선을 다해 지원합니다. 따라서 이러한 기능은 프로덕션 용도로 사용할 수 없습니다. 자세한 내용은 다음 지원 문서를 참조하세요.
az extension add --name aks-previewaz extension update명령을 사용하여 확장의 최신 버전으로 업데이트합니다.az extension update --name aks-preview
기능 플래그 등록 AzureLinuxCVMPreview
AzureLinuxCVMPreview명령을 사용하여az feature register기능 플래그를 등록합니다.az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxCVMPreview"또한
az feature show명령을 사용하여 등록 상태를 확인합니다. 상태가 Registered로 표시되는 데 몇 분 정도 걸립니다.az feature show --namespace Microsoft.ContainerService --name AzureLinuxCVMPreview상태가 Registered로 반영되면 명령을 사용하여
az provider register리소스 공급자를 등록 상태로 새로 고치십시오.az provider register --namespace Microsoft.ContainerService
CVM이 있는 노드 풀을 AKS 클러스터에 추가
명령을 사용하여 CVM이 있는 노드 풀을 AKS 클러스터에 az aks nodepool add 추가하고 지원되는 node-vm-size로 설정합니다.
az aks nodepool add \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name cvmnodepool \
--node-count 3 \
--node-vm-size Standard_DC4as_v5
osSKU 또는 osType을 지정하지 않으면, AKS가 기본적으로 --os-type Linux 및 --os-sku Ubuntu로 설정됩니다.
CVM을 사용하여 기존 노드 풀을 Ubuntu 24.04로 업그레이드
명령을 사용하여 az aks nodepool update CVM이 있는 기존 노드 풀을 Ubuntu 20.04에서 Ubuntu 24.04로 업그레이드합니다. 로 os-skuUbuntu2404설정합니다.
az aks nodepool update \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name cvmnodepool \
--os-sku Ubuntu2404
비고
CVM이 있는 Ubuntu 24.04 노드 풀은 AKS 클러스터 1.33 버전에서 지원됩니다. 또한 Ubuntu 24.04가 GA가 되기 전에 Ubuntu2404Preview 기능을 등록해야 합니다. 자세한 내용은 기능 등록을 참조 here 하세요.
노드 풀이 CVM을 사용하는지 확인
az aks nodepool show명령을 사용하여 노드 풀이 CVM을 사용하는지 확인하고,vmSize이(가)Standard_DCa4_v5인지 확인합니다.az aks nodepool show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name cvmnodepool \ --query 'vmSize'다음 예제 명령 및 출력은 노드 풀이 CVM을 사용하는 것을 보여 줍니다.
az aks nodepool show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name cvmnodepool \ --query 'vmSize' "Standard_DC4as_v5"노드 풀이 명령을 사용하여 CVM 이미지를 사용하는지 확인합니다
az aks nodepool list.az aks nodepool list \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name cvmnodepool \ --query 'nodeImageVersion'다음 예제 명령 및 출력은 노드 풀이 Ubuntu 20.04 CVM 이미지를 사용하는 것을 보여줍니다.
az aks nodepool show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name cvmnodepool \ --query 'nodeImageVersion' "AKSUbuntu-2004cvmcontainerd-202507.02.0"
AKS 클러스터에서 CVM이 있는 노드 풀 제거
명령을 사용하여 AKS 클러스터에서 CVM이 있는 노드 풀을 제거합니다 az aks nodepool delete .
az aks nodepool delete \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name cvmnodepool
관련 콘텐츠
이 문서에서는 CVM이 있는 노드 풀을 AKS 클러스터에 추가하는 방법을 알아보았습니다.
- CVM에 대한 자세한 내용은 AKS에서 기밀 VM 노드 풀 지원을 참조하세요.
- 기존 노드 풀을 CVM vm 크기로 마이그레이션하려면 노드 풀의 크기를 조정할 수 있습니다.
- 노드 풀에서 신뢰할 수 있는 시작을 사용하도록 설정하려면 AKS에서 신뢰할 수 있는 시작을 참조하세요.