Udostępnij przez


Używanie poufnych maszyn wirtualnych (CVM) w klastrze usługi Azure Kubernetes Service (AKS)

Poufne Maszyny Wirtualne (CVM) oferują mocne zabezpieczenia i poufność dla najemców. CVM-y oferują Zaufane Środowisko Wykonawcze na poziomie sprzętu (TEE) oparte na maszynie wirtualnej, które wykorzystuje funkcje zabezpieczeń SEV-SNP, aby uniemożliwić funkcjom hypervisora i innemu kodowi zarządzającemu hostem dostęp do pamięci i stanu maszyny wirtualnej, zapewniając ochronę w głębi przed dostępem operatora. Te funkcje umożliwiają pule węzłów z cvM, aby kierować migrację wysoce wrażliwych obciążeń kontenerów do usługi AKS bez żadnej refaktoryzacji kodu, jednocześnie korzystając z funkcji usługi AKS. Na przykład możesz wymagać CVM, jeśli masz następujące elementy:

  • Obciążenia obsługujące dane krytyczne dla zabezpieczeń i/lub poufne dane klientów
  • Usługi, które są wymagane do spełnienia różnych wymagań dotyczących zgodności, zwłaszcza w przypadku umów rządowych. Bez skalowalnego rozwiązania do zabezpieczania danych może to potencjalnie prowadzić do utraty akredytacji i kontraktów.

Z tego artykułu dowiesz się, jak tworzyć pule węzłów usługi AKS przy użyciu poufnych rozmiarów maszyn wirtualnych.

Obsługiwane w AKS poufne rozmiary maszyn wirtualnych

Platforma Azure oferuje wybór opcji zaufanego środowiska wykonawczego (TEE) zarówno z firmy AMD, jak i firmy Intel. Te TEE umożliwiają tworzenie poufnych środowisk maszyn wirtualnych z doskonałymi współczynnikami cen do wydajności, a wszystko to bez konieczności wprowadzania żadnych zmian w kodzie.

  • Maszyny wirtualne poufne firmy AMD używają technologii AMD SEV-SNP, która jest wprowadzana z procesorami EPYC™ trzeciej generacji.
  • Poufne maszyny wirtualne firmy Intel używają technologii Intel TDX z procesorami Intel® Xeon® czwartej generacji.

Obie technologie mają różne implementacje. Oba rozwiązania zapewniają jednak podobny poziom zabezpieczeń w stosie infrastruktury chmurowej. Aby uzyskać więcej informacji, zobacz Rozmiary maszyn wirtualnych CVM.

Funkcje zabezpieczeń

CvMs oferują następujące ulepszenia zabezpieczeń w porównaniu z innymi rozmiarami maszyn wirtualnych:

  • Niezawodna izolacja sprzętowa między maszynami wirtualnymi, funkcją hypervisor i kodem zarządzania hostami.
  • Dostosowywalne zasady zaświadczania w celu zapewnienia zgodności hosta przed wdrożeniem.
  • Poufne szyfrowanie dysków systemu operacyjnego w chmurze przed pierwszym rozruchem.
  • Klucze szyfrowania maszyn wirtualnych, którymi opcjonalnie zarządza i które posiada platforma lub klient.
  • Bezpieczne wydanie klucza za pomocą powiązania kryptograficznego między pomyślnym zaświadczeniem platformy a kluczami szyfrowania maszyny wirtualnej.
  • Dedykowane wirtualne wystąpienie Modułu Zaufanej Platformy (TPM) do uwierzytelniania i ochrony kluczy oraz sekretów w maszynie wirtualnej.
  • Funkcja bezpiecznego rozruchu podobna do zaufanego uruchamiania maszyn wirtualnych platformy Azure

Jak to działa?

Jeśli korzystasz z obciążenia wymagającego zwiększonej poufności i integralności, możesz skorzystać z szyfrowania pamięci i zwiększonych zabezpieczeń bez zmian kodu w aplikacji. Wszystkie pody w węźle CVM są częścią tej samej granicy zaufania. Węzły w puli węzłów utworzonej za pomocą narzędzia CVM używają dostosowanego obrazu węzła specjalnie skonfigurowanego dla cvM.

