Es gab eine Reihe von Faktoren in der Entscheidung, Sie werden nicht überrascht sein zu lernen. :-)
Ein wichtiger Faktor war die Kompatibilität zwischen KVM und bestehenden Isolierungs-/Skalierungsprozessen bei Google. (cgroups aka "containers") Dadurch kann Google die gleichen Mechanismen wiederverwenden, die es verwendet, um die Leistung von Anwendungen wie websearch und gmail sicherzustellen, um eine konsistente Leistung zwischen VMs zu gewährleisten, die auf dem Computer geplant sind. Dies hilft GCE, störende Nachbarprobleme zu vermeiden.
Wie Sie wahrscheinlich wissen, hat Google eine lange Geschichte der Linux-Kernel-Entwicklung; Mit KVM kann Google dieses Talent für GCE nutzen. Darüber hinaus ermöglicht die in KVM aufgeteilte Hypervisor/Hardware-Emulation (wobei der von KVM implementierte Hypervisor nur einige wenige Low-Level-Geräte/Funktionen emuliert und die verbleibende Emulation durch den Prozess, der/dev/kvm öffnet, die Entwicklung von virtuellen Geräten ermöglicht) Diese haben Zugriff auf die gesamte Palette von User-Space-Software, einschließlich Infrastruktur wie Colossus und BigTable, wo nötig.
Xen, VMware und HyperV sind auch großartige Hypervisoren und Maschinenemulatoren, aber hoffentlich gibt das einen Einblick in einige der Gründe, warum KVM gut zu Google passt.