Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: ✔️ macchine virtuali Windows ✔️ set di scalabilità flessibili
Questo articolo illustra come collegare dischi nuovi ed esistenti a una macchina virtuale Windows tramite PowerShell.
Esaminare prima di tutto i suggerimenti seguenti:
- La dimensione della macchina virtuale controlla il numero di dischi dati che è possibile collegare. Per altre informazioni, vedere Dimensioni delle macchine virtuali in Azure.
- Per usare unità SSD Premium, è necessario un tipo di macchina virtuale abilitato per l'archiviazione Premium, ad esempio la macchina virtuale serie DS o GS.
Questo articolo usa PowerShell all'interno di Azure Cloud Shell, che viene costantemente aggiornato alla versione più recente. Per aprire Cloud Shell, selezionare Prova nella parte superiore di qualsiasi blocco di codice.
Ridurre la latenza di collegamento del disco dati
Nelle aree selezionate la latenza di collegamento del disco viene ridotta, quindi si noterà un miglioramento fino a 15%. Questo miglioramento è utile se sono stati pianificati o non pianificati failover tra macchine virtuali, si ridimensiona il carico di lavoro o si esegue un carico di lavoro con stato a scalabilità elevata, come il servizio servizio Azure Kubernetes. Tuttavia, questo miglioramento è limitato al comando di collegamento esplicito del disco , Add-AzVMDataDisk. Non si nota alcun miglioramento delle prestazioni se si chiama un comando che potrebbe eseguire implicitamente un'operazione di associazione, ad esempio Update-AzVM. Non è necessario eseguire alcuna azione diversa da chiamare il comando di collegamento esplicito per visualizzare questo miglioramento.
La latenza inferiore è attualmente disponibile in ogni area pubblica, ad eccezione di:
- Canada centrale
- Stati Uniti centrali
- Stati Uniti orientali
- Stati Uniti orientali 2
- Stati Uniti centro-meridionali
- West US 2
- Germania settentrionale
- India occidentale
- Europa settentrionale
- Europa occidentale
Aggiungere un disco dati vuoto a una macchina virtuale
Questo esempio illustra come aggiungere un disco dati vuoto a una macchina virtuale esistente.
Creare e collegare un disco gestito
Impostare i valori per il gruppo di risorse, la macchina virtuale, la posizione, il tipo di archiviazione e il nome del disco dati. Il cmdlet New-AzDiskConfig crea una configurazione per un disco gestito 128-GiB vuoto e New-AzDisk crea il disco.
Get-AzVM ottiene quindi la configurazione della macchina virtuale, Add-AzVMDataDisk aggiunge il disco e Update-AzVM applica la configurazione aggiornata alla macchina virtuale.
$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
Creare e collegare un disco gestito in una zona di disponibilità
Impostare i valori per il gruppo di risorse, la macchina virtuale, la posizione, il tipo di archiviazione e il nome del disco dati. Per creare un disco gestito in una zona di disponibilità, usare New-AzDiskConfig con il -Zone parametro . L'esempio seguente crea un disco gestito da 128 GiB vuoto nella zona 1, lo aggiunge alla configurazione della macchina virtuale e applica la configurazione aggiornata alla macchina virtuale.
$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
Inizializzare il disco
Dopo aver aggiunto un disco vuoto, è necessario inizializzarlo. Per inizializzare il disco, accedere a una macchina virtuale e usare la gestione del disco. Se si abilita WinRM e un certificato nella macchina virtuale al momento della creazione, è possibile usare PowerShell remoto per inizializzare il disco.
È anche possibile usare il cmdlet Set-AzVMCustomScriptExtension per aggiungere un'estensione script personalizzata alla macchina virtuale. L'esempio seguente usa il gruppo di risorse e i nomi di vm della procedura di allegato, insieme ai valori per il percorso della macchina virtuale, il nome dell'estensione, il file di script di inizializzazione, il nome dell'account di archiviazione, la chiave dell'account di archiviazione e il nome del contenitore. Archiviare lo script nel contenitore di Archiviazione di Azure specificato prima di eseguire il comando :
$location = "location-name"
$scriptName = "script-name"
$fileName = "script-file-name"
Set-AzVMCustomScriptExtension -ResourceGroupName $rgName -Location $location -VMName $vmName -Name $scriptName -TypeHandlerVersion "1.4" -StorageAccountName "mystore1" -StorageAccountKey "primary-key" -FileName $fileName -ContainerName "scripts"
Il file di script può contenere il codice per inizializzare i dischi, ad esempio:
Nota
Lo script di esempio usa lo stile di partizione MBR. Se il disco è di due tebibyte (TiB) o superiore, è necessario usare il partizionamento GPT. Se è inferiore a due TiB, è possibile usare MBR o GPT.
$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++
}
Collegare un disco dati esistente a una macchina virtuale
Impostare i valori per il gruppo di risorse, la macchina virtuale e il nome del disco gestito esistente. Usare Get-AzDisk per ottenere il disco gestito e Get-AzVM ottenere la configurazione della macchina virtuale. Usare Add-AzVMDataDisk quindi per aggiungere il disco esistente alla configurazione della macchina virtuale e Update-AzVM per applicare la configurazione aggiornata alla macchina virtuale.
$rgName = "myResourceGroup"
$vmName = "myVM"
$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
Passaggi successivi
È anche possibile distribuire dischi gestiti usando modelli. Per altre informazioni, vedere Uso di dischi gestiti nei modelli di Azure Resource Manager o modello di avvio rapido per la distribuzione di più dischi dati.