다음을 통해 공유


AKS(Azure Kubernetes Service)에서 Virtual Machines 노드 풀(미리 보기) 사용

이 문서에서는 AKS에 대한 새 Virtual Machines 노드 풀 형식(미리 보기)에 대해 알아봅니다.

Virtual Machines 노드 풀을 사용하여 AKS는 모든 단일 노드의 프로비전 및 부트스트래핑을 직접 관리합니다. Virtual Machine Scale Sets 노드 풀의 경우 AKS는 Virtual Machine Scale Sets의 모델을 관리하고 이를 사용하여 노드 풀의 모든 노드에서 일관성을 달성합니다. Virtual Machines 노드 풀을 사용하면 개별 워크로드에 가장 적합한 가상 머신으로 클러스터를 오케스트레이션할 수 있습니다.

개요

작동 방식

노드 풀은 다양한 유형의 워크로드를 지원하도록 다른 가상 머신 크기가 지정된 가상 머신 집합으로 구성됩니다. SKU라고 하는 이러한 가상 머신 크기는 특정 용도로 최적화된 여러 제품군으로 분류됩니다. 자세한 내용은 VM SKU를 참조하세요.

여러 가상 머신 크기의 크기 조정을 사용하도록 설정하기 위해 Virtual Machines 노드 풀 유형은 노드 풀의 크기 조정 방법, 특히 원하는 가상 머신 크기 및 개수 목록을 나타내는 구성을 포함하는 구성을 사용합니다 ScaleProfile . A ManualScaleProfile 는 원하는 가상 머신 크기 및 수를 지정하는 확장 프로필입니다. 에 하나의 가상 머신 크기만 허용됩니다 ManualScaleProfile. 노드 풀에서 각 가상 머신 크기에 대해 별도의 ManualScaleProfile 크기를 만들어야 합니다.

참고 항목

새 Virtual Machines 노드 풀 ManualScaleProfile ScaleProfile을 만들 때 . Virtual Machines 노드 풀에는 여러 수동 크기 조정 프로필이 있을 수 있습니다.

장점

Virtual Machines 노드 풀 유형의 장점은 다음과 같습니다.

  • 유연성: 노드 사양을 업데이트하여 현재 워크로드 및 요구 사항에 맞게 조정할 수 있습니다.
  • 미세 조정된 컨트롤: 단일 노드 수준 컨트롤을 사용하면 다른 사양의 노드를 지정하고 혼합하여 단일 모델에서 제한을 해제하고 일관성을 향상시킬 수 있습니다.
  • 효율성: 클러스터의 노드 공간을 줄여 운영 요구 사항을 간소화할 수 있습니다.

Virtual Machines 노드 풀은 동적 워크로드 및 고가용성 요구 사항에 대한 더 나은 환경을 제공합니다. Virtual Machines 노드 풀을 사용하면 하나의 노드 풀에서 여러 유사한 패밀리 가상 머신을 설정할 수 있습니다. 구성한 사용 가능한 리소스에서 워크로드가 자동으로 예약됩니다.

기능 비교

다음 표에서는 Virtual Machines 노드 풀과 표준 Scale Set 노드 풀을 비교하는 방법을 강조 표시합니다.

노드 풀 유형 기능
Virtual Machines 노드 풀 노드 풀에서 노드를 추가, 제거 또는 업데이트할 수 있습니다. 가상 머신 유형은 동일한 패밀리 형식의 가상 머신(예: D 시리즈, A 시리즈 등)일 수 있습니다.
Virtual Machine Scale Set 기반 노드 풀 노드 풀에서 동일한 크기 및 형식의 노드를 추가하거나 제거할 수 있습니다. 클러스터에 새 가상 머신 크기를 추가하는 경우 새 노드 풀을 만들어야 합니다.

제한 사항

  • 클러스터 자동 크기 조정기는 현재 지원되지 않습니다.
  • InifiniBand를 사용할 수 없습니다.
  • Windows 노드 풀은 지원되지 않습니다.
  • 이 기능은 Azure Portal에서 사용할 수 없습니다. AZURE CLI 또는 REST API를 사용하여 CRUD 작업을 수행하거나 풀을 관리해야 합니다.
  • 노드 풀 스냅샷은 지원되지 않습니다.
  • 노드 풀에서 선택한 모든 VM 크기는 유사한 가상 머신 패밀리에서 가져온 것이어야 합니다. 예를 들어 N 시리즈 가상 머신 형식을 동일한 노드 풀의 D 시리즈 가상 머신 형식과 혼합할 수 없습니다.
  • Virtual Machines 노드 풀은 노드 풀당 최대 5개의 서로 다른 가상 머신 크기를 허용합니다.

필수 구성 요소

  • Azure 구독 계정이 없는 경우 무료 계정에 만들 수 있습니다.
  • Virtual Machines 노드 풀 기능은 미리 보기로 제공됩니다. 이 기능은 API 버전 2023-10-02-preview 이상 또는 Azure CLI 확장 버전 2.61.0 이상에서만 사용할 수 있습니다.
  • Azure CLI를 사용하는 경우 aks-preview 확장을 등록하거나 기존 aks-preview 버전을 최소 버전 4.0.0b4로 업데이트합니다.
  • 이 기능에 필요한 최소 부 Kubernetes 릴리스 버전은 릴리스 1.26입니다.

aks-preview Azure CLI 확장 설치

Important

