Des rubis plein les nuages
Par Nicolas FRANCOIS le jeudi 21 avril 2011, 10:09 - Cloud - Lien permanent
Comme vous le savez certainement, WMware au travers de Cloud Foundry propose
son offre de cloud, mais pour le moment en bêta. Après une longue semaine
d'attente, j'ai enfin reçu mes crédentials.
C'est tourjours par un HelloWorld que commence bon nombre de tutoriaux, celui que j'ai essayé n'échappe pas à cette règle.
Je vais vous faire part de ce petit essai que je trouve intéressant.
En fait, il s'agit de la version Ruby que j'ai essayé. Je n'y connais rien en Ruby, mais qu'à celà ne tienne, Hello c'est pas très compliqué.
Il faut tout d'abord s'assurer de ses version de Ruby et de gem :
Chose promise, chose dûe, un hello tout simple :
Et voilà, on a fini la v1, il ne reste plus qu'à déployer, en répondant à quelques questions :
Aussitôt, dégainage du navigateur à l'url, et c'est déjà accessible :
Mince j'ai oublié des gens importants :
Prêt à déployer ce correctif :
Un F5 suffit à vérifier :
C'est ainsi que s'est déroulé mon premier essai de déploiement Cloud Foundry et j'ai apprécié sa simplicité. C'est donc un bon point qui donne envie de continuer à s'y intéresser car bien sûr pour s'en faire une bonne idée, il reste de nombreuses choses à tester.
Dans le monde du Ruby dans le cloud, il existe aussi Heroku, assez apprécié me semble t-il dans le monde ruby. Mais mes connaissances rubyste s'arrête là, je ne saurais faire un comparatif des 2 offres.
C'est tourjours par un HelloWorld que commence bon nombre de tutoriaux, celui que j'ai essayé n'échappe pas à cette règle.
Je vais vous faire part de ce petit essai que je trouve intéressant.
En fait, il s'agit de la version Ruby que j'ai essayé. Je n'y connais rien en Ruby, mais qu'à celà ne tienne, Hello c'est pas très compliqué.
Il faut tout d'abord s'assurer de ses version de Ruby et de gem :
bash$ ruby -v
bash$ gem -vIls doivent être respectivement en version 1.8.7 et 1.7.2. Il est possible que gem ne soit pas à jour, dans ce cas, la commande suivante est à passer :
bash$ sudo gem update --systemVous pourrez ainsi installer la gem vmc :
bash$ sudo gem install vmcCe qui permettra dans un premier temps de se connecter à son compte :
bash$ vmc target api.cloudfoundry.com Succesfully targeted to [http://api.cloudfoundry.com] bash$ vmc login Email: moiMail@mo.i Password: *********** Successfully logged into [http://api.cloudfoundry.com]On a passé le coté configuration et prêt à déchainer la fureur du code.
bash$ mkdir hello bash$ cd hello/ bash$ nano hello.rb
Chose promise, chose dûe, un hello tout simple :
require "sinatra" get '/' do "Coucou les gens" end
Et voilà, on a fini la v1, il ne reste plus qu'à déployer, en répondant à quelques questions :
bash$ vmc push Would you like to deploy from the current directory? [Yn]: Y Application Name: nfrancois Application Deployed URL: 'nfrancois.cloudfoundry.com'? y Detected a Sinatra Application, is this correct? [Yn]: y Memory Reservation [Default:128M] (64M, 128M, 256M, 512M, 1G or 2G) Creating Application: OK Would you like to bind any services to 'nfrancois'? [yN]: Uploading Application: Checking for available resources: OK Packing application: OK Uploading (0K): OK Push Status: OK Staging Application: OK Starting Application: OK
Aussitôt, dégainage du navigateur à l'url, et c'est déjà accessible :

Mince j'ai oublié des gens importants :
require "sinatra" get '/' do "Coucou les gens, surtout toi lecteur" end
Prêt à déployer ce correctif :
bash$ vmc update nfrancois Uploading Application: Checking for available resources: OK Packing application: OK Uploading (0K): OK Push Status: OK Stopping Application: OK Staging Application: OK Starting Application: OK
Un F5 suffit à vérifier :

C'est ainsi que s'est déroulé mon premier essai de déploiement Cloud Foundry et j'ai apprécié sa simplicité. C'est donc un bon point qui donne envie de continuer à s'y intéresser car bien sûr pour s'en faire une bonne idée, il reste de nombreuses choses à tester.
Dans le monde du Ruby dans le cloud, il existe aussi Heroku, assez apprécié me semble t-il dans le monde ruby. Mais mes connaissances rubyste s'arrête là, je ne saurais faire un comparatif des 2 offres.

Commentaires
En effet cette plateforme est très prometteuse. En tout cas pour ceux qui codent en Rails, Java, et Node.js c'est juste hallucinant. Vu les questions qui se posent suite au rachat de Heroku par Salesforce et surtout face à ses limitations, je pense que vmware a un excellent coup à jouer. D'autant que cette plateforme est complètement portable, je me suis amusé à la porter sur EC2 et ça marche sans pb (enfin quand EC2 ne lache pas). REste à essayer avec Azure mais je ne vois pas pourquoi ça ne marcherait pas. Maintenant reste à voir le pricing, et aussi comment ils intègrent d'autres éléments comme Goliath et autres Eventmachine, ou encore des frameworks java full stack comme play et Java EE -.