Informazioni sui dischi e sui dischi rigidi virtuali per le VM Linux di Azure

Analogamente a qualsiasi altro computer, le macchine virtuali in Azure utilizzano i dischi come posizioni per archiviare un sistema operativo, le applicazioni e i dati. Tutte le macchine virtuali di Azure dispongono di almeno due dischi: un disco del sistema operativo Linux e un disco temporaneo. Il disco del sistema operativo viene creato da un'immagine e sia il disco del sistema operativo sia l'immagine sono effettivamente dischi rigidi virtuali archiviati in un account di archiviazione di Azure. Anche le macchine virtuali possono disporre di uno o più dischi dati archiviati in dischi rigidi virtuali.

Questo articolo illustra i diversi usi dei dischi e descrive i diversi tipi di dischi che è possibile creare e usare. Questo articolo è disponibile anche per le macchine virtuali Windows.

Nota

Azure offre due modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica. In questo articolo viene illustrato l'utilizzo di entrambi i modelli, ma Microsoft indica che le distribuzioni più nuove utilizzano il modello di gestione delle risorse.

Dischi usati dalle VM

Esaminiamo come i dischi vengono usati dalle VM.

Disco del sistema operativo

Tutte le macchine virtuali dispongono di un disco del sistema operativo collegato. Per impostazione predefinita, è registrato come unità SATA con etichetta /dev/sda. Questo disco ha una capacità massima di 2048 gigabyte (GB).

Disco temporaneo

Ogni VM contiene un disco temporaneo. Il disco temporaneo offre archiviazione a breve termine per applicazioni e processi ed è destinato solo all'archiviazione di dati come file di paging o di scambio. I dati presenti nel disco temporaneo potrebbero andare persi durante un evento di manutenzione o la ridistribuzione di una VM. Durante un riavvio standard della VM, i dati nell'unità temporanea vengono mantenuti.

Nelle macchine virtuali Linux il disco è in genere /dev/sdb e viene formattato e montato in /mnt dall'agente Linux di Azure. Le dimensioni del disco temporaneo variano in base alle dimensioni della macchina virtuale. Per altre informazioni, vedere Dimensioni per le macchine virtuali Linux.

Per altre informazioni sull'uso del disco temporaneo in Azure, vedere l'articolo relativo alle unità temporanee nelle macchine virtuali di Microsoft Azure

Disco dati

Un disco dati è un disco rigido virtuale collegato a una macchina virtuale per archiviare i dati delle applicazioni o altri dati che è necessario conservare. I dischi dati vengono registrati come unità SCSI ed etichettati con una lettera di propria scelta. Ogni disco dati ha una capacità massima di 4095 GB. Le dimensioni della macchina virtuale determinano il numero di dischi dati è possibile collegare e il tipo di archiviazione che è possibile utilizzare per ospitare i dischi.

Nota

Per ulteriori dettagli sulle capacità delle macchine virtuali, vedere Dimensioni per le macchine virtuali Linux.

Quando viene creata una macchina virtuale da un'immagine, Azure crea un disco del sistema operativo. Se si utilizza un'immagine che include dischi dati, anche Azure crea dischi dati quando viene creata la macchina virtuale. In caso contrario, aggiungere dischi dati dopo aver creato la macchina virtuale.

È possibile aggiungere dischi dati a una macchina virtuale in qualsiasi momento, collegando il disco alla macchina virtuale. È possibile usare un disco rigido virtuale caricato o copiato nell'account di archiviazione o uno creato da Azure. Il collegamento di un disco dati associa il file del disco rigido virtuale alla macchina virtuale, inserendo un "lease" nel disco rigido virtuale in modo che non possa essere eliminato dalla memoria se ancora collegato.

Informazioni sui dischi rigidi virtuali

I dischi rigidi virtuali utilizzati in Azure sono file con estensione .vhd archiviati come BLOB di pagine in un account di archiviazione Standard o Premium in Azure. Per ulteriori dettagli sui BLOB di pagine, vedere Informazioni sui BLOB in blocchi e sui BLOB di pagine. Per informazioni su Archiviazione Premium, vedere l'articolo relativo alle prestazioni elevate di Archiviazione Premium e macchine virtuali di Azure.

