Joyent's cloud management software
Joyent is one of the Olympians in the cloud computing pantheon, as defined in Gartner's 2013 Cloud IaaS Magic Quadrant. Joyent offer compute and storage services to the sophisticated customer, such as the message provider with millions of customers, the e-commerce company where latency means lost sales, and the big data specialist that must analyze terabytes of data.
Joyent offer both public cloud services and software for managing private clouds. Both contain the same technology stack - Joyent package up their cloud management software and sell it as the SmartDataCenter. Ben Wen, product marketing VP at Joyent, said, "We own the entire stack. We have the luxury of offering public cloud, private cloud and hybrid cloud. We're offering the exact same codebase with the exact same interfaces".
How did Joyent build a high performance cloud service? Joyent didn't build their cloud service on the OpenStack platform (like HP did), or CloudStack (like Sungard did) or vCloud (like Colt did). Neither did Joyent strip away the virtualization layers and offer bare-metal IaaS, like SoftLayer did.
The Joyent engineers decided to build their data center of the future by combining an unusual set of industrial-strength products. The four Joyent Cloud Data Centers run a suite of products whose family tree stretches back to a titan of Internet history - Sun Microsystems.
From Solaris to SmartOS
In the web 1.0 world – the world of the dot-com bubble - Sun Microsystems was king. Their Solaris OS was superb UNIX software and, combined with their Sparc hardware, supplied rock-solid computing power to the enterprise world. Every web company seemed to run a stack of Sun's pizza box machines.
Now it's two decades later and they are all gone. The dotcom bubble burst, Oracle assimilated Sun and Sun Solaris is long gone. Descendants of Sun technology are scattered through the Internet industry.
One of the many good things to emerge into the open source world from Sun was OpenSolaris in 2005. illumos was forked from the UNIX-like OpenSolaris OS (no, you can't call it UNIX) in 2010. illumos is the core of an OS – a kernel and associated low-level bits and pieces. Many distributions have grown up around illumos, similar to the many distributions in the GNU/Linux ecosystem. Ubuntu, RHEL, and SLES use GNU/Linux; and OpenIndiana and Dyson use illumos. Joyent's engineers created the distro SmartOS for running their clouds.
Joyent's technology stack
In addition to illumos, SmartOS contains other building blocks that started life at Sun.
- DTrace for real-time problem troubleshooting
- Zones for virtual machine isolation
- ZFS for the file system
Another major piece of SmartOS is KVM (Kernel-based Virtual Machine), the software that turns a Linux kernel into a hypervisor. Joyent engineers ported KVM from Linux to illumos, to provide their virtual machines.
Wen described how Joyent has the right people in place to manage this complex technology stack. "Joyent employ two core committers of node. We did employ the author, Ryan Dahl, until recently. We employ Sun alumni - the author of DTrace is our SVP of engineering, Brian Cantrill. You can tell the technology chops of the team because they don't just work in userland Linux – they work on the kernel".
Joyent for customers
All this clever engineering built into Joyent's compute and storage services appeals to developers and other technology nerds – the kind of people who understand what "asynchronous non-blocking IO" means, and even why it's a good thing. Developers can even look at the source code that powers Joyent's cloud - much of the technology stack is open source and available on github.
You've read about the engine that powers Joyent's cloud service. If you are one of those high-performance-seeking customers, sit in the driver's seat and take a test ride. Exploit your customer power with Joyent's free trial. Try it and decide for yourself.
Nick Hardiman builds and maintains the infrastructure required to run Internet services. Nick deals with the lower layers of the Internet - the machines, networks, operating systems, and applications. Nick's job stops there, and he hands over to the designers and developers who build the top layer that customers use.