EC2 : La tentation de puissance
Eric Cestari - cstar - May 02, 2008Amazon Elastic Computing Cloud, aka EC2, mon nouveau jouet.
En quelques clics, on dispose dâune puissance de feu capable dâaffronter à du Slashdotting, du Facebooking ou du Digging.
Jusquâà récemment, EC2 était à la fois sexy et limité.
Les deux manques (dâavant)
Pas dâIP statique : il fallait utiliser un provider de DNS dynamique pour maintenir le lien avec le monde extérieur (oui, comme avant, avec lâADSL de Francetélécom).
Pas de stockage en mode bloc persistent : La plus grosse instance (octo-core, 15Gig de RAM) a bien 1,5 To de stockage, mais en cas de arrêt de lâinstance (volontairement du locataire ou involontairement en cas de défaillance matérielle sur la machine qui héberge la machine virtuelle), on perd tout.
Heureusement, un écosystème sâest développé pour pallier aux manques. Elastic Drive, par exemple, est un module FUSE qui permet de monter un bucket S3 en système de fichier par bloc.
Du coup pour héberger une base de donnée, on crée une partition RAID 1 : dâun côté la partition non persistente, mais performante de la machine EC2, et de lâautre, lent mais fiable, le stockage sur S3.
En cas de crash, le RAID est reconstruit à partir du S3.
Ah non, ça ne manque plus â¦
On peut maintenant avoir des IP statiques, et câest implémenté avec beaucoup dâélégance. Les IPs sont décorrellés des machines virtuelles, et on peut faire pointer une IP dâune machine à une autre instantanément. Les IPs statiques sont limités à 5 par compte AWS, et coûtent $0.01 lorsquâelles ne sont pas utilisées/
Le Persistent Storage arrive lui aussi. Des partitions (jusquâà 1To) peuvent être attachées à nâimporte quelle instance EC2 (pas de partage toutefois). On peut ensuite en faire des snapshots sur S3.
How cool is that ?
Le système est encore en closed beta, jâattends avec impatience mon invitation pour tester le service.
Pour quels usages ?
La souplesse
Le prix de la plus petite instance par mois est de 45 Euro. Pour une machine de la puissance dâune dédibox vieux modèle. Donc pas vraiment rentable en soi.
Mais, on y gagne la souplesse. Si je mây suis bien pris, si jâai un pic de trafic (durable ou non) je peux en quelques minutes augmenter le nombre de mes serveurs et donc la charge que peut encaisser mon site/service.
Et encore mieux, je peux diminuer le coût de mon infrastructure si la réalisation de mon business plan nâest pas aussi réussie :)
Et il ne faut pas négliger tous les coûts annexes lorsquâon installe un cluster de machines : il faut des switchs (redondants) des routeurs (redondants) de quoi faire des backups (redondants), et aligner la force de frappe en fonction de la charge prévue.
Cette souplesse ne vient pas toute seule, il faut développer et/ou des outils de management, pour faciliter le déploiement. Ces deux articles abordent le déploiement rapide.
On peut automatiser encore plus, en allouant ou libérant des machines en fonction de la charge. Les serveurs dâapplication, souvent déployés en share-nothing (comme Ruby on Rails) sont lancés facilement (pas dâétat à transférer). La solution Scalr propose tout ça. Ãa a lâair super cool. Mais jâai pas encore pu tester, lâappli PHP de contrôle plantent sur mon portable â¦
Un besoin spontané
Je me suis mis récemment à utiliser tsung, lâoutil de load testing de Process-One. (oui, ceux qui maintiennent ejabberd)
Un soft erlang/OTP qui permet de rejouer des sessions HTTP préalablement enregistrée avec son recorder. Câest un proxy qui génére le fichier de configuration.
Tsung permet de faire des âattaquesâ? distribuées sur plusieurs machines.
Sexy, mais mon MacBook Pro derrière sa ligne ADSL ne sera jamais aussi violent quâun serveur dans un datacenter.
Jâai donc créé une Amazon Machine Image (à partir dâune Ubuntu 8.04) qui va exécuter Tsung à partir dâun fichier passé en paramètre :
ec2-run-instances ami-0146xxx -t m1.large -k cle -f tsung.xml.zip
Le fichier est décompressé et tsung se lance. Une fois le testing fini, le rapport est généré, et disponible via le navigateur.
Avec la ligne ci-dessus, jâai un quadcore avec 8 Go de RAM dans un datacenter dâAmazon qui travaille pour moi.
Je vais probablement publier cette AMI quand je lâaurais fignolée, et jâespère pouvoir la configurer de manière lancer directement un cluster de machines qui vont se répartir la charge.
Pour conclure
Ce serait bien si la solution pouvait venir en Europe (S3 y est bien) ⦠Profitons déjà du dollar faible, et de lâénorme marché américain :p
Et jâai hâte de tester PersistentStorage !
Categories: Blogs Eric Cestari
Comments
No comments so far, you could be the first.Add comment
Erlang on Twitter
» winda_lestari63 (winda cliquers): gg usja di pikirin prins ank itw gjhe..RT:@Prinsia_2140
@Erlang_ABNIC @ji_bero @erlang_abnic @rb_120511
» ErlangSolutions (Erlang Solutions): Want to join the best of the best of the best? ESL is hiring 40 engineers! Join our Linkedin Group to keep updated http://t.co/CDB7qYeI
» Prinsia_2140 (˘⌣˘ pRiNsiAH ˘⌣˘): @Erlang_ABNI : http://t.co/j61ODMNv
» Erlang_ABNIC (Erlangga .A): JERA :) RT @AgnesMonicaFanz: #acakhuruf A-R-J-E . klue : kapok,lagu. jawab yuk NIC !
» Fedora_Updates (====================): Fedora 17 Update: erlang-misultin-0.9-1.fc17 http://t.co/u3ABUDkz
» HornedKavu (Max Riveiro): RT @shwars: Вчера в докладе career.ru на #itedu были озвучены новые востреб.профессии на IT-рынке: Haskell-, Lisp- и Erlang-программист!
» phyrexianengine (Vasily K.): RT @shwars: Вчера в докладе career.ru на #itedu были озвучены новые востреб.профессии на IT-рынке: Haskell-, Lisp- и Erlang-программист!
» Erlang_ABNIC (Erlangga .A): @cjerikho829 selamat shooting ♈o kak.. Nitip salam buat kak @Bellaudya829.. ☺ Semangat (งˆヮˆ)ง
» dessyrosalia (♡pesek mancung♥ ): Erlang ke rumahku donk kangen nih
» si_erlang (Erlangga Adhitya): 75% dalane jahanam
Statistics
Number of aggregated posts: 10498
Number of comments: 2115
Most recent article: May 15, 2012
Latest comments
» cheap soccer jerseys on Memory Models in Erlang vs Java: Nice discussion here,you are doing a great job. i was looking for this information. i found it on your page…
» mandesejohn on Couchbase Meetup at new HQ: Thanks for sharing experience. It should be really a great post. It should be knowledgeable and informative. Keep it up. flower delivery columbus ohio
» vermaseo on Scale means Skills: I’m surprised people are still commenting about this. George has been moved on to bigger and better things with the president for awhile now.ledikanten