Wednesday, September 16, 2009

The forecast: cloudy weather expected

Every year, a few hundred geeks migrate towards a central location somewhere in the US to attend the community-driven JBoss World (http://www.jbossworld.com). But this year was to be different from the rest: Jboss World was to be combined with the annual Redhat Summit in Chicago - a real treat. And there is a slight shift in direction with one of the biggest (and probably the fastest growing) OS / middleware stack solution.

The biggest trends with JBoss middleware seem to be on SOA and cloud computing (incorporating virtualization and technologies such as REST) - and why not. Following the SOA governance principles ensures portability, scalability and overall software maintenance costs in software development, while cloud computing offers scalability and cost effectiveness for deployment of applications. (The Summit had a fair amount of focus on virtualization as the underlying technology of cloud computing).

Cloud computing, for those of you who are not familiar with the technology, is a "paradigm of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet". One of the forerunners of this technology is Amazon's AWS (http://aws.amazon.com). I decided to give it a go.

Monday, 6pm: Register for AWS after an hour or 2 of reading up on the various products, their features and pricing models.

Tuesday, 2pm: Register for EC2 (computing) and S3 (storage) services. Once the services were set up, everything on the provider's side would be ready. The next 3 hours were spent reading up on how to deploy a virtual machine (instance based of an image, aka AMI) to the EC2 infrastructure. This included setting up keys and certificates for athentication, and building an operating system to deploy. By 5pm, everything was prepped and I headed off home.

Wednesday, 10am: Start figuring out how to bundle, upload and register the images created.

Wednesday, 3pm: My first cloud-based resource deployed, and available publically, with some basic services running.

That's it - 1 full days work to order, access and deploy an operating system stack with services to a public environment. Compared to 4 - 5 days of setting up purchased hardware in a data center, this was such a pleasure. Not to mention that all resources are charged on a "pay-per-use" basis - no monthly leasing fee's. no service configuration costs. no hardware cost. Just stop all the services and there is no billing (Those expensive data center costs and hardware outlays really can hurt a business).

My first impression: A truly powerful technology implemented with a good set of tools (as provided by AWS) is the way to go for web apps, whether you are a developer, reseller or service provider.