Nella sua forma più semplice, un AMI è una descrizione di una macchina virtuale: il tipo di virtualizzazione, l'architettura (32/64 bit), il kernel e il dispositivo root. Nelle parole di Amazon:
Un AMI è un modello che contiene una configurazione software (sistema operativo, application server e applicazioni) che è possibile eseguire sul comprovato ambiente di elaborazione di Amazon.
Le istanze EC2 sono macchine virtuali, in esecuzione sull'hardware di Amazon. Per avviare l'istanza, è necessaria una quantità minima di informazioni. Inoltre, diversi tipi di istanza supportano diverse configurazioni (ad esempio alcuni non supportano AMI a 32 bit).
Ogni AMI ha un identificatore (ad es. Ami-a1b2c3d4) e la configurazione di tale AMI non può essere modificata dopo la creazione. (Tuttavia, è possibile ignorare molte delle impostazioni al momento dell'avvio o, in alcuni casi, anche dopo l'avvio di un'istanza).
In termini di volume principale, le AMI contengono un riferimento a un volume esistente (ad esempio fanno riferimento a un'istantanea per istanze supportate da EBS o alle parti dell'immagine nel caso di un'istanza supportata da S3).
Le AMI contengono anche un certo grado di controllo degli errori - in genere un ID utente per indicare la proprietà, le chiavi di crittografia (che crittografano l'immagine) e una firma (per verificare l'integrità dell'immagine). Puoi avere una buona idea di cosa sia un AMI guardando il file manifest creato quando si crea un'istanza supportata da S3: è solo un file contenente dati e riferimenti ad altri elementi (memoria, kernel, ecc.).
Un'immagine fa riferimento alla sua come una mappatura del dispositivo a blocchi: specifica il dispositivo (ad esempio / dev / sda1) e la fonte dei dati (effimeri (e le parti S3 se pertinenti) o ebs-snapshot). Poiché le parti S3 sono firmate e le ebs-snapshot non possono essere modificate (solo cancellate), l'avvio di un'istanza da un AMI (senza sovrascrivere le sue impostazioni) dovrebbe sempre tradursi in un'istanza con la stessa configurazione software. (Notare che è ancora possibile che le istanze avviate dalla stessa AMI differiscano nei loro stati di funzionamento a causa dei dati dell'utente o delle diverse mappature dei dispositivi a blocchi (ad esempio le microistanze non hanno memoria effimera, mentre altri tipi di istanza lo fanno). Solo per essere chiari qui, i volumi collegati sono archiviati separatamente dall'AMI, ma sono referenziati dall'AMI in modo tale che i volumi non possano essere modificati.
Prima di avviare un'istanza da un'AMI, è possibile ignorare la mappatura del dispositivo a blocchi (ad esempio per aggiungere un volume EBS aggiuntivo o un altro volume effimero se il tipo di istanza lo supporta). Nel caso di volumi EBS, dopo l'avvio dell'istanza, è possibile scollegare il volume principale e collegare un volume EBS diverso.
Quindi, per rispondere brevemente alle tue domande: è un collegamento all'istanza o è memorizzato e mai modificato. È memorizzato e mai modificato.
Inoltre, un'immagine include l'archiviazione locale e tutti i pacchetti ecc. Installati su quell'istanza o è semplicemente una copia della configurazione di un'istanza particolare. L'immagine include l'archiviazione locale e tutti i pacchetti ecc. Installati su tale istanza. (In genere, questo è solo il volume principale, ma è possibile configurare un AMI per avviare un'istanza con più volumi popolati).