Připojení datového disku k virtuálnímu počítači s Windows pomocí PowershelluAttach a data disk to a Windows VM with PowerShell

Tento článek ukazuje, jak nové i stávající disky připojit k virtuálnímu počítači Windows pomocí prostředí PowerShell.This article shows you how to attach both new and existing disks to a Windows virtual machine by using PowerShell.

Poprvé přečtěte si tyto typy:First, review these tips:

Poznámka

Použití nového modulu Azure PowerShell Az byla aktualizována v tomto článku.This article has been updated to use the new Azure PowerShell Az module. Stále můžete použít modul AzureRM, který budou dál dostávat opravy chyb, dokud alespoň 2020 dne.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Další informace o novém modulu Az a kompatibility AzureRM najdete v tématu představení nového modulu Azure PowerShell Az.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Pokyny k instalaci modulu Az, naleznete v tématu instalace Azure Powershellu.For Az module installation instructions, see Install Azure PowerShell.

Použití služby Azure Cloud ShellUse Azure Cloud Shell

Azure je hostitelem Azure Cloud Shell, můžete přes prohlížeč prostředí interaktivní prostředí.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell vám umožní používat buď bash nebo PowerShell pro práci se službami Azure.Cloud Shell lets you use either bash or PowerShell to work with Azure services. Předinstalované příkazy službě Cloud Shell můžete použít ke spuštění kódu v tomto článku nemusíte nic instalovat na vaše místní prostředí.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Chcete spustit Azure Cloud Shell:To launch Azure Cloud Shell:

MožnostOption Příklad nebo propojeníExample/Link
Zvolte Vyzkoušet v pravém horním rohu bloku kódu.Select Try It in the upper-right corner of a code block. Výběr vyzkoušet nebude automaticky zkopírujte kód do služby Cloud Shell.Selecting Try It doesn't automatically copy the code to Cloud Shell. Příklad vyzkoušet pro Azure Cloud Shell.
Přejděte na https://shell.azure.com nebo vyberte spustit Cloud Shell tlačítko otevřete Cloud Shell v prohlížeči.Go to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. <a href="https://shell.azure.com" title="Spustit Azure Cloud Shell
Vyberte Cloud Shell tlačítko na panelu nabídek v pravé horní části webu Azure portal.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Tlačítko Cloud Shell na webu Azure Portal

Chcete-li spustit kód v tomto článku ve službě Azure Cloud Shell:To run the code in this article in Azure Cloud Shell:

  1. Spusťte Cloud Shell.Launch Cloud Shell.
  2. Vyberte kopírování tlačítko na bloku kódu zkopírovat kód.Select the Copy button on a code block to copy the code.
  3. Vložte kód do relace Cloud Shellu s Ctrl+Shift+V ve Windows a Linuxu, nebo Cmd + Shift+V v systému macOS.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.
  4. Stisknutím klávesy Enter spuštění kódu.Press Enter to run the code.

Přidat prázdný datový disk k virtuálnímu počítačiAdd an empty data disk to a virtual machine

Tento příklad ukazuje, jak přidat prázdný datový disk do existujícího virtuálního počítače.This example shows how to add an empty data disk to an existing virtual machine.

Použití spravovaných diskůUsing managed disks

$rgName = 'myResourceGroup'
$vmName = 'myVM'
$location = 'East US' 
$storageType = 'Premium_LRS'
$dataDiskName = $vmName + '_datadisk1'

$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Empty -DiskSizeGB 128
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName $rgName

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName 
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1

Update-AzVM -VM $vm -ResourceGroupName $rgName

Použití spravovaných disků v zóně dostupnostiUsing managed disks in an Availability Zone

Chcete-li vytvořit disk v zóně dostupnosti, použijte New-AzDiskConfig s -Zone parametr.To create a disk in an Availability Zone, use New-AzDiskConfig with the -Zone parameter. Následující příklad vytvoří disk v zóně 1.The following example creates a disk in zone 1.

$rgName = 'myResourceGroup'
$vmName = 'myVM'
$location = 'East US 2'
$storageType = 'Premium_LRS'
$dataDiskName = $vmName + '_datadisk1'

$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Empty -DiskSizeGB 128 -Zone 1
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName $rgName

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName 
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1

Update-AzVM -VM $vm -ResourceGroupName $rgName

Inicializujte diskInitialize the disk

Po přidání prázdný disk bude potřeba inicializovat.After you add an empty disk, you'll need to initialize it. Chcete-li inicializovat disk, můžete přihlásit k virtuálnímu počítači a použijte program Správa disků.To initialize the disk, you can sign in to a VM and use disk management. Pokud jste povolili WinRM a certifikát na virtuálním počítači při jeho vytváření, můžete použít vzdálený PowerShell inicializovat disk.If you enabled WinRM and a certificate on the VM when you created it, you can use remote PowerShell to initialize the disk. Můžete také použít rozšíření vlastních skriptů:You can also use a custom script extension:

    $location = "location-name"
    $scriptName = "script-name"
    $fileName = "script-file-name"
    Set-AzVMCustomScriptExtension -ResourceGroupName $rgName -Location $locName -VMName $vmName -Name $scriptName -TypeHandlerVersion "1.4" -StorageAccountName "mystore1" -StorageAccountKey "primary-key" -FileName $fileName -ContainerName "scripts"

Soubor skriptu může obsahovat kód pro inicializaci disky, například:The script file can contain code to initialize the disks, for example:

    $disks = Get-Disk | Where partitionstyle -eq 'raw' | sort number

    $letters = 70..89 | ForEach-Object { [char]$_ }
    $count = 0
    $labels = "data1","data2"

    foreach ($disk in $disks) {
        $driveLetter = $letters[$count].ToString()
        $disk | 
        Initialize-Disk -PartitionStyle MBR -PassThru |
        New-Partition -UseMaximumSize -DriveLetter $driveLetter |
        Format-Volume -FileSystem NTFS -NewFileSystemLabel $labels[$count] -Confirm:$false -Force
    $count++
    }

Připojit stávající datový disk k virtuálnímu počítačiAttach an existing data disk to a VM

Existujícího spravovaného disku k virtuálnímu počítači můžete připojit jako datový disk.You can attach an existing managed disk to a VM as a data disk.

$rgName = "myResourceGroup"
$vmName = "myVM"
$location = "East US" 
$dataDiskName = "myDisk"
$disk = Get-AzDisk -ResourceGroupName $rgName -DiskName $dataDiskName 

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName 

$vm = Add-AzVMDataDisk -CreateOption Attach -Lun 0 -VM $vm -ManagedDiskId $disk.Id

Update-AzVM -VM $vm -ResourceGroupName $rgName

Další postupNext steps

Vytvoření snímku.Create a snapshot.