Amazon Web Services: domande per esperti

Da qualche settimana stiamo valutando gli aspetti economici, tecnici e di business collegato con lo spostamento dei sistemi e delle nostre applicazioni che attualmente sono allocate in data center verso Amazon Web Services.

Abbiamo aperto un account su AWS e le prime risposte sono sicuramente positive.

Rimangono aperte alcune questioni tecniche che i miei colleghi mi hanno inviato e che io riporto qui, nella “speranza” che qualche esperto  :grin: possa darci una riposta.

1) E’ possibile fare un salvataggio di tutta la mia macchina virtuale in modo che, nel caso in cui io non riesca più a effettuare il boot della mia Virtual Machine, perchè  – ad esempio –  in un momento di pazzia mi sono cancellato un file di boot del sistema operativo,  posso rapidamente ripartire dal salvataggio precedente ( non devo quindi fare niente di più, se non riprendere il salvataggio della VM per rendere nuovamente disponibile la mia applicazione )

2) E’ possibile fare il boot di una immagine ISO ? Esistono molte appliance virtuali già pronte che possono essere bootate da ISO e quindi sarebbe molto comodo poterle utilizzare.

4 pensieri su “Amazon Web Services: domande per esperti

  1. alla domanda 1 la risposta e’ “piu o meno si'”, mi spiego meglio:

    e’ possibile creare una nuova AMI da una istanza running seguendo il processo di “bundling” (cerca “Bundling an AMI” nel developer guide di EC2), in sostanza usando il comando ec2-bundle-vol (o ec2-bundle-image) viene creato un (set di) file contenente un’immagine del server ed un file xml di descrizione dell’immagine, poi questi file sono salvati in S3 usando il comando ec2-upload-bundle ed infine il bundle viene trasformato in una AMI con il comando ec2-register. La AMI cosi creata e’ di default privata ovvero puo essere fatta partire solo dall’account AWS che l’ha creata (ma poi se necessario puo essere condivisa con altri utenti specifici o anche resa pubblica). Il processo non e’ immediato (ci si mette qualche minuto) ma e’ ragionevole farlo dopo ogni cambiamento di configurazione del server.

    All’inizio dicevo “piu o meno” perche il processo di bundling NON comprendo lo storage effimero (ovvero, su linux, la parte di disco montata su /mnt) dell’istanza.

    C’e’ da ricordare anche come alcuni partano da una AMI standard definendo un processo di setup automatizzato (vedi ad esempio “EC2 on Rails”) oppure altri ancora usino sistemi intermedi preparando una AMI dedicata, ma che viene personalizzata ulteriormente al lancio (in maniera automatizzata, basta avere uno script che parte allo startup e che scarica la configurazione corrente)

    Per la domanda 2 non credo che sia possibile direttamente, ma forse qualcosa si puo fare, seguendo (almeno in parte) il processo descritto nel capitolo “Creating an AMI through a loopback file” della EC2 developer guide.

  2. Ciao Claudio,
    provo a rispondere ai tuoi dubbi 🙂

    1) le macchine virtuali vengono costruite partendo da delle immagini disco (AMI) che non possono essere modificate, tutte le modifiche che vengono fatte al filesystem durante la vita di un’istanza EC2 vengono perse al reboot della stessa. Quindi in nessun modo puoi corrompere l’immagine che hai usato per lanciare l’istanza.
    Per quanto riguarda invece i volumi persistenti (EBS), per farne il backup è sufficiente lanciare un comando per creare uno snapshot o farlo dalla console AWS.

    2) non è possibile fare il boot direttamente da un’immagine ISO, puoi fare il boot delle istanze EC2 solo da immagini AMI. Esistono comunque delle procedure non molto complesse per creare immagini AMI customizzate ed inoltre puoi trovare fra le AMI a disposizione su amazon moltissimi appliance, inoltre esistono servizi come http://elasticserver.com/ che mettono a disposizione tool web per creare AMI personalizzate con una miriade di software già installati e configurati.

    un po’ di link per approfondire:
    http://docs.amazonwebservices.com/AWSEC2/2009-03-01/DeveloperGuide/index.html?ComponentsOfEC2.html
    http://docs.amazonwebservices.com/AWSEC2/2009-03-01/DeveloperGuide/index.html?ami-via-loopback.html
    http://docs.amazonwebservices.com/AWSEC2/2009-03-01/DeveloperGuide/index.html?ebs-creating.html

  3. Ciao a tutti,
    quindi, se non ho capito male, se io utilizzo EC2 per far girare una macchina windows 2003 Terminal Server e faccio il reboot del server senza aver prima rifatto un Bundle perdo tutti i profili locali degli utenti che si loggati al terminal server ?
    Se così fosse dove dovrei ‘storare’ i profili e tutto ciò che cambia, ma non posso perdere ad ogni reboot, del mio server ?

    Grazie

  4. @paolo non ho esperienza diretta di Windows (su EC2) ma credo che una buona strategia sia (comunque) quella di utilizzare dei volumi EBS (che sono persistenti) per tutti i dati utente (e.g. i profili)

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...