Tuesday, November 17, 2009

Hybridfox: Cross of Elasticsfox and Imagination

Now we have a Eucalyptus' Private Cloud installed and running on our premise, and it remained kinda of an artifact in our data-center for sometime. So I thought why has not someone written anything about how make to make Elasticfox work with Eucalyptus.
But there were quite a few pointers to what version will be ideally suited to use for Eucalyptus, like this one, thanks Ajmf. I took the cue from there, I enabled debugging on elasticfox, and used firebug to dig deeper. And I came up with Hybridfox, yeah, and it works.

What is Hybridfox?

Hybridfox is an attempt to get the best of both world of popular Cloud Computing environments, Amazon EC2(public) and Eucalytpus(private). The idea is to use one hybridfox tool, which itself is a modified or extended elasticfox, to switch seamless between your Amazon account and you Eucalyptus Account in order to manage your Cloud "Computing" environment.

What can Hybridfox do?

Hybridfox can help you to all everything that you could possible do with elasticfox, on the Eucalyptus Computing environment

  • Manage Images

  • Raise and Stop Instances

  • Manage Instances

  • Manage Elastic IPs

  • Manage Security Groups

  • Manage Keypairs

  • Manage Elastic Block Storage

Why this Project?

There something about the elasticfox development that restricts it only to EC2 environment. But Manoj(The maintainer of Elasticfox) has done well to keep it open source, so that people like us could just take it further, and hence this project.

Moreover I am kinda of beginner with JavaScript, and with a little bit of digging found the ways to extend it to eucalyptus in my own limited ways. It would be nice if the community gets involved and extends this a little further.

Caveat: Hybridfox is an extension of an earleir version of elasticfox, 1.6.x.

How the hell?

Oh yes! This is more important right? Those who are familiar with Eucalyptus will know that there is eucarc file that gets download when you download the certificates. When you "cat" this file you have some env variables specific to your Eucalyptus instance, and make not of the EC2_URL, EC2_ACCESS_KEY and EC2_SECRET_KEY

Once you have installed the xpi file do the following step.

  1. Define a Region: Click on Regions,in the Popup dialog, specify a logical name say "Eucalyptus" or "MyEucalyptus" or whatever suits you, and the give EC2_URL as the Endpoint URL.

  2. Define Credentials: Click on Credentials, in the Popup dialog, specify a logical name say "EucaAcc1" or whatever suits you, and give EC2_ACCESS_KEY and EC2_SECRET_KEY as the AWS Access Key and AWS Secret Access Key respectively.

  3. Define Key Pairs: Click on KeyPairs tab, followed by create a ney keypair icon, in the Popup dialog it prompts for "Please,provide a key pair name" enter the name as "eucakey" or whatever suits you, and it prompts for the location to save the id file

  4. Define Security Groups:Click on SecurityGroups,in the Popup dialog, specify Group name say "Eucalyptus" or "EucaGroup" or whatever suits you, and enter the description and click on create button

  5. Image: Click on Image, right click on ami-id to Launch instance(s)

  6. Launch a new instance: On right click on launch instance(s), a Popup dialog shows to select/enter AKI ID, AMI ID, Minimum and Maxiumu number of instances,Securit Group to be launched respectively

  7. Manage Instances: Click on Instances, you able to view the newly launched instances details

  8. ElasticIPs: Click on ElasticIPs, you able to find Associate IP address with Instances ID

  9. Volume and Snapshot: Click on Volume and Snapshot, you able to create volume for the instance with mentioning the size in "GB'
Now select the Region and Credentials accordingly. And you will be good to go.

Note: You could download the hybridfox from here and also feel free to contribute.

This screen just shows the list of images that the are registered with our Eucalyptus Cloud.

Show me!

Hybrid Fox




Security Groups


Launch New Instance

Manage Instance

Elastic IPs

Volume and Snapshots

Doesn't Elasticfox for Eucalyptus?

Yes, heard that with Eucalyptus 1.6.1, elasticfox 1.7.x will work out of the box. Havent tried that out but they claim. Having said that there hybrid fox will need to be, more focused on supporting all features of eucalyptus without breaking the EC2 functionalities.

Wednesday, November 11, 2009

AWS Workshop, Chennai

With the onset of the Monsoons in Chennai there were Cloud of a different kind looming, and the Met Department was evangelizing them; there was also another Cloud Evangelist in Chennai, Jinesh Varia evangelizing Clouds of different kind, the Amazon Clouds.

