2011-02-07 7 views
21

Sto pianificando di installare Hudson su Amazon EC2 utilizzando l'immagine di Ubuntu. Il codice che sto per testare non ha un grande sovraccarico di memoria - eseguirò principalmente test di unità Python.Running Hudson su EC2

Quale istanza EC2 dovrei usare? La micro istanza sarebbe sufficiente (avere abbastanza memoria) o dovrei usare un'istanza più grande?

risposta

23

Jenkins funzionerà felicemente su un micro, ma ma ci sono due problemi: 1) non ci sarà molta memoria per costruire e testare, circa 150 MB, ma il problema più grande è 2) se l'utilizzo della CPU picchi per più di qualche secondo Amazon semplicemente schiaccerà la tua istanza con la limitazione che taglia 97% o più della CPU disponibile. http://gregsramblings.com/2011/02/07/amazon-ec2-micro-instance-cpu-steal/

La limitazione era completamente impossibile per noi, facendo una build con i test prendere 12 minuti a EC2 invece di 25 secondi su un quad i7 portatile.

Ma! C'è una soluzione per il frugale:

Eseguire un master Jenkins su un micro, ma avviare una piccola istanza quando necessario per eseguire i test effettivi. Questo ci dà un sacco di memoria e CPU decente, ma è comunque incredibilmente economico (dieci centesimi per push [o commit]). Tuttavia, aumenta notevolmente il tempo di costruzione perché deve avviare l'istanza e tutto il resto.

L'installazione è piuttosto coinvolto, e richiede di lavorare intorno ad alcune limitazioni del plugin EC2 (che, nel complesso, funziona molto bene), quindi abbiamo scritto un post sul blog, se si vuole fare questo: http://wkmacura.tumblr.com/post/5416465911/jenkins-ec2

+0

Ho trovato che le istanze con CPU alta sono molto migliori per le build basate su Java rispetto alle istanze piccole. Se te lo puoi permettere, scegli la CPU alta. –

9

Stiamo eseguendo hudson su EC2 e test di integrazione Ruby/Rails. Stiamo andando bene su una micro-istanza come penso che lo farai.

+3

Siamo felicemente in esecuzione su una micro-istanza per un paio di mesi e infatti funziona perfettamente. – Datageek