Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas tworzenia puli usługi Azure Batch przy użyciu konfiguracji maszyny wirtualnej można szyfrować węzły obliczeniowe w puli przy użyciu klucza zarządzanego przez platformę, określając konfigurację szyfrowania dysku.
W tym artykule wyjaśniono, jak utworzyć pulę usługi Batch z włączonym szyfrowaniem dysków.
Ważne
Usługa Azure Disk Encryption (ADE) dla pul usługi Azure Batch zostanie wycofana 15 września 2028 r. Przed tą datą zmigruj konfiguracje puli, które opierają się na ADE na potrzeby szyfrowania dysku tymczasowego, do szyfrowania na hoście. Wycofanie nie wpływa na domyślne szyfrowanie zarządzanych dysków po stronie serwera.
Dlaczego warto używać puli z konfiguracją szyfrowania dysków?
Za pomocą puli usługi Batch można uzyskiwać dostęp do danych i przechowywać je na dyskach systemu operacyjnego i dyskach tymczasowych węzła obliczeniowego. Szyfrowanie dysku po stronie serwera przy użyciu klucza zarządzanego przez platformę zapewni ochronę tych danych przy niskich obciążeniach i wygodzie.
Usługa Batch zastosuje jedną z tych technologii szyfrowania dysków na węzłach obliczeniowych w zależności od konfiguracji puli i dostępności regionalnej.
- Szyfrowanie dysków zarządzanych w spoczynku za pomocą kluczy zarządzanych przez platformę
- Szyfrowanie na hoście przy użyciu klucza zarządzanego przez platformę
- Azure Disk Encryption for Batch pools, wycofane 15 września 2028 r.
Obiekty docelowe szyfrowania dysku nie wybierają bezpośrednio technologii szyfrowania. Określasz docelowe dyski, które chcesz zaszyfrować, a Batch wybiera odpowiednią technologię w zależności od konfiguracji puli. Możesz wyraźnie zażądać szyfrowania na hostzie w profilu bezpieczeństwa maszyny wirtualnej. Poniższy obraz przedstawia, jak Batch dokonuje wyboru.
Ważne
Jeśli tworzysz pulę z niestandardowym obrazem Linuksa, możesz włączyć szyfrowanie dysku tylko wtedy, gdy twoja pula korzysta z rozmiaru maszyny wirtualnej, który obsługuje szyfrowanie na hoście.
Dla puli subskrypcji użytkownika zarejestruj Microsoft.Compute/EncryptionAtHost funkcję w subskrypcji zawierającej zasoby puli i wyraźnie ustaw securityProfile.encryptionAtHost na true. Więcej informacji można znaleźć w artykule Wymagania dotyczące szyfrowania na hostze.
Niektóre konfiguracje szyfrowania dysków wymagają, aby rodzina maszyn wirtualnych puli obsługiwała szyfrowanie na hoście. Zobacz Szyfrowanie end-to-end przy użyciu szyfrowania na hoście aby określić, które rodziny maszyn wirtualnych obsługują szyfrowanie na hoście.
Note
Tymczasowe szyfrowanie dysku na rozmiarach maszyn wirtualnych, które nie obsługują szyfrowania na hostze, wymaga Azure Disk Encryption (ADE). ADE nie jest obsługiwane w rozmiarach maszyn wirtualnych Basic, A-series, v6, v7 (i nowszych) ani na maszynach z mniej niż 2 GB pamięci. Jeśli włączysz szyfrowanie dysku tymczasowego dla jednego z tych nieobsługiwanych rozmiarów, usługa Batch odrzuca utworzenie puli z błędem AzureDiskEncryptionNotSupportedOnVMSize. Aby używać szyfrowania dysku tymczasowego bez ADE, wybierz rozmiar maszyny wirtualnej i subskrypcję wspierającą szyfrowanie na hoście. W przypadku puli usługi Batch nie wyłączaj jawnie szyfrowania na hoście. Dla puli subskrypcyjnej użytkowników, wyraźnie ustaw securityProfile.encryptionAtHost na true.
Wycofanie usługi Azure Disk Encryption
Azure Disk Encryption (ADE) dla pul wsadowych zostanie wycofane 15 września 2028 r. Po dacie zakończenia obsługi pule wsadowe nie obsługują ADE. Konfiguracje puli, które nadal zależą od ADE, mogą doświadczać zakłóceń, gdy usługa Batch aprowizuje lub zastępuje węzły obliczeniowe.
Zakończ migrację przed datą wycofania, jeśli konfiguracja puli wymaga tymczasowego szyfrowania dysku i może wybrać ADE. Użyj szyfrowania na hoście jako zamiennika. Szyfrowanie na hoście szyfruje tymczasowy dysk, efemeryczne dyski systemu operacyjnego oraz pamięć podręczną dysku systemu operacyjnego i dysków danych na hoście VM.
Wycofanie ADE nie wpływa na zarządzane szyfrowanie dysków w spoczynku z kluczami zarządzanymi przez platformę, które jest domyślnie włączone dla zarządzanych dysków Azure.
Określ, czy Twoja pula zasobów wymaga podjęcia działań
Właściwości puli usługi Batch pokazują cele szyfrowania dysku, o które prosiłeś, ale nie identyfikują technologii szyfrowania, którą Batch wybrał dla tych węzłów. Użyj poniższej tabeli, aby ocenić, czy konfiguracja puli może zależeć od ADE.
| Konfiguracja puli | Zależność ADE | Action |
|---|---|---|
diskEncryptionConfiguration nie jest ustawione lub TemporaryDisk nie jest uwzględnione w swoich elementach docelowych |
Konfiguracja nie zależy od ADE dla szyfrowania tymczasowego dysku. | Nie jest wymagane żadne działanie w przypadku tego wycofania. |
Wymagany jest tryb alokacji puli usługi Batch, TemporaryDisk rozmiar maszyny wirtualnej obsługuje szyfrowanie na hoście, a szyfrowanie na hoście nie jest jawnie wyłączone |
Wsadowo wybiera szyfrowanie na hoście. | Migracja nie jest wymagana. Kontynuuj używanie rozmiaru maszyny wirtualnej, który obsługuje szyfrowanie na hoście. |
Zażądano trybu alokacji puli usług wsadowych TemporaryDisk, a rozmiar maszyny wirtualnej nie obsługuje szyfrowania na hoście |
Konfiguracja może zależeć od ADE. | Migruj do rozmiaru maszyny wirtualnej, który obsługuje szyfrowanie na hoście. |
Zażądano trybu alokacji puli subskrypcji użytkowników, TemporaryDisk ale securityProfile.encryptionAtHost nie jest ustawiony na true |
Konfiguracja może zależeć od ADE. Batch nie włącza automatycznie szyfrowania na hostze dla pul subskrypcji użytkowników. | Zarejestruj funkcję szyfrowania na hoście w subskrypcji puli i wyraźnie włącz szyfrowanie na hoście. |
securityProfile.encryptionAtHost jest jawnie ustawione na false, a zażądano wartości TemporaryDisk |
Konfiguracja może zależeć od ADE. | Użyj obsługiwanego rozmiaru maszyny wirtualnej i ustaw encryptionAtHost na true. |
Aby sprawdzić, czy rozmiar maszyny wirtualnej obsługuje szyfrowanie na hoście, zobacz Obsługiwane rozmiary maszyn wirtualnych.
Skonfiguruj nowe pule
W przypadku nowych pul wymagających tymczasowego szyfrowania dysku wybierz rozmiar maszyny wirtualnej wspierającej szyfrowanie na hostze. Nie jawnie wyłączaj szyfrowania na hoście.
W przypadku pul subskrypcyjnych użytkowników zarejestruj Microsoft.Compute/EncryptionAtHost także funkcję w subskrypcji zawierającej zasoby puli i ustaw securityProfile.encryptionAtHost na true.
Zmigruj istniejącą pulę do szyfrowania na hoście
Możesz zaktualizować istniejącą pulę bez usuwania puli wsadowej. Aktualizacja zastępuje bazowe wdrożenie zasobów obliczeniowych, gdy ponownie zwiększasz skalę puli.
- Przestań planować nową pracę na puli i poczekaj na zakończenie bieżących zadań lub przenieś je do innej puli.
- Zmień rozmiar zarówno dedykowanej, jak i Spot lub niskopriorytetowej liczby węzłów docelowych do zera.
- Poczekaj, aż stan alokacji puli będzie Stały, a bieżąca liczba węzłów będzie zerowa.
- Użyj interfejsu API Pool - Update API płaszczyzny zarządzania usługi Batch w wersji
2024-07-01lub nowszej do:- Wybierz rozmiar maszyny wirtualnej, który obsługuje szyfrowanie na hostze, jeśli obecny rozmiar tego nie obsługuje.
- Ustaw opcję
deploymentConfiguration.virtualMachineConfiguration.securityProfile.encryptionAtHostnatrue. - Zachowaj wymagane cele szyfrowania dysku oraz inne właściwości konfiguracyjne maszyny wirtualnej.
- Zmień rozmiar puli do wymaganej liczby docelowych węzłów. Batch tworzy nowe bazowe wdrożenie obliczeniowe na podstawie zaktualizowanej konfiguracji.
Na przykład, odpowiednia część żądania management plane PATCH to:
{
"properties": {
"vmSize": "<encryption-at-host-supported-vm-size>",
"deploymentConfiguration": {
"virtualMachineConfiguration": {
"imageReference": {
"publisher": "<publisher>",
"offer": "<offer>",
"sku": "<sku>",
"version": "<version>"
},
"nodeAgentSkuId": "<node-agent-sku-id>",
"diskEncryptionConfiguration": {
"targets": [
"OsDisk",
"TemporaryDisk"
]
},
"securityProfile": {
"encryptionAtHost": true
}
}
}
}
}
Caution
Uwzględnić istniejące właściwości konfiguracyjne maszyny wirtualnej, które pula musi zachować, takie jak odniesienia do obrazu, SKU agenta węzła, ustawienia dysku systemu, konfiguracja kontenerów, rozszerzenia oraz dyski danych. Zanim zaktualizujesz pulę produkcyjną, pobierz jej aktualną konfigurację i skonstruuj żądanie ze wszystkimi wymaganymi wartościami.
Więcej informacji o aktualizacjach zero-node i zachowaniu aktualizacji można znaleźć w artykule Właściwości puli wsadowej usługi Batch.
Azure Portal
Podczas tworzenia puli usługi Batch w witrynie Azure Portal wybierz pozycję OsDisk, TemporaryDisk lub OsAndTemporaryDisk w obszarze Konfiguracja szyfrowania dysków.
Po utworzeniu puli można zobaczyć cele konfiguracji szyfrowania dysków w sekcji Właściwości puli.
Przykłady
W poniższych przykładach pokazano, jak zaszyfrować dyski systemu operacyjnego i dyski tymczasowe w puli usługi Batch za pomocą SDK Azure.ResourceManager.Batch, interfejsu API REST usługi Batch oraz interfejsu wiersza polecenia Azure CLI.
Azure. ResourceManager.Batch SDK
using Azure;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Batch;
using Azure.ResourceManager.Batch.Models;
//...
public async Task SetDiskEncryption()
{
ArmClient client = new ArmClient(new DefaultAzureCredential());
ResourceIdentifier batchAccountResourceId =
BatchAccountResource.CreateResourceIdentifier("subscriptionId", "resourceGroupName", "accountName");
BatchAccountResource batchAccount = client.GetBatchAccountResource(batchAccountResourceId);
BatchAccountPoolCollection poolCollection = batchAccount.GetBatchAccountPools();
BatchAccountPoolData poolData = new BatchAccountPoolData()
{
VmSize = "standard_ds1_v2",
DeploymentConfiguration = new BatchDeploymentConfiguration()
{
VmConfiguration = new BatchVmConfiguration(
imageReference: new BatchImageReference()
{
Publisher = "Canonical",
Offer = "UbuntuServer",
Sku = "22.04-LTS"
},
nodeAgentSkuId: "batch.node.ubuntu 22.04")
{
DiskEncryptionConfiguration = new BatchDiskEncryptionConfiguration()
{
Targets = { BatchDiskEncryptionTarget.OSDisk, BatchDiskEncryptionTarget.TemporaryDisk }
}
}
}
};
ArmOperation<BatchAccountPoolResource> pool = await poolCollection.CreateOrUpdateAsync(
WaitUntil.Completed, "diskencryptionPool", poolData);
}
Zbiorczy interfejs API REST
Adres URL interfejsu API REST:
POST {batchURL}/pools?api-version=2020-03-01.11.0
client-request-id: 00000000-0000-0000-0000-000000000000
Treść żądania:
"pool": {
"id": "pool2",
"vmSize": "standard_a1",
"virtualMachineConfiguration": {
"imageReference": {
"publisher": "Canonical",
"offer": "UbuntuServer",
"sku": "22.04-LTS"
},
"diskEncryptionConfiguration": {
"targets": [
"OsDisk",
"TemporaryDisk"
]
},
"nodeAgentSKUId": "batch.node.ubuntu 22.04"
},
"resizeTimeout": "PT15M",
"targetDedicatedNodes": 5,
"targetLowPriorityNodes": 0,
"taskSlotsPerNode": 3,
"enableAutoScale": false,
"enableInterNodeCommunication": false
}
Azure CLI
az batch pool create \
--id diskencryptionPool \
--vm-size Standard_DS1_V2 \
--target-dedicated-nodes 2 \
--image canonical:ubuntuserver:22.04-LTS \
--node-agent-sku-id "batch.node.ubuntu 22.04" \
--disk-encryption-targets OsDisk TemporaryDisk
Następne kroki
- Dowiedz się więcej na temat szyfrowania po stronie serwera usługi Azure Disk Storage.
- Aby zapoznać się ze szczegółowym omówieniem usługi Batch, zobacz Przepływ pracy i zasoby usługi Batch.