AKS 미리 보기 기능은 셀프 서비스에서 사용할 수 있습니다(옵트인 방식). 미리 보기는 "있는 그대로" 및 "사용 가능한 상태로" 제공되며 서비스 수준 계약 및 제한적 보증에서 제외됩니다. AKS 미리 보기의 일부는 고객 지원팀에서 최선을 다해 지원합니다. 따라서 이러한 기능은 프로덕션 용도로 사용할 수 없습니다. 자세한 내용은 다음 지원 문서를 참조하세요.

  1. az extension add 명령을 사용하여 aks-preview 확장을 설치합니다.

    az extension add --name aks-preview
    
  2. az extension update 명령을 사용하여 aks-preview 확장의 최신 버전으로 업데이트합니다.

    az extension update --name aks-preview
    

VMsAgentPoolPreview 기능 플래그 등록

  1. az account set 명령을 사용하여 기능 플래그를 사용하도록 설정하려는 구독을 선택합니다.

    az account set --subscription <subscription-name>
    
  2. az feature registration create 명령을 사용하여 VMsAgentPoolPreview 기능 플래그를 등록합니다.

    az feature registration create --namespace Microsoft.ContainerService --name VMsAgentPoolPreview
    

    상태가 Registered로 표시되는 데 몇 분 정도 걸립니다.

  3. 또한 az feature show 명령을 사용하여 등록 상태를 확인합니다.

    az feature show --namespace "Microsoft.ContainerService" --name "VMsAgentPoolPreview"
    
  4. 상태가 Registered(등록됨)를 반영하면 az provider register 명령을 사용하여 Microsoft.ContainerService 리소스 공급자의 등록을 새로 고칩니다.

    az provider register --namespace "Microsoft.ContainerService"
    

Virtual Machines 노드 풀을 사용하여 AKS 클러스터 만들기

참고 항목

확장 프로필에는 하나의 VM 크기만 허용되며, 최대 제한은 Virtual Machines 노드 풀에 대한 전체 5개의 VM 확장 프로필입니다.

  • 플래그가 설정된 명령을 --vm-set-type 사용하여 Virtual Machines 노드 풀이 az aks create 있는 AKS 클러스터를 "VirtualMachines"만듭니다.

    다음 예제에서는 두 개의 노드가 포함된 Virtual Machines 노드 풀을 사용하여 myAKSCluster라는 클러스터를 만들고, SSH 키를 생성하고, 부하 분산 장치 SKU를 표준으로 설정하고, Kubernetes 버전을 1.28.5설정합니다.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --vm-set-type "VirtualMachines" \
        --node-count 2 \
        --kubernetes-version 1.28.5
    

기존 클러스터에 Virtual Machines 노드 풀 추가

  • 플래그가 설정된 명령을 사용하여 기존 클러스터에 az aks nodepool add Virtual Machines 노드 풀을 --vm-set-type 추가합니다 "VirtualMachines".

    다음 예제에서는 myvmpool이라는 Virtual Machines 노드 풀을 myAKSCluster 클러스터에 추가합니다. 노드 풀에는 3개의 노드와 최대 Standard_D4s_v3 VM SKU가 있습니다.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --vm-set-type "VirtualMachines" \
        --vm-sizes "Standard_D4s_v3" \
        --node-count 3
    

노드 풀에 수동 크기 조정 프로필 추가

  • --vm-sizes 플래그를 "Standard_D2s_v3"으로 설정하고 az aks nodepool manual-scale add를 사용하여 노드 풀에 수동 크기 조정 프로필을 추가합니다.

    다음 예제에서는 클러스터 myAKSCluster의 노드 풀 myvmpool에 수동 확장 프로필을 추가합니다. 노드 풀에는 VM SKU 가 Standard_D2s_v3 두 개의 노드가 포함됩니다.

    az aks nodepool manual-scale add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --vm-sizes "Standard_D2s_v3" \
        --node-count 2
    

기존 수동 크기 조정 프로필 업데이트

  • --vm-sizes 플래그를 "Standard_D2s_v3"으로 설정하고 az aks nodepool manual-scale update 명령을 사용하여 노드 풀의 기존 수동 크기 조정 프로필을 업데이트합니다.

    참고 항목

    매개 변수를 --current-vm-sizes 사용하여 업데이트하려는 기존 노드 풀의 크기를 지정합니다. --vm-sizes 및/또는 --node-count를 업데이트할 수 있습니다. 다른 도구나 REST API를 사용하는 경우 노드 풀 크기 조정 프로필을 업데이트할 때 전체 agentPoolProfiles.virtualMachinesProfile.scale 필드를 전달해야 합니다.

    다음 예제에서는 수동 확장 프로필을 myAKSCluster 클러스터의 myvmpool 노드 풀로 업데이트 합니다. 이 명령은 노드 수를 5개로 업데이트하고 VM SKU를 Standard_D4s_v3 Standard_D8s_v3 변경합니다.

    az aks nodepool manual-scale update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --current-vm-sizes "Standard_D4s_v3" \
        --vm-sizes "Standard_D8s_v3" \
        --node-count 5
    

수동 크기 조정 프로필 삭제

  • az aks nodepool manual-scale delete 명령을 사용하여 기존 수동 크기 조정 프로필을 삭제합니다.

    참고 항목

    매개 변수는 --current-vm-sizes 삭제할 기존 노드 풀의 크기를 지정합니다. 다른 도구 또는 REST API를 사용하여 노드 풀 확장 프로필을 업데이트하는 경우 전체 agentPoolProfiles.virtualMachinesProfile.scale 필드를 전달합니다.

    다음 예제에서는 myvmpool 노드 풀에서 Standard_D8s_v3 VM SKU에 대한 수동 확장 프로필을 삭제합니다.

    az aks nodepool manual-scale delete \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name myvmpool \
        --current-vm-sizes "Standard_D8s_v3"
    

다음 단계

이 문서에서는 AKS에서 Virtual Machines 노드 풀을 사용하는 방법을 알아보았습니다. AKS의 노드 풀에 대해 자세히 알아보려면 노드 풀 만들기를 참조하세요.