Home > Virtualization > Continuous Deployment With Virtualization and Cloud: An Idea for Startups

Continuous Deployment With Virtualization and Cloud: An Idea for Startups

If you have a new hire, do you want him/her to push code into production system on the very first day? You may be OK with this sometimes. What if it’s a trading system with real money involved? More often than not, you come up with a different answer.

On Wednesday night, I attended a seminar organized by SDForum SAM SIG at LinkedIn headquarter. Pascal-Louis Perez and David Fortunato from Kaching.com engineering team gave a great talk on how they streamlined their software development process to the extent that they normally release 20 times a day to their production system. It’s quite a safe process that it’s OK for a new hire to push code on day one.

Lost VMs or Containers? Too Many Consoles? Too Slow GUI? Time to learn how to "Google" and manage your VMware and clouds in a fast and secure HTML5 App.

kaChing is an online platform that connects investors with outstanding investment managers. We are a technology driven company, which has adopted lean methodologies from the start, and has achieved a 5-minute commit-to-production cycle. Continuous deployment is a way of life and is integral to our engineering culture.

In this talk, we will present our system’s architecture and discuss our service oriented platform dubbed kawala (in the process of being open sourced on http://code.google.com/p/kawala). We will describe the mechanics of an automated release from check-in to production: clean build with full regression testing in less than 3 minutes, packaging and deployment by automatically redirecting traffic using ZooKeeper for coordination, health checks and immune system to monitor the release. Finally, we will talk about planned evolutions and the next challenges we face in our infrastructure.

The idea seems crazy but I think it represents the trend of service software. It requires extensive infrastructure and expertise to support this extreme process. Unfortunately you have to build it by yourself today because there is no integrated solution.

Technology wise, virtualization and cloud computing definitely provides good supporting infrastructure that makes the continuous deployment more flexible, controllable and cost effective. This is a very promising area for any startup to build an out of shelf product/solution that supports continuous deployment using virtualization/cloud computing.

  1. June 3rd, 2010 at 06:25 | #1

    Kaching is an interesting application in itself, but its great to know whats going on at the development side.

  2. Tim Coote
    July 15th, 2010 at 06:14 | #2

    I believe that CD is more than an idea for startups. I think that it’s the way of the future for most enterprise IT. There are issues about getting the chargeback infrastructure in place, and putting the testing around the legacy systems, but the costs are minimal compared to the benefits of downsizing ops, and slashing capex on technology and facilities. (50% increase in the 25% of the IT budget that’s dev. vs 50% reduction in the 75% of the budget that’s run).

  1. July 1st, 2010 at 00:03 | #1
  2. August 20th, 2014 at 00:26 | #2