The xCAT 2010 Year in Review

DISCLAIMER:  I’m not the official gatekeeper of xCAT, and I don’t work for IBM. But as a large contributor to the xCAT project, as well as a user, I figured I had just as much authorization to write about what happened to xCAT in 2010 as anyone else does.  And the best part is:  I’m not tied to a large corporation that monitors what I can or can not say.  So I can say, and will say anything I want to :-).  So anyway, what I say here represents my opinions and views and don’t represent the opinions or views of the priests at IBM nor of the greater xCAT community.  So tell your lawyers to go away.

So If nothing else, this is to give you something to read about while you’re recovering from your new years eve party.  I present:  The xCAT 2010 Year in review:

To start off with, I just want to thank all the users and developers that I’ve been able to work with this year. It’s been nothing short of incredibly amazing.  We’ve been working on tough problems.  The xCAT user base has some of the most talented, passionate, and dedicated people in the industry.  (And in most cases are smarter than us developers)  It was great to work with all of them this year.  I am thankful for your insites and criticism.  We hope people become more critical of xCAT and don’t sugar coat anything.  I didn’t work with one person this year on xCAT problems that I didn’t walk away from thinking: “Hmm, that <dude|lady> is pretty smart”.  So the talent inside the xCAT users group is fantastic.  You can tell that by the types of comments that come into the mailing list.  They’re much different than what you might see on other open source projects.  So the biggest story of 2010 for xCAT:  The users moved mountains, and helped make xCAT better.

Enough flattery.  As far as releases, xCAT went from the 2.3.4 release in March and culminated with 2.5.1 that was released Dec 11th.  Its nice to see the releases coming so rapidly.  I don’t anticipate this will be the case in 2011.  I think we’ll see slower major release cycles and minor release cycles will just coincide with OS updates (VMware’s updates, RHEL6 stuff, SLES, etc.)  Most of the reason I think things may slow down is because xCAT is pretty feature complete.  It can do lots of things.  It could use lots of clean up work, but nobody seems to be interested in doing that.  Most developers I think just accept that no error messages are printed when XYZ happens, and look at it as a learning opportunity for you to become acquainted with the xCAT code.  That’s too bad in my opinion.

Technology Highlights

There lots of features added to xCAT that made its awesomeness ooze even more than ever.  As usual, I usually skip all the awesomeness that was added to xCAT’s IBM’s AIX and SystemP functionality, since I don’t ever work on that aspect of xCAT, and usually just complain about the table pollution the AIX tables cause. (You know who you are: ppc, ppcdirect, pchcp, nimimage, etc) However, from what little I do know they’ve been pretty busy with it this year and I am glad to work with them on some small scale on this great product.

VMware Support – VMware ESX support has been in xCAT for a long time.  But this year we added better stateless ESXi support (The first ever) and also ESXi kickstart support with ESXi 4.1 (I think we’re the only project that has that).  We also added cloning, thin or thick, and lots of other cool features to support VMware virtual machines.

On the KVM front, we did the same if not better.  So if you’re running VMware or KVM on your nodes, xCAT doesn’t care, it looks the same.

imgimport/imgexport – We started the ability to import or export images (stateless and stateful) into xCAT.   This is still not as mainstream as I’d like it to be, but we hope to add more to this in 2011.  I still dream of Sumavi.com supporting some type of physical machine image store.

Dynamic DNS – Dynamic DNS was added to xCAT and I don’t think used as often.  But it assigns discovered nodes static IP addresses so that  you don’t need to predefine them in /etc/hosts.  This is great and a step further to making automagic discovery even more magical.

Statelite – xCAT has had stateless (RAM root in tmpfs ) support since 2005.  It’s also had a type of hybrid with NFS.  But now we’ve made statelite:  This allows stateless, with NFS root, with a real hard drive for statefull files.  Its wild.  Give it a try.  It probably offers the most extreme way to manage a system.  The coolness of the hierarchical tree support is frightening.

Sumavisor – This isn’t xCAT proper, but a nice Web Interface to xCAT has finally been added by Sumavi.  (More on that in the next section)

Non Technological Highlights

I think a big highlight is the emergence of a company that is dedicated to bringing xCAT to the masses and is not afraid to invest in it.  This is my company, Sumavi , founded Feb 2010 :-).  We have done very well this year with service engagements with some big time accounts.  In addition we’ve made some great partners, turned out some solid documentation and made a really nice GUI front end to xCAT that we’ve branded ‘The Sumavisor’.  And its not just a GUI.  It does much more than that, enhancing xCAT to make it look polished and add control and insight that you can’t get on the command line.  It also does a lot to cut the learning curve down and adds commercial support to all xCAT installations regardless of what hardware they are running on.

As far as the community goes, I had a rant on xCAT’s documentation problem.  Others at IBM have attempted to make the xCAT documentation more usable.  You can see it here.  It’s definitely better than it was and is a step in the right direction, but I feel like the Sumavi documentation is much more usable.  But you tell me.

In other news, we rolled out xCAT in banks, credit card companies, and the usual blend of government and university accounts.  But the most exciting is to see xCAT venture into corporations that are not focused on HPC.  This year we installed the Lego Universe MMOG environment using xCAT.  It was an all Windows environment too!  We did some cool stuff all over the place.  Even while not at IBM I was able to talk to developers at IBM and from all over the world.

In addition, we really broke out and started supporting hardware from Dell, HP, and other whiteboxes.  I even started developing the Cisco UCS xCAT module.  I haven’t finished it yet… I’ll wait for Cisco to cough up some support dollars for that.  You hearing me Cisco?

Predictions for 2011

2011 I hope we will continue to see xCAT do more outside of HPC. I hope to get into more cloud deployments.  We’ve already done a bunch.  But we’d like to have more packaged products.  I see us coming out with EC2 support. (not based on anything but Amazon APIs (sorry, but we heard too many complaints about the open source version of Eucalyptus)), I also see more appliance based models, like Hadoops.

As more people want to drive xCAT, ad Web Services API is in the works.  Right now you can perform xCAT calls via XML messages to port 3001 with xCAT, but this needs to be more robust.  We’ve done that with the Sumavisor, but there is more that needs to be done.  Hopefully that will be out in the first half of the year.

And finally, the biggest thing about cloud is that its all about the applications.  How will we deal with making applications more agile?  I see this as a major focus for our group.  Creating virtual machines, etc is great, but how do we help, or is it even our role to help with the creation of the contents of those machines?  We seem to be in that world already.  But where or should we draw the line between xCAT and things like RightScale.  Where or should we draw the line between xCAT and Chef, Puppet, etc?

I don’t know yet and I can’t wait to find out.

Anyway, I hope you had a wonderful 2010 and I hope 2011 is just as wild for you!