Azure supporta il formato di disco fisso VHD. In caso di formato fisso, il disco logico viene disposto in modo lineare all'interno del file, in modo che l'offset del disco X venga archiviato in corrispondenza dell'offset del BLOB X. In un piè di pagina alla fine del BLOB vengono descritte le proprietà del disco rigido virtuale. Spesso, con il formato fisso si verifica uno spreco di spazio poiché nella maggior parte dei dischi sono presenti intervalli inutilizzati di grandi dimensioni. Tuttavia, in Azure i file con estensione vhd vengono archiviati in un formato di tipo sparse, pertanto si ottengono contemporaneamente i vantaggi sia dei dischi fissi sia di quelli dinamici. Per ulteriori dettagli, vedere Introduzione ai dischi rigidi virtuali.

Tutti i file con estensione .vhd in Azure che si desidera utilizzare come origine per creare dischi o immagini sono di sola lettura. Quando viene creato un disco o un'immagine, Azure crea copie dei file con estensione .vhd. Queste copie possono essere lette oppure lette e scritte, a seconda di come viene utilizzato il disco rigido virtuale.

Quando viene creata una macchina virtuale da un'immagine, Azure crea un disco per la macchina virtuale che è una copia del file con estensione .vhd di origine. Per impedire eliminazioni accidentali, Azure inserisce un lease su qualsiasi file con estensione .vhd di origine utilizzato per creare un'immagine, un disco del sistema operativo o un disco dati.

Prima di poter eliminare un file con estensione .vhd di origine, sarà necessario rimuovere il lease eliminando il disco o l'immagine. Per eliminare un file con estensione .vhd utilizzato da una macchina virtuale come disco del sistema operativo, è possibile eliminare la macchina virtuale, il disco del sistema operativo e il file con estensione .vhd di origine in una sola volta eliminando la macchina virtuale e tutti i dischi associati. Tuttavia, l'eliminazione di un file con estensione vhd che rappresenta l'origine di un disco dati richiede l'esecuzione di diversi passaggi in un determinato ordine: scollegare innanzitutto il disco dalla macchina virtuale, quindi eliminare il disco e infine eliminare il file con estensione vhd.

Avviso

Se si elimina un file con estensione .vdh di origine dalla memoria o l'account di archiviazione, Microsoft non può recuperare tali dati.

Tipi di dischi

I dischi di Azure sono stati progettati per il 99,999% di disponibilità. I dischi di Azure hanno offerto in modo costante una durabilità di livello aziendale, con una percentuale di frequenza di errori annualizzata pari a ZERO, ovvero la migliore del settore.

Durante la creazione di dischi è possibile scegliere tra due livelli di prestazioni per l'archiviazione: Archiviazione Standard e Archiviazione Premium. I dischi possono essere di due tipi, gestiti e non gestiti, e possono risiedere in entrambi i livelli di prestazioni.

Archiviazione standard

Archiviazione Standard è supportata da unità disco rigido e offre un'archiviazione conveniente con buone prestazioni. Per Archiviazione Standard è possibile scegliere tra archiviazione replicata in locale in un data center o con ridondanza geografica con i data center primario e secondario. Per altre informazioni sulla replica dell'archiviazione, vedere Replica di Archiviazione di Azure.

Per altre informazioni sull'uso di Archiviazione Standard con dischi di macchina virtuale, vedere l'articolo relativo ad Archiviazione Standard e dischi.

Archiviazione Premium

Archiviazione Premium è supportata da unità SSD e offre prestazioni elevate e supporto per dischi a bassa latenza per le macchine virtuali che eseguono carichi di lavoro con elevato numero di operazioni di I/O. È possibile usare Archiviazione Premium con macchine virtuali di Azure serie DS, DSv2, GS, Ls o FS. Per altre informazioni, vedere Archiviazione Premium.

Dischi non gestiti

I dischi non gestiti sono quelli di tipo tradizionale usati dalle macchine virtuali. Con tali dischi è possibile creare un account di archiviazione personale e specificarlo durante la creazione del disco. Assicurarsi di non inserire troppi dischi nello stesso account di archiviazione, per non superare gli obiettivi di scalabilità dell'account di archiviazione, ad esempio 20.000 IOPS, limitando di conseguenza le macchine virtuali. Con i dischi non gestiti è necessario ottimizzare l'uso di uno o più account di archiviazione per ottenere migliori prestazioni dalle macchine virtuali.

