John Willis on Open Source
John Willis just made a great post on the Open Source vs. Commercial software for enterprise management:
Now contrast this with the infamous iLike/Puppet story. Last year iLike.com added a new Facebook application to their service and they gained 35k new users in 24 hours and over 700k new users in just a couple of days. Within a three week period they went from 3 million users to 6.7 million users. Less than a year later, they now have 23 million users. Surely, they must have used an industrial strength multi-million dollar provisioning system - 'not'. Their provisioning system was FREE. With the help of a consulting company called HJK they used an open source product called Puppet to manage their server growth. HJK boasts that with a really short services engagement, one or two weeks, they can achieve 10 minute psychical system bare metal installs. On Xen images they can provision a system in two minutes. In other words, for about 15k in services and another 15k for a Puppet maintenance contract, HJK can provide a solution that the Big Four charges over a million plus and they can deliver the solution in two weeks instead of 3 months.
Fri, 21 Mar 2008 | Tags: opensource, puppet, opennms, hjk
iLike HJK and Puppet
As I mentioned, John Willis posted about Puppet, and in his post he mentions that iLike uses Puppet. Well, Adam Jacob, one of the partners at HJK Solutions, which is the company that did the Puppet work for iLike, has written up a bit more information:
Puppet enables us to get a huge jump-start on building automated, scaleable, easy to manage infrastructures for our clients. Using puppet, we:
- Automate as much of the routine systems administration tasks as possible.
- Get 10 minute unattended build times from bare metal, most of which is data transfer. Puppet takes it the rest of the way, getting the machines ready to have applications deployed on them. Its down to two and a half minutes for Xen.
- Bootstrap our clients production environments while building their development environment. I cant stress how cool this really is. Because we are expressing the infrastructure at a higher level, when it comes time to deploy your production systems, its really a non-event. We just roll out the Puppet Master and an Operating System auto-install environment, and its finished.
- Cross-pollinate between clients with similar architectures. We work with several different shops using Ruby on Rails, all of whom have very similar infrastructure needs. By using Puppet in all of them, when we solve a problem for one client, weve effectively solved it for the others. I love being able to tell a client that we solved a problem for them, and all its going to cost is the time it takes for us to add the recipe.
Puppet, today, is a tool that is good enough to handle the vast majority of issues encountered in building scalable infrastructures. Even the places where it falls short are almost always just a matter of it being less elegant than it could be, and the entire community is working on making those parts better.
I'm very happy to see people successfully building businesses around Puppet, and it's great to see that companies who are getting press are depending on Puppet to manage those famous applications.