CentOS is an open source project that takes the source packages Red Hat Inc. offers to users as a free public download under the GPL and then removes trademarks and artwork. The washing-machine effect transforms Red Hat Enterprise Linux from its commercial entity into a more flexible and freely distributed version of Linux in the vein of Ubuntu or Debian.
However, the process means CentOS loses all the support and services offered by Red Hat. Furthermore, running a RHEL clone puts its users into an ambiguous support situation with ISVs that have certified their products for Red Hat's brand of Linux. For some users, that's a deal breaker. For other enterprising users, however, it's a sacrifice they are willing to make.
Community support versus commercial support
Kieron Williams, IT administrator for U.K.-based pub company Brunning and Price Ltd., has had CentOS up and running alongside some Windows boxes in his data center for five months. He said Fedora was also considered (Red Hat's community-driven, freely available Linux distribution), but ultimately the nod was given to CentOS.
"We wanted to get a cut down installation of Fedora with a [VMware] virtual server running four OSes and we didn't need a nice GUI," Williams said. The five-month deployment has been stable to date, and support is only a matter of using the Internet. "We paid a lot for Microsoft SBS and get no support from them so we don't really miss it."
These smaller-scale deployments in the SMB space are where CentOS makes sense, said New York-based 451 Group analyst Raven Zachary. These users typically do not want to pay Red Hat for support and can get by using developer forums at locations like LinuxQuestions.com.
But there are also users like Glenn Parsons, an IT administrator at 1bigthink, a consulting firm based in Bethesda, Md. Parsons said his entire public network runs on CentOS, Apache, Jakarta-Tomcat, Sendmail, BIND and MySQL. In an email to SearchEnterpriseLinux.com, he said any search engine can find enough Red Hat Linux support information to solve almost all CentOS-related problems.
Fred Newtz, IT manager for a debt negotiation vendor based in Houston, said his best bet for CentOS support is Internet Relay Chat forums like irc.freenode.net. "This gives you access to people all around the world who run and support these distributions on a daily basis," he said.
Newtz said many of these channels are frequently visited by CentOS developers, meaning users can get support directly from the source.
And there are many more users like them, Zachary said, including a few internal deployments at large enterprises that may roll and deploy their own applications based on CentOS, Debian or Ubuntu. For IT shops that already have a veteran team of Linux administrators in place, cutting out commercial support and going with CentOS is not asking for too much, he said.
A Red Hat support and software upgrades dilemma
But what if a customer wants software upgrades but doesn't want to pay for technical support?
That was the case at SmugMug Inc., a California-based Web site specializing in photo sharing. Don MacAskill, CEO of SmugMug, has run any number of Linux operating systems since installing SUSE Linux in 2002. At the time, MacAskill paid $800/seat for enterprise support. The money went largely to waste as Novell refused to return calls about email relating to a problem with the OS, he said.
Next up was Red Hat for $349/seat. MacAskill wrote in a blog entry: "They actually did acknowledge me as a customer, reply to my emails and best of all have a fantastic Web management interface/software update mechanism in the form of Red Hat Network." The RHEL 3 and 4 deployments lasted until 2006, when MacAskill and his IT staff realized their own internal support work and the Linux community at large was a far quicker, more reliable support system than Red Hat -- and it was completely free.
When the service contract came up for renewal SmugMug reevaluated its relationship with Red Hat. The IT staff loved the way Red Hat built, tested and delivered software updates, but it no longer needed support. MacAskill requested a "software updates only license," but Red Hat told him support comes bundled with updates, no exceptions.
That practice will continue for the indefinite future said Nick Carr, a product marketing director at Red Hat. "There are no plans to do software upgrade contracts," he said.
Carr said it would not be in Red Hat's best interest to risk existing customer relationships and offer a lower cost product with no technical support bundled in. "Historically, open source and Linux customers were typically pretty technically competent and able to do their own [support]," he said. "But as enterprise Linux sees broader adoption, the number of customers fully able to do their own thing gets smaller and smaller."
The rest, he said, could go to an alternative OS like CentOS and not affect Red Hat's healthy bottom line.
First Oracle, then CentOS
SmugMug's search for alternatives led first to Oracle Enterprise Linux, which appeared to be the perfect fit. Much like CentOS, Oracle Linux is a clone of RHEL, but it also offers a software update contract for $99 per system with unlimited CPUs. SmugMug bought a handful of licenses for testing.
Unfortunately, MacAskill said, Oracle released the product half-baked. "The update service was broken in multiple ways. You can't have two people administer the same boxes, for example, and software updates inexplicably broke a few times," he said.
MacAskill began asking colleagues at larger, enterprise-class companies what they had done with the same problem. "These companies had large, experienced Linux groups on hand to deal with issues and thousands of machines, so I couldn't believe they were paying hundreds or thousands of dollars per Linux box for support they weren't going to use. Turns out they weren't -- they were all using CentOS," he said. A community of developers that are funded by a tiered donation system provides free support for CentOS. The suggested donation for a 1,000-server CentOS deployment, for example, is $15 per install.
Karanbir Singh, a developer working on the CentOS project, said software updates are freely available within a few hours of Red Hat releasing the same update. CentOS has a mirror network of almost 200 machines worldwide that users connect to using the package manager and get them.
"Large companies and network administrators tend to just pull down one copy of the update, set up their own local repository, test the packages for their own site policy and then automatically roll out to the machines they manage. The tools to do this and to automate this end to end are already included in the CentOS distro," said Singh.
Since RHEL and CentOS are essentially the same operating system, migration between the two was "a breeze" for SmugMug, and all developers had to change was one file: rpm -e redhat-release. Users interested in the upgrade process that Singh described can use open source projects like yum, or Yellow dog Updater, modified. A tutorial on the yum update process is available on the CentOS.org Web site.
Generally speaking, if internal CentOS deployments become successful and start to grow in size and scope, many of them are migrated to Red Hat Enterprise Linux to receive full commercial support, the 451 Group's Zachary said.
That's not the case at SmugMug however. Today, a handful of servers run CentOS and will for the foreseeable future so long as Red Hat stonewalls on restructuring its support contracts.
"I'm certainly not going to waste my money, my shareholders' money and, most importantly, my customers' money on something frivolous like support we won't use," MacAskill said. "It's Red Hat's product. They can sell it for whatever they like, and I get that. But with open source, it's also the community's product. It means I have options -- including free."