Event and Filling Gaps

The event kicked off with Bobby Varghese from CSS Corp doing a keynote for the workshop. Bobby spoke about CSS adoption of the AWS and how they have come up with products and use cases based on AWS.

The real clouds were holding back Jinesh from reaching the venue. So Ezhilaran Babaraj(Ezhil), from CSS Labs, and Lakshmanan Narayan(Lux), from Vembu, had to fill up for the latency. Both these session's were to be midway sessions to Jinesh's overview on AWS, that would have given mileage to these session for which AWS is the basis. Nevertheless, considering the audience were not real novices to AWS, these sessions were well taken.

Ezhil, explained at large the initiative at CSS Labs towards Cloud enablement, and specifically about the CloudBuddy API, and the Plugin Framework which will help extend Windows based applications to Cloud, and extending CloudBuddy itself repectively. The demo of the plugin framework, and APIs, of CloudBuddy, was not possible thanks to BSNL's connectivity issues.

Lux, who chose not use the mic, started off on an overview of Vembu Technologies. And then showcased Vembu Home BETA with its Adobe Air based UI. And how it helps the user backup on Desktop as well as the Cloud.

Jinesh Arrives

As Lux, was finishing his talk, Jinesh arrived. And there was a coffee break.

Post coffee! Jinesh was quick to take the stage. He, started off with an introduction to Cloud Computing taking the analogy of a Belgian Beer Company which in its early days had to generate its own power(electricity), and now that power comes from a grid, and the beers tastes no different. And that power generating machine is now in the mueseum. An ominus sign for our inhouse data centers.

Having introduced the crowd to Cloud Computing he jumped to what he was here to do, showcase Amazon Web Services. Jinesh, did well to get the some temporary Keys to access Amazon Web Services, which were distributed to the audeience, but the connectivity issues rendered them useless.

Jinesh's articulation of the Amazon Web Services did manage to fill whatever gap, that were left due to (dis)connectivity. The "Overview of AWS" introduced the audiences to nuances of creating AWS accounts, about the access credentials, usage of those accounts, billing- pay as you go model, the API, tools, and the Architecture of AWS. The Architecture Diagram built was a Jigsaw of various Amazon's Web Service offerings fitting into one service, to run an application on the cloud.


The overview naturally spilled over to specifics. Lack of connectivity meant more talking than doing, also this meant the start of a marathon session on AWS specifics.

Amazon S3(Simple Storage Service) was the first of the talks on specific Amazon Web Services. The S3 session also included coverage on CloudFront, CD based on S3. S3 session was followed by, EC2(Elastic Compute Cloud) which is the computing face of AWS, this session also included the failover support services for EC2- CloudWatch, Autoscaling, and Elastic LoadBalancing. Apart from which the persistent storage, Elastic Block Storage, on EC2 was explained.

Each of these sessions Features, Terminology, Concepts,In Action, Tools and API, Pricing and Typical Use Cases for each of the Amazon Web Sservices.

Finally Jinesh, talked on the "Best Practices" and "Migration to the Cloud".

And finished it with an exercise on building Cloud Enabled application using various AWS offering.

The Unconference

This was where all the action was expected. But due to Jinesh's marathon sessions there was only a little time distributed equally among the presenters. What follows is what happened.

Bosky from Hover who spoke about the Key-Value based systems, and distributed environments.

Kiran from MarketSimplified spoke about their SaaS application and how they use AWS to host it.

Senthil from RailsFactory spoke about "What Jinesh did not mention?"

Murthy and Sam from CSS Corp explained about whats and whys of Hybrid Cloud, and also presented a Demo of "scaling out" to public cloud.

There were experiences shared by XLSoft and Anantara Solutions.

The unconference's finale was a video "Cloud Cloud Maybe" compile by Vembu


All in all it was great event. With a good attendance, good lunch, and with a pinch of togetherness as an AWS community. The basic motive of this whole exercise were two things, Building an engaging community around AWS, and to see if Cloud is real. About the latter there really was no doubt. With usages like Animoto, TimesMachine, and our Payroll Processing, it surely is the future of computing. But doubts shall remain if former will stand, as it took Jinesh's presence for this kind of event to happen.

To sum it up in Jinesh's words "Keep this engagement going".