Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Mappatura dei dispositivi a blocchi
Ogni istanza che avvii dispone di un volume dispositivo root associato, che è un volume Amazon EBS o un volume instance store. Puoi utilizzare una mappatura dei dispositivi a blocchi per specificare ulteriori volumi EBS o volumi instance store da collegare a un'istanza quando viene avviata. Puoi anche collegare volumi EBS aggiuntivi a un'istanza in esecuzione. Tuttavia, il solo modo di collegare volumi instance store a un'istanza è utilizzare la mappatura dei dispositivi a blocchi per collegarli ai volumi quando l'istanza viene avviata.
Indice
Concetti relativi alla mappatura dei dispositivi a blocchi
Un dispositivo a blocchi è un dispositivo di archiviazione che sposta i dati in sequenze di byte o bit (blocchi). Tali dispositivi supportano l'accesso casuale e generalmente utilizzano I/O con buffering. Tra gli esempi sono inclusi hard disk, unità CD-ROM e unità flash. Un dispositivo a blocchi può essere collegato fisicamente a un computer oppure è possibile accedervi in remoto come se fosse collegato fisicamente.
Amazon EC2 supporta due tipi di dispositivi a blocchi:
-
Volumi di instance store (dispositivi virtuali il cui hardware sottostante è fisicamente collegato al computer host per l'istanza)
-
Volumi EBS (dispositivi di archiviazione remoti)
Una mappatura dei dispositivi a blocchi definisce i dispositivi a blocchi (volumi instance store e volumi EBS) da collegare a un'istanza. Puoi specificare una mappatura dei dispositivi a blocchi come parte del processo di creazione di un'AMI in modo che la mappatura venga utilizzata da tutte le istanze avviate dall'AMI. In alternativa, puoi specificare una mappatura dei dispositivi a blocchi quando avvii un'istanza, in modo che la mappatura sostituisca quella specificata nell'AMI da cui hai avviato l'istanza. Tieni presente che i volumi instance store NVMe supportati da un tipo di istanza vengono enumerati e assegnati a un nome di dispositivo automaticamente all'avvio dell'istanza; includerli nella mappatura dei dispositivi a blocchi non ha nessuna conseguenza.
Indice
Voci della mappatura dei dispositivi a blocchi
Quando crei una mappatura dei dispositivi a blocchi, devi specificare le seguenti informazioni per ogni dispositivo a blocchi che devi collegare all'istanza:
-
Il nome del dispositivo utilizzato in Amazon EC2. Il driver dei dispositivi a blocchi dell'istanza assegna il nome del volume effettivo durante il montaggio del volume. Il nome assegnato può essere diverso dal nome che Amazon EC2 consiglia. Per ulteriori informazioni, consulta Nomi dei dispositivi sulle istanze Amazon EC2.
Per i volumi dell'Instance store, è inoltre possibile specificare le seguenti informazioni:
-
Il dispositivo virtuale:
ephemeral[0-23]
. Tieni presente che il numero e la dimensione dei volumi instance store per l'istanza variano a seconda del tipo di istanza stessa.
Per i volumi dell'Instance store di NVMe, si applicano anche le seguenti informazioni:
-
Questi volumi vengono enumerati e assegnati a un nome di dispositivo automaticamente all'avvio dell'istanza; includerli nella mappatura dei dispositivi a blocchi non ha nessuna conseguenza.
Per i volumi EBS, specificare anche le seguenti informazioni:
-
L'ID dello snapshot da utilizzare per creare il dispositivo a blocchi (snap-xxxxxxxx). Questo valore è opzionale se specifichi una dimensione per il volume. Non è possibile specificare l'ID di uno snapshot archiviato.
-
La dimensione del volume in GiB. La dimensione specificata deve essere maggiore o uguale a quella della snapshot specificata.
-
Determina se eliminare il volume al momento dell'interruzione dell'istanza (
true
ofalse
). Il valore predefinito ètrue
per il volume dispositivo root efalse
per i volumi collegati. Quando crei un'AMI, la relativa mappatura dei dispositivi a blocchi eredita questa impostazione dall'istanza. Quando avvii un'istanza, eredita questa impostazione dall'AMI. -
Il tipo di volume, che può essere
gp2
egp3
per SSD per scopo generico,io1
eio2
per SSD IOPS con provisioning,st1
per HDD ottimizzati per velocità effettiva,sc1
per HDD Cold ostandard
per Magnetici. -
Il numero di operazioni di input/output I/O al secondo (IOPS) supportato dal volume (Utilizzato solo con i volumi
io1
eio2
).
Precisazioni sui volumi instance store nelle mappature dei dispositivi a blocchi
Ci sono molte precisazioni da tenere in considerazione quando avvii le istanze con le AMIs che nelle mappature dei dispositivi a blocchi hanno dei volumi instance store.
-
Alcuni tipi di istanza includono più volumi instance store di altre, mentre alcune non ne contengono affatto. Se il tuo tipo di istanza supporta un volume instance store e la tua AMI dispone di mappature per due volumi instance store, l'istanza verrà avviata con un volume instance store.
-
I volumi instance store possono essere mappati solo al momento dell'avvio. Non puoi arrestare un'istanza senza volumi instance store (come
t2.micro
), modificare l'istanza in un tipo che supporta i volumi instance store e riavviarla con volumi instance store. Tuttavia, puoi creare un'AMI dall'istanza e avviarla su un tipo di istanza che supporta i volumi instance store, quindi mappare questi volumi all'istanza. -
Se avvii un'istanza con volumi instance store mappati, quindi la arresti e la modifichi in un tipo di istanza con meno volumi instance store e la riavvii, le mappature dei volumi instance store dell'avvio iniziale mostreranno ancora i metadati dell'istanza. Tuttavia, per l'istanza è disponibile solo il numero massimo di volumi instance store supportati per quel tipo di istanza.
Nota
Quando un'istanza viene arrestata, tutti i dati sui volumi instance store vengono persi.
-
A seconda della capacità dell'instance store al momento dell'avvio, le istanze M3 potrebbero ignorare le mappature dei dispositivi a blocchi dell'instance store dell'AMI, a meno che non vengano specificate all'avvio. Per essere certo che i volumi instance store siano disponibili all'avvio dell'istanza, anche se l'AMI che stai avviando include volumi instance store mappati nell'AMI, devi specificare le mappature dei dispositivi a blocchi dell'instance store.
Esempio di mappatura dei dispositivi a blocchi
L'illustrazione sottostante mostra un esempio di mappatura dei dispositivi a blocchi di un'istanza supportata da EBS. /dev/sdb
viene mappato a ephemeral0
, mentre un volume EBS viene mappato a /dev/sdh
e l'altro a /dev/sdj
. Nell'illustrazione è mostrato anche il volume EBS che rappresenta il volume dispositivo root, /dev/sda1
.
![Relazione tra istanza, volumi instance store e volumi EBS.](images/block_device_mapping_figure.png)
Tieni presente che in questo argomento l'esempio di mappatura dei dispositivi a blocchi viene utilizzando nei comandi e nelle API di esempio. Puoi trovare i comandi e le API di esempio che consentono di creare le mappatura dei dispositivi a blocchi in Specificare una mappatura dei dispositivi a blocchi di un'AMI e Aggiornamento della mappatura dei dispositivi a blocchi all'avvio di un'istanza.
Come i dispositivi vengono resi disponibili nel sistema operativo
Nomi di dispositivo come /dev/sdh
e xvdh
vengono utilizzati da Amazon EC2 per descrivere i dispositivi a blocchi. La mappatura dei dispositivi a blocchi è utilizzata da Amazon EC2 per specificare i dispositivi a blocchi da collegare a un'istanza EC2. Prima che si possa accedere al dispositivo di archiviazione, dopo che è stato allegato a un'istanza, un dispositivo a blocchi deve essere montato dal sistema operativo. Se viene distaccato da un'istanza, un dispositivo a blocchi viene smontato dal sistema operativo e non è più possibile accedere al dispositivo di archiviazione.
Istanze Linux: i nomi dei dispositivi specificati nella mappatura dei dispositivi a blocchi vengono mappati sui dispositivi a blocchi corrispondenti al primo avvio dell'istanza. Il tipo di istanza determina quali volumi instance store formattare e montare per impostazione predefinita. Puoi montare volumi instance store aggiuntivi all'avvio, a condizione che non venga superato il numero consentito di volumi instance store per il tipo di istanza che hai scelto. Per ulteriori informazioni, consulta Instance store Amazon EC2. Il driver dei dispositivi a blocchi dell'istanza determina quali dispositivi utilizzare quando i volumi vengono formattati e montati.
Istanze Windows: i nomi dei dispositivi specificati nella mappatura dei dispositivi a blocchi vengono mappati sui dispositivi a blocchi corrispondenti al primo avvio dell'istanza, quindi il servizio Ec2Config inizializza e monta le unità. Il volume dispositivo root viene montato come C:\
. I volumi instance store vengono montati come Z:\
, Y:\
e così via. Per montare un volume EBS, puoi utilizzare qualsiasi lettera di unità disponibile. Tuttavia, è possibile configurare il modo in cui le lettere di unità vengono assegnate ai volumi EBS; per ulteriori informazioni, consulta. Configura le impostazioni di avvio per le istanze Windows di Amazon EC2
Mappatura dei dispositivi a blocchi dell'AMI
Ogni AMI dispone di una mappatura dei dispositivi a blocchi che specifica i dispositivi a blocchi da collegare a un'istanza al suo avvio dall'AMI. Per aggiungere ulteriori dispositivi a blocchi a un'AMI devi creare una tua AMI.
Indice
Specificare una mappatura dei dispositivi a blocchi di un'AMI
Ci sono due modi per specificare i volumi oltre al volume root quando crei un'AMI. Se hai già collegato i volumi a un'istanza in esecuzione prima di creare un'AMI dall'istanza, la mappatura dei dispositivi a blocchi dell'AMI includerà gli stessi volumi. Per i volumi EBS, i dati esistenti vengono salvati in una nuova snapshot, che è specificata nella mappatura dei dispositivi a blocchi. Per i volumi instance store, i dati non vengono conservati.
Per un'AMI EBS-backed, puoi aggiungere i volumi EBS e i volumi instance store utilizzando la mappatura dei dispositivi a blocchi. Per un'AMI supportata da instance store, puoi aggiungere volumi instance store solo modificando le voci della mappatura dei dispositivi a blocchi nel file manifest di immagine al momento della registrazione dell'immagine.
Nota
Per le istanze M3, devo specificare i volumi instance store nella mappatura dei dispositivi a blocchi dell'istanza quando la avvii. Quando avvii un'istanza M3, i volumi instance store specificati nella mappatura dei dispositivi a blocchi dell'AMI potrebbero venire ignorati se non sono stati specificati come parte della mappatura.
Visualizzazione dei volumi EBS nella mappatura dei dispositivi a blocchi di un'AMI
Puoi enumerare facilmente i volumi EBS nella mappatura dei dispositivi a blocchi dell'AMI.
Mappatura dei dispositivi a blocchi delle istanze
Per impostazione predefinita, un'istanza avviata include eventuali dispositivi di archiviazione specificati nella mappatura dei dispositivi a blocchi di un'AMI da cui l'istanza è stata avviata. Puoi specificare le modifiche alle mappatura dei dispositivi a blocchi di un'istanza quando la avvii; tali aggiornamenti sostituiscono la mappatura dei dispositivi a blocchi dell'AMI o si uniscono a essa.
Limitazioni
-
Per il volume root, puoi solo modificare: le dimensioni, il tipo e il contrassegno È possibile modificare il Delete on Termination (Elimina al termine).
-
Quando modifichi un volume EBS non puoi ridurne le dimensioni, pertanto devi specificare una snapshot le cui dimensioni siano uguali o maggiori di quelle della snapshot specificata nella mappatura dei dispositivi a blocchi dell'AMI.
Indice
- Aggiornamento della mappatura dei dispositivi a blocchi all'avvio di un'istanza
- Aggiornamento della mappatura dei dispositivi a blocchi di un'istanza in esecuzione
- Visualizzazione dei volumi EBS nella mappatura dei dispositivi a blocchi di un'istanza
- Visualizzazione della mappatura dei dispositivi a blocchi di un'istanza per i volumi instance store
Aggiornamento della mappatura dei dispositivi a blocchi all'avvio di un'istanza
Puoi aggiungere volumi EBS e volumi instance store a un'istanza al momento del suo avvio. Tieni presente che l'aggiornamento della mappatura dei dispositivi a blocchi di un'istanza non comporta una modifica permanente della mappatura dell'AMI da cui l'istanza è stata avviata.
Aggiornamento della mappatura dei dispositivi a blocchi di un'istanza in esecuzione
È possibile utilizzare il modify-instance-attribute AWS CLI comando per aggiornare la mappatura dei dispositivi a blocchi di un'istanza in esecuzione. Non è necessario arrestare l'istanza prima di cambiare questo attributo.
aws ec2 modify-instance-attribute --instance-id i-
1a2b3c4d
--block-device-mappings file://mapping.json
Ad esempio, per conservare il volume root al momento dell'interruzione dell'istanza, specificare quanto segue in mapping.json
:
[ { "DeviceName": "/dev/sda1", "Ebs": { "DeleteOnTermination": false } } ]
In alternativa, è possibile utilizzare il -BlockDeviceMapping
parametro con il Edit-EC2InstanceAttributecomando (AWS Tools for Windows PowerShell).
Visualizzazione dei volumi EBS nella mappatura dei dispositivi a blocchi di un'istanza
Puoi enumerare facilmente i volumi EBS mappati a un'istanza.
Nota
Per le istanze avviate prima del rilascio dell'API 2009-10-31, non è AWS possibile visualizzare la mappatura dei dispositivi a blocchi. È necessario scollegare e ricollegare i volumi in modo da poter visualizzare la mappatura dei dispositivi a blocchi. AWS
Visualizzazione della mappatura dei dispositivi a blocchi di un'istanza per i volumi instance store
Il tipo di istanza determina il numero e il tipo di volumi di Instance Store disponibili per l'istanza. Se il numero di volumi instance store in una mappatura dei dispositivi a blocchi supera il numero disponibile di volumi instance store per un'istanza, i volumi vengono ignorati. Per visualizzare i volumi di Instance Store per la tua istanza, esegui il lsblk comando (istanze Linux) o apri Windows Disk Management (istanze Windows). Per sapere quanti volumi di Instance Store sono supportati da ciascun tipo di istanza, consulta le specifiche del tipo di istanza Amazon EC2.
Quando visualizzi la mappatura dei dispositivi a blocchi della tua istanza, puoi vedere solo i volumi EBS e non i volumi instance store. Il metodo utilizzato per visualizzare i volumi dell'archivio istanza per l'istanza dipende dal tipo di volume.
Volumi di archivio istanza NVMe
È possibile utilizzare il pacchetto della riga di comando NVMe, nvme-cli
[ec2-user ~]$
sudo nvme list
Di seguito è riportato un esempio di output per un'istanza. Il testo nella colonna Modello indica se il volume è un volume EBS o un volume dell'archivio istanza. In questo esempio, entrambi /dev/nvme1n1
e /dev/nvme2n1
sono volumi dell'archivio istanza.
Node SN Model Namespace ---------------- -------------------- ---------------------------------------- --------- /dev/nvme0n1 vol06afc3f8715b7a597 Amazon Elastic Block Store 1 /dev/nvme1n1 AWS2C1436F5159EB6614 Amazon EC2 NVMe Instance Storage 1 /dev/nvme2n1 AWSB1F4FF0C0A6C281EA Amazon EC2 NVMe Instance Storage 1 ...
Puoi utilizzare Disk Management o PowerShell elencare sia i volumi EBS che quelli di Instance Store NVMe. Per ulteriori informazioni, consulta Elencare i volumi NVMe.
Volumi di archivio istanza HDD o SSD
È possibile utilizzare i metadati dell'istanza per effettuare query sui volumi dell'archivio istanza HDD o SSD nella mappatura dei dispositivi a blocchi. I volumi dell'instance store NVMe non sono inclusi nella mappatura dei dispositivi a blocchi.
L'URI di base di tutte le richieste dei metadati dell'istanza è http://169.254.169.254/latest/
. Per ulteriori informazioni, consulta Utilizzo dei metadati delle istanze.
Innanzitutto connettiti all'istanza in esecuzione, quindi da essa utilizza questa query per ottenere la relativa mappatura dei dispositivi a blocchi.
La risposta include i nomi dei dispositivi a blocchi dell'istanza. Ad esempio, l'output di un'istanza m1.small
supportata da archivio istanza somiglia a quello seguente.
ami
ephemeral0
root
swap
Il dispositivo ami
è il dispositivo root come visto dall'istanza. I volumi instance store sono denominati ephemeral[0-23]
. Il dispositivo swap
è destinato al file di paging. Se hai mappato anche i volumi EBS, questi appariranno come ebs1
, ebs2
e così via.
Per ottenere i dettagli su un singolo dispositivo a blocchi nella mappatura dei dispositivi a blocchi, aggiungi il suo nome alla query precedente, come mostrato.
Innanzitutto connettiti all'istanza in esecuzione, quindi da essa utilizza questa query per ottenere la relativa mappatura dei dispositivi a blocchi.
PS C:\>
Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/block-device-mapping/
La risposta include i nomi dei dispositivi a blocchi dell'istanza. Ad esempio, l'output di un'istanza m1.small
supportata da archivio istanza somiglia a quello seguente.
ami
ephemeral0
root
swap
Il dispositivo ami
è il dispositivo root come visto dall'istanza. I volumi instance store sono denominati ephemeral[0-23]
. Il dispositivo swap
è destinato al file di paging. Se hai mappato anche i volumi EBS, questi appariranno come ebs1
, ebs2
e così via.
Per ottenere i dettagli su un singolo dispositivo a blocchi nella mappatura dei dispositivi a blocchi, aggiungi il suo nome alla query precedente, come mostrato.
PS C:\>
Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/block-device-mapping/ephemeral0