Dischi gestiti

Il servizio Managed Disks gestisce in background le operazioni di creazione e gestione dell'account di archiviazione ed elimina la necessità di preoccuparsi dei limiti di scalabilità dell'account di archiviazione. È sufficiente specificare le dimensioni del disco e il livello di prestazioni, Standard o Premium, e Azure si occuperà della creazione e della gestione del disco. Anche se si aggiungono dischi o si ridimensiona la macchina virtuale, non è necessario preoccuparsi dello spazio di archiviazione usato.

È anche possibile gestire le immagini personalizzate in un unico account di archiviazione per ogni area di Azure e usarle per creare centinaia di macchine virtuali nella stessa sottoscrizione. Per altre informazioni sul servizio Managed Disks, vedere Azure Managed Disks Overview (Panoramica di Azure Managed Disks).

È consigliabile usare Azure Managed Disks per le nuove macchine virtuali e convertire i dischi non gestiti esistenti in dischi gestiti, per sfruttare le numerose funzionalità disponibili in Managed Disks.

Confronto dei dischi

La tabella seguente permette di scegliere mettendo a confronto i livelli Premium e Standard per i dischi gestiti e quelli non gestiti.

Disco Premium di Azure Disco Standard di Azure
Tipo di disco Unità a stato solido (SSD) Unità disco rigido (HDD)
Panoramica Supporto per dischi SSD a prestazioni elevate e bassa latenza per le macchine virtuali che eseguono carichi di lavoro con elevato numero di operazioni di I/O o ambienti di produzione host cruciali Supporto per dischi HDD convenienti per scenari di macchine virtuali di sviluppo e test
Scenario Carichi di lavoro di produzione su cui influiscono le prestazioni Sviluppo e test, non critico,
ad accesso non frequente
Dimensione disco P4: 32 GB (solo Managed Disks)
P6: 64 GB (solo Managed Disks)
P10: 128 GB
P20: 512 GB
P30: 1024 GB
P40: 2048 GB
P50: 4095 GB
Dischi non gestiti: tra 1 GB e 4 TB (4095 GB)

Dischi gestiti:
S4: 32 GB
S6: 64 GB
S10: 128 GB
S20: 512 GB
S30: 1024 GB
S40: 2048 GB
S50: 4095 GB
Velocità effettiva massima per disco 250 MB/s 60 MB/s
Numero massimo di operazioni di I/O al secondo per disco 7500 IOPS 500 IOPS

Risoluzione dei problemi

Quando si aggiungono dischi dati a una VM Linux, potrebbero verificarsi errori in caso di disco inesistente nel LUN 0. Se si aggiunge un disco manualmente usando il comando azure vm disk attach-new e si specifica un LUN (--lun) anziché consentire alla piattaforma Azure di determinare il LUN appropriato, fare attenzione che nel LUN 0 sia/sarà già presente un disco.

L'esempio seguente mostra un frammento di codice dell'output di lsscsi:

[5:0:0:0]    disk    Msft     Virtual Disk     1.0   /dev/sdc 
[5:0:0:1]    disk    Msft     Virtual Disk     1.0   /dev/sdd 

I due dischi dati sono disponibili nel LUN 0 e nel LUN 1 (la prima colonna dell'output lsscsi indica [host:channel:target:lun]). Entrambi i dischi devono essere accessibili dalla VM. Se è stata specificata manualmente l'aggiunta del primo e del secondo disco al LUN 1 e al LUN 2 rispettivamente, è possibile che i dischi non siano visualizzati correttamente all'interno della VM.

Nota

In questi esempi il valore host di Azure è 5, ma può variare a seconda del tipo di archiviazione selezionato.

Questo comportamento del disco non è un problema di Azure, ma dipende dal modo in cui il kernel Linux segue le specifiche SCSI. Quando il kernel Linux analizza il bus SCSI per individuare i dispositivi collegati, affinché il sistema continui ad analizzare la presenza di altri dispositivi è necessario che ne rilevi uno nel LUN 0. Di conseguenza:

  • Dopo aver aggiunto un disco dati, esaminare l'output di lsscsi per verificare la presenza di un disco nel LUN 0.
  • Se il disco non viene visualizzato correttamente nella VM, verificare che sia presente un disco nel LUN 0.

Passaggi successivi