2013-07-09 11 views
7

Abbiamo creato un sito Web utilizzando AWS EC2 e il ridimensionamento automatico in un tipico stack LAMP (ubuntu).Come conservare i registri Apache in EC2 quando si utilizza il ridimensionamento automatico AWS

Il ridimensionamento ecc funziona bene, tuttavia, poiché le istanze sono "temporanee", i nostri registri Apache non vengono conservati (poiché non conserviamo i volumi o le istanze) dopo i picchi di carico.

Esiste un modo "best practice/più affidabile" per conservare i log di apache per queste istanze?

Un'idea era copiare i file di registro in S3, durante lo spegnimento, scrivendo uno script bash da eseguire utilizzando la funzionalità /etc/rc0.d (eseguendo uno script all'arresto).

+0

Cosa hai finito per fare qui? Sto guardando lo stesso approccio, ma sto scoprendo che non ho tempo durante l'arresto per spingere a s3. – digidigo

+0

Siamo andati con l'approccio che ho suggerito, che può essere inaffidabile, vedere il collegamento sottostante (anche se funziona fino ad ora). La soluzione fornita potrebbe essere migliore. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html QUOTE: "Se si esegue uno script alla chiusura dell'istanza, l'istanza potrebbe terminare in modo anomalo, perché non abbiamo modo di garantire gli script di arresto vengono eseguiti. Amazon EC2 tenta di chiudere un'istanza in modo pulito e di eseguire qualsiasi script di arresto del sistema, tuttavia alcuni eventi (come l'errore hardware) potrebbero impedire l'esecuzione degli script di arresto del sistema. " – BoomShaka

+0

Un'altra potenziale buona lettura: https://forums.aws.amazon.com/message.jspa?messageID=183672# – BoomShaka

risposta

8

La "migliore pratica" sarebbe quella di aggregare tutti i registri su un server che consente di archiviarli e cercarli. È possibile eseguire il backup dei registri meno recenti in S3 e, infine, in Glacier.

Per rendere tutto questo funzionante, è necessario impostare apache per scrivere registri orari o minuscoli e scrivere un cronjob per rsync ad un posto centrale o caricarli su S3.

Partenza http://logstash.net/ per un'aggregazione & soluzione di ricerca open-source è possibile eseguire sul proprio istanza e http://loggly.com/ per una soluzione non-free completamente hosted.

EDIT: Il mio primo pensiero è stato "non farlo all'arresto". Dovrai sincronizzare i tuoi file di registro il più regolarmente possibile e di conseguenza (se esegui registri minuziosi, ad esempio) ottieni aggregazione/backup e ricerca "quasi in tempo reale".

Problemi correlati