San Diego, CA: Most Linux people know that Google uses Linux on its desktops as well as its servers. Some know that Ubuntu Linux is Google's desktop of choice and that it's called Goobuntu. But almost no one outside of Google knew exactly what was in it or what roles Ubuntu Linux plays on Google's campus, until now.
Today, August 29th , Thomas Bushnell, the tech lead of the group that manages and distributes Linux to Google's corporate desktops unveiled Goobuntu from behind Google's curtain at LinuxCon, the Linux Foundation's annual North American technical conference, First things first, can you download Goobuntu to run it yourself? Well yes and no.
Bushnell explained that “Goobuntu is simply a light skin over standard Ubuntu.” In particular, Google uses the latest long term support (LTS) of Ubuntu. That means that if you download a copy of the latest version of Ubuntu, 12.04.1, you will, for most practical purposes, be running Goobuntu.
Google uses the LTS versions because the two-years between releases is much more workable than the every six-month cycle of ordinary Ubuntu releases. Besides, Google also tries to update and replace its hardware every two-years so that syncs nicely as well.
Why Ubuntu, rather than say Macs or Windows? Well you can run those too. Bushnell said, “Googlers [Google employees] are invited to use the tools that work for them.. If Gmail doesn't want work for them, they can use pine [an early Unix shell character-based e-mail client] that's fine. People aren't required to use Ubuntu.” But, Goobuntu use is encouraged and “All our development tools are for Ubuntu.”
Googlers must ask to use Windows because “Windows is harder because it has 'special' security problems so it requires high-level permission before someone can use it.” In addition, “Windows tools tend to be heavy and inflexible.”
That said, Bushnell was asked why Ubuntu instead of say Fedora or openSUSE? He replied, “We chose Debian because packages and apt [Debian's basic software package programs] are light-years ahead of RPM (Red Hat and SUSE's default package management system.]” And, why Ubuntu over the other Debian-based Linux distributions? “Because it's release cadence is awesome and Canonical [Ubuntu's parent company] offers good support.”
Yes, that's right. Google doesn't just use Ubuntu and contribute to its development, Google is a paying customer for Canonical's Ubuntu Advantage support program. Chris Kenyon, who is Canonical's VP of Sales and Business Development, and was present for Bushnell's talk confirmed this and added that “Google is not our largest business desktop customer.”
So, what about the desktop itself? Is everyone required to use Unity, Ubuntu's popular but controversial desktop? Nope.
When asked about Unity use, Bushnell said, “Unity? Haters gonna hate. Our desktop users are all over the map when it comes to their interfaces. Some use GNOME, some use KDE, some use X-Window and X-Terms. Some want Unity because it reminds them of the Mac. We see Mac lovers moving to Unity.” There is no default Goobuntu interface.
What there is though is "tens-of-thousands of Goobuntu users. This includes graphic designers, engineers, management, and sales people. It's a very diverse community. Some, like Ken Thompson, helped create Unix and some don't know anything about computers except how to use their application.”
To manage all these Goobuntu desktops, Google uses apt and Puppet desktop administration tools. This gives the Google desktop management team the power to quickly control and manage their PCs. That's important because, “A single reboot can cost us a million dollars per instance.”
That said, desktop problems , even on Linux, will happen. As Bushnell said “Hope is not a strategy. Most people hope that things won't fail. Hoping computers won't fail is bad You will die someday. Your PC will crash someday. You have to design for failure.”
This is where Goobuntu's 'special sauce' appears. On Google's desktops, “Active monitoring is absolutely critical. At Google we have challenging demands, we're always pushing workstations to their limits, and we work with rapidly moving development cycles.”
On top of this, Google has very strict security requirements. As Bushnell observes, “Google is a target Everyone wants to hack us.” So some programs that are part of the Ubuntu distribution are banned as potential security risks. These include any program “that calls home” to an outside server. On top of that Google uses its own proprietary in-house user PC network authentication that Bushnell says is “pushing the state of the art in network authentication, because we're such a high profile security target.”
Put it all together: the need for top-of-the-line security, high-end PC performance, and the flexibility to meet the desktop needs of both genius developers and newly-hired sales representatives, and it's no wonder that Google uses Ubuntu for its desktop operating system of choice. To quote, Bushnell, “You'd be a fool to use anything but Linux.”