Obsługiwane wersje systemu operacyjnego

Pule węzłów CVM można tworzyć w typach systemu operacyjnego Linux (Ubuntu i Azure Linux). Jednak nie wszystkie wersje systemu operacyjnego obsługują pule węzłów CVM.

Ta tabela zawiera obsługiwane wersje systemu operacyjnego:

Typ systemu operacyjnego SKU systemu operacyjnego Obsługa CVM Domyślna funkcja CVM
Linux Ubuntu Wsparte System Ubuntu 20.04 jest domyślny dla K8s w wersji 1.24-1.33. Ubuntu 24.04 jest ustawieniem domyślnym dla K8s w wersji 1.34-1.38.
Linux Ubuntu2204 Nie jest obsługiwany Usługa AKS nie obsługuje narzędzia CVM dla systemu Ubuntu 22.04.
Linux Ubuntu2404 Wsparte CVM jest obsługiwane na Ubuntu2404 w K8s 1.32-1.38.
Linux AzureLinux Obsługiwane w systemie Azure Linux 3.0 System Azure Linux 3 jest domyślny podczas włączania cvM dla K8s w wersji 1.28-1.36.
Linux flatcar Niewspierane Flatcar Container Linux for AKS nie obsługuje CVM.
Linux AzureLinuxOSGuard Niewspierane Platforma Azure Linux z funkcją OS Guard dla usługi AKS nie obsługuje narzędzia CVM.
Windows Wszystkie SKU systemu Windows Nie jest obsługiwany

Jeśli używasz Ubuntu lub AzureLinux jako osSKU, a domyślna wersja systemu operacyjnego nie obsługuje CVM, AKS automatycznie przełącza się na najnowszą wersję systemu operacyjnego wspierającą CVM. Na przykład system Ubuntu 22.04 jest domyślny dla pul węzłów systemu Linux. Ponieważ wersja 22.04 nie obsługuje obecnie cvM, usługa AKS domyślnie używa systemu Ubuntu 20.04 dla pul węzłów z obsługą CVM systemu Linux.

Ograniczenia

Podczas dodawania puli węzłów z cvm do usługi AKS obowiązują następujące ograniczenia:

  • Nie można używać FIPS, ARM64, Zaufanego Uruchamiania lub Izolacji Zasobników (Pod Sandboxing).
  • Nie można zaktualizować istniejącej puli węzłów, aby przeprowadzić migrację do rozmiaru CVM. Aby przeprowadzić migrację, musisz zmienić rozmiar puli węzłów.
  • Nie można używać cvM z pulami węzłów systemu Windows.
  • CvM z systemem Azure Linux jest obecnie w wersji zapoznawczej.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że masz następujące elementy:

  • Istniejący klaster AKS.
  • Rozmiary CVM muszą być dostępne dla Twojej subskrypcji w regionie, w którym utworzono klaster. Aby utworzyć pulę węzłów o rozmiarze CVM, musisz mieć wystarczający limit przydziału.
  • Jeśli używasz systemu operacyjnego Azure Linux, musisz zainstalować rozszerzenie aks-preview, zaktualizować rozszerzenie aks-preview i zarejestrować flagę funkcjonalności w wersji zapoznawczej. Jeśli używasz systemu Ubuntu, możesz pominąć te kroki.

Jeśli używasz platformy Azure z systemem Linux

CVMs for Ubuntu są ogólnie dostępne, ale CVMs z systemem Azure Linux jest obecnie w fazie wersji zapoznawczej. Jeśli chcesz używać pul węzłów CVM z systemem Linux platformy Azure jako wybranego systemu operacyjnego, upewnij się, że włączysz rozszerzenie i zarejestruj flagę.

