Collegare automaticamente il volume EBS a una nuova istanza Spot?


14

Sto sperimentando istanze spot EC2 e ho bisogno di conservare alcuni dati tra le terminazioni. Ora, come ho capito, quando il prezzo attuale supera il mio massimo. offerta, verrà automaticamente chiuso. Presumo che tutti gli script di init che ho saranno eseguiti all'arresto in modo da poter trasferire i dati su EBS prima di smontarli.

La mia domanda è: come posso montare automaticamente lo stesso volume EBS sulla nuova istanza spot una volta che il prezzo scende, poiché non avrà nessuno dei miei script init che avrei caricato sul volume principale la prima volta?

Devo creare un AMI personalizzato o esiste un altro modo per raggiungere questo obiettivo?

Risposte:


11

Se desideri semplicemente che l'istanza inizi con un punto iniziale fisso ogni volta che viene eseguita, puoi:

  1. Crea il tuo AMI ed eseguilo come istanza ogni volta, oppure

  2. Specificare uno script di dati utente che installa e configura il software in base alle proprie specifiche ogni volta che viene avviata una nuova istanza da un'AMI di base standard.

Se è necessario mantenere lo stato tra le esecuzioni dell'istanza, è necessario salvare i dati da qualche parte al di fuori dell'istanza / AMI. Per esempio:

  1. I dati potrebbero essere aggiornati su S3, SimpleDB, DynamoDB, RDS, ecc.

  2. È possibile designare un volume EBS permanente che l'istanza si collega dinamicamente e monta all'avvio. Questo potrebbe essere fatto con uno script di dati utente.


Specificare uno script di dati utente che installa sembra interessante; Come è possibile farlo quando una richiesta spot avvia automaticamente una nuova istanza? Ho già un volume EBS permanente che memorizza i dati e probabilmente continuerò a usarlo
Jeff,

1
Quando si crea la richiesta spot, si specificano i dati utente che devono essere passati a ogni nuova istanza spot.
Eric Hammond,

Ah non me ne sono reso conto con cloud-init mettendo #! prima in user-data eseguito uno script. Grazie
Jeff,

3
@Jeff: Sì, l'ho inventato e AMI popolari l'hanno adottato :-) alestic.com/2009/06/ec2-user-data-scripts
Eric Hammond

Lungo questa linea, è possibile che un'istanza spot monti un determinato volume EBS come disco principale all'avvio?
Derek Morrison,

5

Scopri il progetto EC2-spotter su GitHub. È stato creato per risolvere il problema che descrivi.

I problemi (dal n. 1 al n. 4) descritti nella risposta di @ mcenzm sono reali e sono gestiti correttamente in ec2-spotter.


Non so chi ha effettuato il downgrade di questo, ma significa che posso smettere di perdere tempo cercando di codificarlo! Lo adoro.
Jeremy,

3

Ci sto provando da un po 'di tempo, e ci sono ancora una serie di problemi con le istanze spot EC2 e l'archiviazione allegata.

  1. Il volume che si desidera collegare potrebbe non trovarsi nella stessa zona dell'istanza? Le zone non possono essere specificate al momento del lancio.
  2. Il collegamento interno con lo script init funzionerà, ma è un po 'asincrono, quindi dovrai provarlo o sleep 10dirlo.
  3. Non riesco a capire perché la console AWS mostri una "partizione" come dispositivo di blocco principale. Forse per negarci le immagini di Windows pirata su un'altra partizione? (sda1 invece di sda). Buona fortuna a trovare la tabella delle partizioni.

    inserisci qui la descrizione dell'immagine

  4. Attualmente difficile da collegare utilizzando l'interfaccia della riga di comando da un punto di controllo esterno, il che rende difficile utilizzare le istantanee per il controllo delle versioni.

  5. Quindi, in generale, eseguo il backup ... tar.bz2 in un'altra casella e quindi posso popolare "area di lavoro" all'avvio. Questo è utile solo per piccoli volumi di dati, quindi basare una nuova ami con entrambi i volumi è una buona idea. Le istanze Spot sono comunque ottime per il lavoro "unità di lavoro" o "riavviabile", quindi il concetto di recuperare lavoro da un server è ben definito. Dato che stai aspettando 9 minuti all'estremo per un lancio, potresti non preoccuparti di formattare il tuo disco (il più piccolo possibile).

    1. EBS è ancora piuttosto traballante e devi pagare un extra per "ottimizzato". È ancora più veloce del tentativo di caricare il lavoro completato negli anni '90 o giù di lì quando l'istanza è "prezzata".

    2. Sospetto che tutto cambierà con qualsiasi offerta di "file elastico".


1
1. Si specifica la sottorete che è legata a una zona AZ. 2. Aspettare che appaia / dev / xvdx è facile. 3. In che modo è rilevante?
Morgan Christiansson,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.