2011-08-16 18 views
5

In che modo le persone (e le start-up) realizzano effettivamente la prototipazione/distribuzione di oggetti su Amazon e mantengono i costi ragionevoli? Il mese scorso stavamo sperimentando alcune applicazioni specifiche e gestendo il proprio cluster hadoop e siamo riusciti a spendere quasi 1.5k solo per i test? Certo - hanno istanze micro, ma cosa succede se l'applicazione è così intensa che in realtà richiede un'istanza più grande da testare? Quindi vorrei un suggerimento su come le persone fanno questo?Prototyping per Amazon Ec2

+0

Ma quanto avrebbe dovuto sostenere/supportare il proprio HW equivalente? Se fosse 15K +, hai un buon affare ... – timday

risposta

4

Diverse questioni chiave:

  1. Consideriamo un banco di prova locale per alcuni scopi & considerare se un dato test ha davvero bisogno EC2. Se è davvero così difficile sbrogliare 2-4 macchine da usare come banco di prova per Hadoop, c'è un altro problema. Prendi la testa su quello che farai, su come Hadoop svolgerà un ruolo, e calpesterai le gomme. Col tempo, vorrai anche cambiare la tua griglia, aggiornare il software, armeggiare con altre idee, ecc. Quando vai su EC2, avrai già livellato alcuni spigoli.
  2. Non utilizzare una macchina con una capacità maggiore di quella necessaria per ottenere il blocco delle cose. Se non stai eseguendo molti cicli di dati o di elaborazione in questa fase, non preoccuparti dei nodi di calcolo dei cluster, delle massicce istanze RAM, ecc. Concentrati solo su come configurare correttamente le cose.
  3. Quando si è pronti a eseguire il retargeting su macchine più potenti, provare alcune impostazioni della macchina diverse. Forse le istanze di calcolo del cluster pagheranno, forse non hai bisogno di quel tipo di throughput: finché non conosci i colli di bottiglia, non spendere troppo.
  4. Assicurarsi di utilizzare frequentemente le istanze spot durante la fase di test. In genere pagherai circa il 50% del prezzo su richiesta.
  5. Se si arriva a un punto in cui si desidera pagare istanze su richiesta, avviare un'istanza separata e arrestare le istanze di Hadoop in base alle esigenze, a meno che non sia necessario un grande cluster tutte su istanze di calcolo cluster.
  6. Prepara i tuoi AMI per essere lanciati il ​​più rapidamente possibile (meno di 1 minuto) e non lasciare mai nulla durante la notte o nel fine settimana se non è necessario.

Fino a quando il sistema non viene configurato e funzionante, stai sostanzialmente pagando lezioni per imparare come ottenere tutto su misura per le tue esigenze. Basta pagare le "tasse scolastiche" per imparare ogni lezione (configurazioni, colli di bottiglia, ampliamento, ecc.), Piuttosto che cercare di assumere tutto in una volta. Quando ci si avvicina come una serie di lezioni da apprendere, è meno doloroso spendere i soldi, ma finché sai cosa stai per testare e imparare, spenderai anche denaro in modo più giudizioso.

Infine, confronta i $ 1500 al costo del lavoro di questa esperienza di apprendimento - probabilmente non è un grosso problema a lungo termine. Una volta che sai che qualcosa sarà un ragionevole blocco dello sforzo computazionale, è ben progettato e finirà rapidamente (anche se su molte macchine), non è così doloroso spendere soldi per questo. Al momento, è difficile apprezzare ciò che stai imparando perché non è ancora vantaggioso per gli obiettivi dell'organizzazione.

+1

Felice di aiutare. A proposito, se impari qualche idea in più, per favore sentiti libero di tornare e condividerli. Ottenere più soldi per il dollaro è prezioso anche per il resto di noi. :) – Iterator

0

Considerare l'utilizzo di istanze spot. Se si overbid, si può essere quasi sicuri che non verrà interrotto. Nel lungo periodo hanno un prezzo su un livello di istanze riservate, ma non è necessario pagare in anticipo. Credo che potresti anche pianificare i test per le ore non di punta, raggiungere prezzi ancora migliori o passare a richiesta se il prezzo dell'istanza spot supera quello on-demand - Hadoop dovrebbe gestirlo bene. Controllare this article about spot instances. Ha anche riferimenti a due altri articoli che analizzano il potenziale delle istanze spot.

+0

Buon consiglio per le ore non di punta. Hai notato tendenze stagionali (ad esempio picco/non picco) nelle istanze spot? Tendo a ottenere lo stesso prezzo in qualsiasi momento, ma potrebbe essere diverso per altri tipi di istanze. – Iterator

2

Per risolvere il problema dei costi mentre si fa il proof of concept di utilizzare Amazon Cloud.

Ho creato un'applicazione Java leggera utilizzando Amazon AWS API, che crea le istanze del cloud di Amazon quando voglio eseguire un test su di esse. Una volta terminato il test o l'avvio non riuscito, l'applicazione termina immediatamente le istanze inviando messaggi di diagnostica.

Quindi, nessuna istanza di Amazon ha funzionato o seduta ideale. Che può accadere se si crea/termina manualmente o attraverso un programma separato.