We’re pairing Compute
Engine with App Engine,” says Peter Magnusson. “But, increasingly, they will be able to work together.”
Google pioneered the art of the
“cloud” infrastructure. But Amazon beat it to the idea of sharing such an infrastructure with the rest of the
world. Six years after Amazon first offered its web services to outside developers and businesses, Google is still playing
catch-up. But it’s intent on making up that lost ground.
Google showed just how much it believes in Compute Engine, Magnusson says, when it tapped Hölzle to introduce the thing at its annual developer conference in San Francisco. Hölzle is the former
UC Santa Barbara computer science professor who joined Google in early 1999 to
oversee the growth on its internal network. At the time, the company had fewer than 10 employees, but he ended up building
a worldwide network of data centers that are among the most advanced on Earth. Google vice president Sundar Pichai calls Hölzle “the person — more than anyone — responsible for building all of Google’s
infrastructure.”
Hölzle
rarely speaks in public — Google views its data center infrastructure as a trade secret best kept hidden from competitors
— but there he was on Thursday, on stage at Google I/O, showing off Google Compute Engine. He sat down with Wired as
well, bringing a shaman-like air to the discussion of data center design.
He wears wire-rimmed glasses, a diamond stud earring, a closely cropped
beard, and a slight uplift of dark hair tinged with gray, and — having grown up in Switzerland — he speaks with
just a hint of an accent. When another Googler mispronounces his name, he says it’s to be expected. “There’s
an old joke,” he says. “During World War II, all the other countries knew the password for the Swiss army. But
it didn’t matter because they couldn’t pronounce it.”
Compute Engine, Hölzle tells us, is a natural extension of the
infrastructure he and his team have spent the last 13 years piecing together. Google hasn’t just set up some new machines
and tossed on some hypervisor software that runs virtual machines. Like App Engine before it, Compute Engine runs atop the
unified software platform that spans Google’s roughly 40 data centers worldwide.
Hölzle and company describe the Google infrastructure as “warehouse-scale computing.” The idea is that each data center — running a common
software platform — behaves like a single machine, running massive online applications and providing these applications
with additional resources as needed. Google Compute Engine was built atop its existing software platform, taking advantage
all the work that came before.
“Compute Engine benefits from a lot of the code we’ve already written,” Hölzle says. “If
you look at the product and you look at the lines of code that had to be written for it to work, 80 or 90 percent of it is
what we had already written for our internal infrastructure.”
Google has publicly discussed part of its overarching software platform but not
others. Hölzle declines to go into much detail, but he does say that Compute Engines runs atop Google’s existing
“server cluster management” service, which has long allowed Google internal engineers to rope together CPU power
and memory from across its network of servers and apply it to the task at hand. According to M.C. Srivas — a former
Google engineer — this service is known
as Borg.
What Hölzle will say is that Compute Engine was
built using the KVM hypervisor, open source software that was built to run virtual machines atop the Linux operating system.
KVM, or Kernel-based Virtual Machine, is a little different from the XEN hypervisor that underpins Amazon’s service
or the VMware vSphere hypervisor that drives applications inside so many other data centers.
Whereas vSphere and
Xen run right on the server hardware, KVM runs inside an existing operating system at the “user level,” meaning
it operates much like any other piece of software running on the OS.
In short, Google has added Compute Engine atop its sea of Linux machines in much
the same way it would add any other service. “To our cluster management system, KVM just looks like another task, such
as a search task,” says Hölzle. “That’s what lets us reuse a lot of our existing infrastructure.”
The result, according to Hölzle,
is that — compared to competitors — Google Compute can provide 50 percent more compute power at the same cost.
“You don’t have to choose between scalability and price,” he says, arguing that Google is far more adept
at getting those raw virtual machines to work in concert and solve a common task.
Amazon did not respond to a request for comment. But Jason Hoffman —
the chief technology officer at Joyent, a cloud computing outfit that also uses the KVM hypervisor to serve up virtual machines
across the net — disputes Hölzle’s cost-per-dollar claims, saying that the Google’s price list indicates that Compute Engine actually more expensive than Amazon or Joyent. “I just don’t get it,”
he says.
Mathew Lodge
— vice president of cloud services at VMware, which offers a software platform called vCloud that lets outside outfits
build services similar to Joyent and AWS and Google Compute Engine — also questions how reliable Google’s service
will be.
He claims that vCloud services are less susceptible to downtime because it can be updated on the fly,
while virtual machines are still running. But as with its other services, Google offers a service level agreement that promises
99.95 percent uptime, and at least in recent years, some Google services, including Gmail, have exceeded this guarantee.
Joyent built a new version of the
KVM hypervisor for the Sun Solaris-based operating system that underpins its service, and Hoffman has always said that this
setup is faster than Xen, the hypervisor used by Amazon. But Simon Crosby, who oversaw the creation of Xen, will tell you
that any performance advantage is minimal and that it continues to shrink. The various
players also disagree on whose hypervisor is more secure, but Hölzle’s primary argument for Google Compute Engine
— after running this sort of thing for more than 10 years within the company — is that Google has more experience
than most.
However
Google Compute Engine compares to the competition, Google is intent on making up lost ground against Amazon, whose services
now run as much as 1 percent of the internet, according
to one estimate. Compute Engine won’t
replace App Engine. It will complement App Engine. “You can use one or the other or both,” says Greg D’alesandre,
who oversees App Engine. “We offered App Engine for a while, and what we realized is that every once in a while, there
are going to be things that are simpler and more straightforward to do with VMs than to do with App Engine.”
According to Hölzle, App Engine
is now running over 1 million active applications, handling 7.5 billion hits a day and 2 trillion data store operations a
month. This makes the service “the largest public NoSQL data store infrastructure in the world,” referring to
the new-age database model that spreads vast amounts of information across a sea of distributed machines.
But
with Compute Engine, the company wants to tackle more than NoSQL...........................