AKS(Azure Kubernetes Service) 노드 풀 스냅샷

AKS는 매주 새 노드 이미지를 릴리스합니다. 새 클러스터, 새 노드 풀 또는 업그레이드 클러스터는 모두 항상 최신 이미지를 수신하므로 일관성을 유지하고 반복 가능한 환경을 갖추기가 어려울 수 있습니다.

노드 풀 스냅샷을 사용하면 해당 구성 및 kubernetes 버전이 지원되는 한 노드 풀의 구성 스냅샷을 만든 다음 해당 스냅샷을 기반으로 새 노드 풀 또는 새 클러스터를 만들 수 있습니다. 지원 가능성 창에 대한 자세한 내용은 AKS에서 지원되는 Kubernetes 버전을 참조하세요.

스냅샷은 노드 이미지 버전, kubernetes 버전, OS 유형 및 OS SKU 같은 원본 노드 풀의 구성 정보를 포함하는 Azure 리소스입니다. 그런 다음 이 스냅샷 리소스와 해당 구성의 해당 값을 참조하여 이를 기반으로 새 노드 풀 또는 클러스터를 만들 수 있습니다.

시작하기 전에

이 문서에서는 기존 AKS 클러스터가 있다고 가정합니다. AKS 클러스터가 없는 경우 AKS의 엔터프라이즈 규모 구현 설계에 대한 지침은 AKS 디자인 계획을 참조하세요.

제한 사항

  • 스냅샷에서 만든 모든 노드 풀 또는 클러스터는 스냅샷과 동일한 가상 머신 패밀리의 VM을 사용해야 합니다. 예를 들어 이러한 경우 노드 이미지가 구조적으로 다르기 때문에 D 시리즈 노드 풀에서 캡처된 스냅샷을 기반으로 새 N 시리즈 노드 풀을 만들 수 없습니다.
  • 스냅샷은 원본 노드 풀과 동일한 지역에서 생성되어야 합니다. 해당 스냅샷을 사용하여 다른 지역에서 클러스터 및 노드 풀을 만들거나 업데이트할 수 있습니다.

노드 풀 스냅샷 만들기

노드 풀에서 스냅샷을 만들려면 노드 풀 리소스 ID가 필요합니다. 이 ID는 아래 명령에서 가져올 수 있습니다.

NODEPOOL_ID=$(az aks nodepool show --name nodepool1 --cluster-name myAKSCluster --resource-group myResourceGroup --query id -o tsv)

Important

스냅샷을 만들려면 2021년 11월 10일 이후에 AKS 노드 풀을 만들거나 업그레이드해야 합니다. aks-preview Azure CLI 확장 버전 0.5.59 이상을 사용하는 경우 노드 풀 스냅샷에 대한 명령이 변경되었습니다. 업데이트된 명령은 노드 풀 스냅샷 CLI 참조를 확인하세요.

이제 이전 노드 풀에서 스냅샷을 만들려면 az aks snapshot CLI 명령을 사용합니다.

az aks nodepool snapshot create --name MySnapshot --resource-group MyResourceGroup --nodepool-id $NODEPOOL_ID --location eastus

스냅샷에서 노드 풀 만들기

먼저 이전에 만든 스냅샷의 리소스 ID가 필요합니다. 이 ID는 아래 명령에서 가져올 수 있습니다.

SNAPSHOT_ID=$(az aks nodepool snapshot show --name MySnapshot --resource-group myResourceGroup --query id -o tsv)

이제 다음 명령을 사용하여 이 스냅샷을 기반으로 새 노드 풀을 추가할 수 있습니다.

az aks nodepool add --name np2 --cluster-name myAKSCluster --resource-group myResourceGroup --snapshot-id $SNAPSHOT_ID

노드 풀을 스냅샷으로 업그레이드

스냅샷 kubernetes 버전 및 노드 이미지 버전이 현재 노드 풀의 버전보다 최신인 경우 노드 풀을 스냅샷 구성으로 업그레이드할 수 있습니다.

먼저 이전에 만든 스냅샷의 리소스 ID가 필요합니다. 이 ID는 아래 명령에서 가져올 수 있습니다.

SNAPSHOT_ID=$(az aks nodepool snapshot show --name MySnapshot --resource-group myResourceGroup --query id -o tsv)

이제 이 명령을 사용하여 이 노드 풀을 이 스냅샷 구성으로 업그레이드할 수 있습니다.

az aks nodepool upgrade --name nodepool1 --cluster-name myAKSCluster --resource-group myResourceGroup --snapshot-id $SNAPSHOT_ID

참고 항목

노드 풀 이미지 버전은 스냅샷에 포함된 버전과 동일하며, 모든 비율 크기 조정 작업에서 동일하게 유지됩니다. 그러나 스냅샷 ID를 제공하지 않고 이 노드 풀을 업그레이드하거나 노드 이미지를 업그레이드하면 노드 이미지가 최신 버전으로 업그레이드됩니다.

참고 항목

노드 풀의 노드 버전만 업그레이드하려면 --node-image-only 플래그를 사용합니다. 이는 동일한 Kubernetes 버전을 사용하는 스냅샷을 기반으로 노드 풀에 대한 노드 이미지 버전을 업그레이드할 때 필요합니다.

스냅샷에서 클러스터 만들기

스냅샷에서 클러스터를 만들면 스냅샷 구성에서 클러스터의 원래 시스템 풀을 만듭니다.

먼저 이전에 만든 스냅샷의 리소스 ID가 필요합니다. 이 ID는 아래 명령에서 가져올 수 있습니다.

SNAPSHOT_ID=$(az aks nodepool snapshot show --name MySnapshot --resource-group myResourceGroup --query id -o tsv)

이제 이 명령을 사용하여 스냅샷 구성에서 이 클러스터를 만들 수 있습니다.

az aks create \
    --name myAKSCluster2 \
    --resource-group myResourceGroup \
    --snapshot-id $SNAPSHOT_ID \
    --generate-ssh-keys

다음 단계