In the off-season we also have regular employee turnover, and it's interesting trying to hire people who have virtualization experience, especially big-enterprise virtualization experience. You can't really go out and say, 'I need to hire three guys who have been using iSCSI and Solaris Zones for large scale Web infrastructure' because they're just not out there. So, we're learning on our own, basically, and we're working with Sun Professional Services quite a bit. I can imagine if this had happened five years ago, the Zones feature in Solaris would have been an extra license. Now it's all free, and it's really cool, but where they really want to make their money is helping us on the services side.
What other applications do you see for the technology?
We're tasked with transcoding a huge library of archived ball games. I can see where we would take a rack of machines that are used during the season to serve up files and reconfigure them to run a virtual instance of Windows to become a Windows Media encoder. We can take those servers and say, 'Today you're going to be 20 Windows machines,' and throw batch jobs at them and have them transcode stuff as fast as possible. The Sun server has an Intel chip inside and can be a Windows machine when it needs to be. And if you have a good management console, you can just say, 'Install Windows on these 30 machines or boot Windows on these 30 machines.' That's pretty interesting. Virtualization lets us slosh resources around seasonally.
Sun also just announced xVM based on Xen. So Sun's got Solaris Zones, which is kind of a virtualized user environment -- one kernel with a bunch of virtual computing environments underneath it -- and then there's the Xen piece, which is actually booting multiple kernels on big-enterprise hardware. That's in partnership with Microsoft, so it supports things like Windows. I would imagine that that's the technology we would end up using to do projects like I just described.
Have you found any sorts of applications that do not lend themselves well to virtualization?
We haven't even considered running our database stuff on a virtualized host. For all of our databases, we really need high-performance storage and lots of dedicated hardware. That database includes our Major League Baseball stats, fantasy-team data, all the newsletters customers subscribe to, and what subscription audio products they've purchased, and so on. With virtualization, you do add a lot of extra abstraction. The big challenge for people who are inventing these new virtualization technologies is to make the overhead as low as possible, but it's still there. For really high-performance computing, if you need one big monolithic machine, virtualization doesn't help.
Have you been able to determine your ROI on these virtualization efforts?
Not really, but I know it's very good. It's nice when someone comes up with an ambitious new project and my default answer isn't 'no.' It used to be, 'You'd like to give a free taco to everybody in the country? That's going to take X number of servers. And you need them up by Friday? I just can't do it.' Now I can say, 'Yes, you can do that and here's what it will cost. And if you have a big surge in traffic, I can double the number of your servers and it's going to cost this much.' And if they're going to make three times that much on the product, they'll say, 'That's fine.' So it lets us get to yes very easily. And the time from a decision to delivery is very fast.
What have been the most pleasant surprises about virtualization?
I'd say it's not as hard as we once thought. If you think back to the days of mainframes, you actually had to write [code] for a compute grid or to spread your application around. When the developers use their instances of applications or of servers, they don't necessarily know that they're even running on virtual machines. They just ask for access to a machine to test something and we give them logon information and ask if they need root access on the box, which blows their minds sometimes. But once you're in a virtualized environment, it's very familiar to people. It's more administration work on the outside, but we don't have to train people much to use the resources that are presented to them in a virtual way.
Any big disappointments with the technology?
Not yet. But we're just getting into it.