Cloudscaling CTO Randy Bias jumps into fray, but does it really matter which private cloud open source code is the most "Amazon like"?
In his blog post, Bias argued against claims that CloudStack is the most viable open source project because it is closest in design to Amazon Web Services.
Sameer Dholakia, VP and general manager of cloud platforms at Citrix, was interviewed by GigaOm writer Derrick Harris when the CloudStack project was announced. Dholakia predicted the winners in the era of cloud computing will be those who design "from the ground up with a true Amazon-style architecture, proven at scale in real production clouds, compatible with Amazon architecture ..."
So Amazon-ness is the litmus test for cloud success and CloudStack has got it, according to Dholakia. Furthermore, Dholakia told Harris that Citrix was tired of waiting for OpenStack to get organized and mature its technology. CloudStack was a year to two years ahead of OpenStack and the gap wasn't closing, he's quoted saying.
Bias' blog deconstructs such statements, phrase by phrase. For example, what's "Amazon-style architecture?" Many would like to claim an Amazon-style architecture because they have end-user self provisioning, a standard x86 data center infrastructure, perhaps automated billing. But these attributes apply to anyone meeting the definition of cloud infrastructure service provider.
One of the ways that Citrix might claim compatibility is through the Xen hypervisor. Citrix produces XenServer, the commercial hypervisor based on open source Xen, and it builds cloud workloads using it. Amazon Web Services was built on Amazon's proprietary variant of Xen, which, nevertheless, probably still closely resembles Citrix XenServer. To me, that gives Citrix a claim on compatibility, but that alone is not enough.
Bias noted that CloudStack deployments have been influenced by his successful implementation at KT. In that case, Arista switches were used for building a layer-2 hardware virtual area network. But he noted that Amazon Web Services doesn't provide hardware VLANS; it will add VLAN service only if you contract for Amazon's Virtual Private Cloud. Default AWS networking is "a flat, layer-3 network," he wrote.
"Default CloudStack deployments aren't network compatible with AWS," he concluded. That means some routine uses of CloudStack at an implementation such as KT, with an extra security measure built into the network, are not available in plain vanilla AWS. Not a knock on Amazon because it offers them as an added service, just a fundamental architectural difference in approach.
KT's CloudStack implementation also included an in-rack storage area network using NexentaStor. Bias noted that AWS also doesn't use a storage area network for customers' standard VMs; rather it uses direct-attached storage on its servers "that is surfaced as ephemeral storage for each VM." That's another way of describing Amazon's assignment of a limited amount of nearby disk space as the virtual machine does its work.
As is typical in Amazon's low-cost infrastructure, no guarantees are provided for the persistence of local VM storage, noted Bias, meaning if the hardware fails, the user has either taken its own backup measures or the data is lost. CloudStack, on the other hand, uses XenServer clusters to guarantee persistent storage of the runtime data, meaning the same conclusion about CloudStack as in the first example: "The storage architecture for CloudStack is different. OpenStack, in comparison, uses a default storage model which is exactly like AWS," Bias wrote.
Another major difference is how CloudStack is architected as "a single, monolithic piece of Java code. Most of the code resides in a single .jar file and runs on a single Java app server by default," wrote Bias, hitting a weakness of CloudStack design under the subhead, "1999 called and wants its application architecture back." Amazon cloud operational software is built in modules that can be distributed to different physical servers and distributed application servers in a services-oriented architecture fashion. "The core software architecture is not similar at all between AWS and CloudStack," Bias wrote. Indeed, most startups building private cloud software are following the Amazon model of services in independent modules, not a single, complex file.
Multicloud Infrastructure & Application ManagementEnterprise cloud adoption has evolved to the point where hybrid public/private cloud designs and use of multiple providers is common. Who among us has mastered provisioning resources in different clouds; allocating the right resources to each application; assigning applications to the "best" cloud provider based on performance or reliability requirements.