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.
Ten artykuł zawiera dwa skrypty Azure CLI służące do tworzenia dysku zarządzanego na podstawie migawki. Pierwszy skrypt tworzy dysk zarządzany z kluczami zarządzanymi przez platformę, a drugi skrypt tworzy dysk zarządzany z kluczami zarządzanymi przez klienta. Po utworzeniu dysków systemu operacyjnego i danych na podstawie ich migawek można użyć dysków do utworzenia maszyny wirtualnej lub przywrócenia danych na istniejącej maszynie wirtualnej.
Jeśli nie masz jeszcze konta platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
Wymagania wstępne
Użyj środowiska Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Get started with Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Uwierzytelnianie na platformie Azure przy użyciu interfejsu wiersza polecenia platformy Azure.
Gdy pojawi się monit, zainstaluj rozszerzenie Azure CLI przy pierwszym użyciu. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Używanie rozszerzeń i zarządzanie nimi za pomocą interfejsu wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Tworzenie dysków zarządzanych na podstawie migawek
Uruchamianie usługi Azure Cloud Shell
Usługa Azure Cloud Shell to bezpłatna interaktywna powłoka, której możesz używać do wykonywania kroków opisanych w tym artykule. Udostępnia ona wstępnie zainstalowane i najczęściej używane narzędzia platformy Azure, które są skonfigurowane do użycia na koncie.
Aby otworzyć usługę Cloud Shell, wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu. Możesz również uruchomić usługę Cloud Shell w oddzielnej karcie przeglądarki, przechodząc do strony https://shell.azure.com.
Po otwarciu usługi Cloud Shell sprawdź, czy dla Twojego środowiska wybrano Bash. W kolejnych sesjach będziesz używać Azure CLI w środowisku Bash. Wybierz pozycję Kopiuj, aby skopiować bloki kodu, wkleić je do usługi Cloud Shell i nacisnąć klawisz Enter, aby je uruchomić.
Logowanie się do platformy Azure
Usługa Cloud Shell jest automatycznie uwierzytelniana na początkowym koncie zalogowanym. Użyj następującego skryptu, aby zalogować się przy użyciu innej subskrypcji, zastępując ciąg subscriptionId identyfikatorem subskrypcji platformy Azure.
Jeśli nie masz jeszcze konta platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
Aby uzyskać więcej informacji, zobacz ustawianie aktywnej subskrypcji lub logowanie interakcyjne.
Dyski z kluczami zarządzanymi przez platformę
Użyj tego skryptu, aby utworzyć dysk zarządzany z kluczami zarządzanymi przez platformę. Podaj subskrypcję, grupę zasobów, migawkę źródłową, nazwę nowego dysku, rozmiar dysku i typ magazynowania. W przypadku dysków Premium SSD w wersji 2 i Ultra Disk należy również określić strefę dostępności. Skrypt ustawia subskrypcję, pobiera identyfikator zasobu migawki i tworzy dysk zarządzany na podstawie migawki w tej samej lokalizacji.
#Provide the subscription Id of the subscription where you want to create Managed Disks
subscriptionId="<subscriptionId>"
#Provide the name of your resource group
resourceGroupName=myResourceGroupName
#Provide the name of the snapshot that will be used to create Managed Disks
snapshotName=mySnapshotName
#Provide the name of the new Managed Disks that will be create
diskName=myDiskName
#Provide the size of the disks in GB. It should be greater than the VHD file size.
diskSize=128
#Provide the storage type for Managed Disk. Acceptable values are Standard_LRS, Premium_LRS, PremiumV2_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, and StandardSSD_ZRS.
storageType=Premium_LRS
#Required for Premium SSD v2 and Ultra Disks
#Provide the Availability Zone you'd like the disk to be created in, default is 1
zone=1
#Set the context to the subscription Id where Managed Disk will be created
az account set --subscription $subscriptionId
#Get the snapshot Id
snapshotId=$(az snapshot show --name $snapshotName --resource-group $resourceGroupName --query [id] -o tsv)
#Create a new Managed Disks using the snapshot Id
#Note that managed disk will be created in the same location as the snapshot
#If you're creating a Premium SSD v2 or an Ultra Disk, add "--zone $zone" to the end of the command
az disk create --resource-group $resourceGroupName --name $diskName --sku $storageType --size-gb $diskSize --source $snapshotId
Dyski z kluczami zarządzanymi przez klienta
Użyj tego skryptu, aby utworzyć dysk zarządzany przy użyciu kluczy zarządzanych przez klienta. Oprócz subskrypcji, grupy zasobów, migawki i wartości nowego dysku podaj zestaw szyfrowania dysku docelowego oraz jego grupę zasobów. Skrypt pobiera informacje o migawce i zestawie szyfrowania dysku, a następnie tworzy dysk zarządzany z migawki przy użyciu określonego zestawu szyfrowania dysku.
#Provide the subscription Id of the subscription where you want to create managed disks
subscriptionId="<subscriptionId>"
#Provide the name of your resource group
resourceGroupName=myResourceGroupName
#Provide the name of the snapshot that will be used to create managed disks
snapshotName=mySnapshotName
#Provide the name of the new managed disks that will be create
diskName=myDiskName
#Provide the name of the target disk encryption set
diskEncryptionSetName=myName
#Provide the target disk encryption set resource group
diskEncryptionResourceGroup=myGroup
#Required for Premium SSD v2 and Ultra Disks
#Provide the Availability Zone you'd like the disk to be created in, default is 1
zone=1
#Set the context to the subscription Id where managed disk will be created
az account set --subscription $subscriptionId
#Get the snapshot ID
snapshotId=$(az snapshot show --name $snapshotName --resource-group $resourceGroupName --query [id] -o tsv)
#Get the disk encryption set ID
diskEncryptionSetId=$(az disk-encryption-set show --name $diskEncryptionSetName --resource-group $diskEncryptionResourceGroup --query [id] -o tsv)
#Create a new managed disk using the snapshot ID
#The managed disk is created in the same location as the snapshot
#If you're creating a Premium SSD v2 or an Ultra Disk, add "--zone $zone" to the end of the command
az disk create -g $resourceGroupName -n $diskName --source $snapshotId --disk-encryption-set $diskEncryptionSetId
Wpływ na wydajność — proces kopiowania w tle
Podczas tworzenia dysku zarządzanego z migawki rozpoczyna się proces kopiowania w tle. Dysk można dołączyć do maszyny wirtualnej podczas działania tego procesu, ale do czasu zakończenia kopiowania w tle wystąpi spadek wydajności (w przypadku dysków 4K dotyczy to odczytu, a w przypadku 512e — zarówno odczytu, jak i zapisu): większe opóźnienia, niższa liczba operacji we/wy na sekundę (IOPS) oraz mniejsza przepustowość. W przypadku dysków Ultra i dysków Premium SSD v2 użyj następującego polecenia, aby sprawdzić właściwość completionPercent. Kopiowanie w tle zostanie zakończone, gdy wartość osiągnie 100.
Ważne
Nie można używać poniższych sekcji do sprawdzania stanu procesu kopiowania w tle dla typów dysków innych niż Ultra Disk lub Premium SSD v2. Inne typy dysków zawsze będą zgłaszać 100%.
subscriptionId=yourSubscriptionID
resourceGroupName=yourResourceGroupName
diskName=yourDiskName
az account set --subscription $subscriptionId
az disk show -n $diskName -g $resourceGroupName --query [completionPercent] -o tsv
Czyszczenie zasobów
Uruchom następujące polecenie, aby usunąć grupę zasobów i wszystkie zawarte w niej zasoby.
az group delete --name myResourceGroupName
dokumentacja poleceń Azure CLI
Skrypty używają następujących poleceń Azure CLI do tworzenia dysków zarządzanych, monitorowania procesu kopiowania w tle i czyszczenia zasobów.
| Polecenie | Uwagi |
|---|---|
| az account set | Ustawia subskrypcję, w której jest tworzony dysk zarządzany. |
| az snapshot show | Pobiera identyfikator zasobu migawki źródłowej. |
| az disk-encryption-set show - wyświetla ustawienia szyfrowania dysku | Pobiera informacje o zestawie szyfrowania dysku docelowego dla dysku z kluczami zarządzanymi przez klienta. |
| az disk create | Tworzy dysk zarządzany na podstawie migawki źródłowej. |
| az disk show (polecenie wyświetlające informacje o dysku) | Pobiera procent ukończenia kopii w tle dla dysków Premium SSD v2 i Ultra Disk. |
| az group delete - usuwa grupę zasobów w Azure | Usuwa grupę zasobów i jej zasoby. |
Następne kroki
Tworzenie maszyny wirtualnej przez dołączenie dysku zarządzanego jako dysku systemu operacyjnego
Aby uzyskać więcej informacji na temat interfejsu wiersza polecenia platformy Azure, zobacz dokumentację interfejsu wiersza polecenia platformy Azure.
Więcej przykładów skryptów interfejsu wiersza polecenia maszyny wirtualnej i dysków zarządzanych można znaleźć w dokumentacji maszyny wirtualnej z systemem Linux platformy Azure.