Instalowanie aks-preview rozszerzenia

  1. Zainstaluj rozszerzenie CLI platformy Azure przy użyciu polecenia aks-preview.

    Ważne

    Funkcje usługi AKS w wersji zapoznawczej są dostępne na zasadzie samoobsługi i wymagają zapisania się. Wersje zapoznawcze są udostępniane w wersji "as is" i "jako dostępne" i są wykluczone z umów dotyczących poziomu usług i ograniczonej gwarancji. Wersje zapoznawcze usługi AKS są częściowo objęte pomocą techniczną dla klientów, świadczoną w miarę możliwości. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego. Aby uzyskać więcej informacji, zobacz następujące artykuły pomocy technicznej:

    az extension add --name aks-preview
    
  2. Przeprowadź aktualizację do najnowszej wersji rozszerzenia przy użyciu az extension update polecenia .

    az extension update --name aks-preview
    

Zarejestruj flagę funkcji AzureLinuxCVMPreview

  1. Zarejestruj flagę funkcji AzureLinuxCVMPreview przy użyciu polecenia [az feature register][az-feature-register].

    az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxCVMPreview"
    
  2. Sprawdź stan rejestracji przy użyciu polecenia [az feature show][az-feature-show]. Wyświetlenie stanu Zarejestrowane trwa kilka minut.

    az feature show --namespace Microsoft.ContainerService --name AzureLinuxCVMPreview
    
  3. Gdy stan będzie odzwierciedlał wartość Zarejestrowano, odśwież rejestrację dostawcy zasobów Microsoft.ContainerService przy użyciu polecenia [az provider register][az-provider-register].

    az provider register --namespace Microsoft.ContainerService
    

Dodaj pulę węzłów z CVM do klastra usługi AKS

  • Dodaj pulę węzłów z CVM do klastra usługi AKS, używając polecenia , i ustaw na obsługiwany rozmiar maszyny wirtualnej .

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool \
        --node-count 3 \
        --node-vm-size Standard_DC4as_v5 
    

Jeśli nie określisz osSKU lub osType, AKS domyślnie użyje --os-type Linux i --os-sku Ubuntu.

Uaktualnianie istniejącej puli węzłów przy użyciu narzędzia CVM do systemu Ubuntu 24.04

  • Zaktualizuj istniejącą pulę węzłów z systemu Ubuntu 20.04 do systemu Ubuntu 24.04, korzystając z narzędzia CVM i polecenia az aks nodepool update. Ustaw wartość os-sku jako Ubuntu2404.

      az aks nodepool update \
          --resource-group myResourceGroup \
          --cluster-name myAKSCluster \
          --name cvmnodepool \
          --os-sku Ubuntu2404
    

Uwaga / Notatka

Pula węzłów z systemem Ubuntu 24.04 i CVM jest obsługiwana od wersji 1.33 klastra AKS. Ponadto, zanim system Ubuntu 24.04 stanie się ogólnie dostępny, musisz zarejestrować Ubuntu2404Preview tę funkcję. Aby uzyskać więcej informacji, zobacz here rejestrowanie funkcji.

Zweryfikuj, czy pula węzłów używa CVM

  1. Sprawdź, czy pula węzłów wykorzystuje CVM za pomocą polecenia az aks nodepool show i zweryfikuj, czy vmSize to Standard_DCa4_v5.

    az aks nodepool show \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool \
        --query 'vmSize'
    

    Następujące przykładowe polecenie i dane wyjściowe pokazują, że pula węzłów używa CVM:

    az aks nodepool show \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool \
        --query 'vmSize'
    
    "Standard_DC4as_v5"
    
  2. Sprawdź, czy pula węzłów używa obrazu CVM za pomocą polecenia az aks nodepool list.

    az aks nodepool list \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool \
        --query 'nodeImageVersion'
    

    Następujące przykładowe polecenie i wynik pokazują, że pula węzłów korzysta z obrazu CVM systemu Ubuntu 20.04.

    az aks nodepool show \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool \
        --query 'nodeImageVersion'
    
    "AKSUbuntu-2004cvmcontainerd-202507.02.0"
    

Usuń pulę węzłów z CVM z klastra AKS

  • Usuń pulę węzłów z klastra usługi AKS z CVM przy użyciu polecenia az aks nodepool delete.

    az aks nodepool delete \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name cvmnodepool
    

Następne kroki

W tym artykule dowiedziałeś się, jak dodać pulę węzłów z CVM do klastra AKS.