The Cloud in Review From the Desk of Nathaniel Rushfinn A Discussion on Cloud Operating Systems Today, nearly every vendor offers a cloud computing solution. While CA Technologies uses the NIST definition of cloud computing, for the sake of this discussion, I will categorize offerings into three groups: Cloud Plus, Cloud Support, and Cloud Operating Systems. “Cloud Plus” is the group whose vendors simply append the word “cloud” to existing products. Practically every company, including CA Technologies, does this for cloud switches, cloud backup systems and cloud security products. In Cloud Support, products that support cloud include network management solutions that have been upgraded to support server virtualization or security products that protect data-in-motion in the cloud. The third group, Cloud Operating Systems, contains solutions that provide the means to actually build a “cloud” and provide cloud services. These solutions can be fully hosted or provided for use on-premise. Cloud computing requires that a dynamic pool of resources be available for provisioning. This is the primary means to deliver on-demand, pay-per-use, and elastic services. The fundamental pieces of cloud computing solutions are: compute resources, storage resources, and network resources. In addition some solutions provide additional components such as an operating system, a service bus, or a distributed database -- all designed to support cloud computing. COMPUTE ˳ STORAGE ˳ NETWORK ˳ SERVICE BUS ˳ DATABASE ˳ OPERATING SYSTEM ˳ HYPERVISOR Amazon, Google, Microsoft and Fujitsu are the giants in cloud computing. Other notable players are Rackspace, NASA, Eucalytus, Ubunta and Red Hat. In this article, I will compare and contrast the solutions that fall into the third group -- solutions that provide all of the fundamental components of cloud computing as a cloud operating system. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 1 Note: When doing a Google search on Cloud Operating systems, you might find results pertaining to a lightweight desktop environment designed to run in the cloud. The most common examples of this are EyeOS and iCloud. In this article we will not be discussing these products but only those that enable data center-like operations in the cloud. Cloud Computing Operating System Vendors Microsoft Azure “Azure ‘Microsoft’s operating system for the cloud’: Windows Azure offers a simple, reliable, and powerful cloud computing platform that enables you to focus on business opportunities as opposed to operational hurdles” Microsoft Azure is a hosted solution which, essentially, cloud-enables Microsoft .NET. Microsoft Azure is one of the most complete cloud solutions on the market. Microsoft Azure provides compute, storage and network resources, to which they add their programming tools, an operating system, a database, a hypervisor and a service bus. The power of this solution is its compatibility across the entire development stack. An important aspect of Microsoft Azure is that it provides in-depth support for the most popular OpenSource development languages integrated into their service bus. The Azure architecture contains what they call AppFabric, for connectivity in the cloud. The solution has programmatic support for REST, SOAP and WS-* protocols. SDKs are currently available for Java, Ruby and PHP, delivering on the promise of open standards support. In the US, Microsoft Azure is available only in Microsoft-owned data centers, while in the Global markets, Microsoft has a special arrangement with Fujitsu to offer it in their data centers. Commentary Microsoft has the most complete cloud offering in the market. By hosting the solution, they enable near perfect vendor lock-in. While the solution is based on 100% Microsoft products, it deserves respect for its completeness and in-depth support for cloud connectivity protocols and OpenSource products. Compare and Contrast Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 2 Currently, Azure is provided only in a fully hosted model, whereas AppLogic is offered as a complete cloud-in-a-box software solution. Azure provides everything from operating systems, databases and programming languages, and while it very comprehensive it is also very complex. The AppLogic solution focuses on a single task—rapidly deploy cloud services (applications) into the cloud. AppLogic is hardware and platform agnostic and is designed to avoid vendor lock-in. AppLogic uses industry recognized Xen hypervisors, which allows applications to run on both Windows and Linux operating systems. Azure provides all of the tools necessary to develop and run Windows applications. AppLogic on the other hand provides a platform to run any business application. All of the business logic, software configurations and even the development stacks like .NET and JAVA are fully encapsulated. AppLogic is purchased as a software license, but is also offered by global service providers as a hosted service like Azure. Amazon EC2 Amazon Elastic Compute Cloud (Amazon EC2): Amazon EC2 is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers. Amazon Elastic Cloud Compute is almost synonymous with cloud computing. Today, Amazon is a fully hosted solution built on industry tools. The core component of Amazon EC2 is the Amazon Machine Image (AMI). AMI is a hosted solution of the Xen hypervisor. Amazon is a complete cloud solution, and not simply a virtualization solution. They offer all of the core cloud components, plus their own Amazon Simple DB and programmatic access to MySQL through the Amazon Relational Database Service. They have created a complete cloud solution by providing computer and storage resources with the necessary network infrastructure, and a rich set of web services and APIs that provide everything from basic machine instances sophisticated cloud management tools. Amazon EC2 is based on the Xen hypervisor, so support is a sub-set of Xen compatibility. EC2 currently supports a variety of operating systems including: RedHat Linux, Windows Server, openSuSE Linux, Fedora, Debian, OpenSolaris, Cent OS, Gentoo Linux, and Oracle Linux. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 3 Today all machine images must run on a Xen hypervisor, though Amazon does provide a tool called VMimport that can import VMware virtual machines. However, today it is currently limited to Windows 2008. Commentary Amazon was, in my opinion, the first vendor to offer a complete cloud solution to the public. The story goes that they developed these tools to run their own operation and then decided to offer them as a service. The Amazon solution continues to mature at a rapid rate offering more and more functionality as web services. The best indicator of Amazon’s success is the wide support and connectivity to Amazon from other vendors. Many cloud solutions support the use of Amazon EC2 as part of their own cloud offering. Compare and Contrast EC2 and AppLogic use very similar approaches to delivering cloud. Both utilize the Xen hypervisor for machine instances. They both use the idea of templates to easily construct machine templates. Each has storage and network resources available in a dynamic pool for easy provisioning of single and complex apps. Amazon provides all the basic building blocks for customers to build their cloud services. Amazon today is offered only as a 100% hosted solution, while AppLogic is offered as a turnkey software solution that customers can install on their own commodity hardware. This means that AppLogic can be deployed completely within customer firewalls, allowing federal and intelligence agencies to manage their own private or virtual private clouds. While AppLogic is a software solution, many service providers do offer AppLogic as a fully hosted service, removing the need for dedicated hardware. Amazon EC2 is a very flexible solution. In many ways, it is similar to Azure in that developers have access to APIs and web services to build very specific cloud services. With this flexibility though comes a need for programming expertise. In contrast AppLogic includes ready-to-use appliances for high availability, replication and disaster recovery appliances so that customers can insure their applications are available anywhere in the cloud with programming experience. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 4 Amazon is a complex solution with many pieces and interfaces. AppLogic provides a single interface to do one thing quickly —deploy and provision complex applications as easily as deploying a single machine instance. VmWare “VMware customers typically save 50-70% on overall IT costs by consolidating their resource pools and delivering highly available machines with VMware vSphere.”* * Source: http://www.vmware.com/virtualization/virtual-infrastructure.html VMware is the undisputed leader in server virtualization. In 1999 VMware shipped their first product, Vmware Workstation. This was quickly followed by GSX and ESX servers and VMware vCenter and vMotion. While virtualization had been used in other settings, VMware was the first company to deliver a type 1 hypervisor with full translation for windows. Other systems required that the Windows operating be modified. Their advanced hypervisor technology and powerful server tools allowed them to dominate the industry with more than 190,000 customers. As a result, VMware has become synonymous with virtualization. In server Virtualization, a hypervisor lets you share the resources of a single physical machine across multiple virtual machines or guests. In virtual infrastructure, the idea is expanded beyond a single physical server. The Vmware virtual infrastructure not only provides the hypervisor but also manages all of the storage, network and computing resources. Additionally it provides automation for provisioning and disaster recovery. After nearly 10 years Vmware renamed ESX Server v4.0 to Vshpere. In 2008, at about the same time, VMware began the transformation from a virtualization company to a cloud company. These acquisitions were extensive including: Integrin, TriCipher, Zimbra Terracotta, Genstone Systems, Mulesoft, Sophera, Heroku, Engine Yard, Skyway Software, Chordian, and SpringSoft Their acquisitions varied from open source application development to IT management solutions. Most technologies went into expanding the core of vCenter and their hypervisor technology. In addition, they also purchased companies like SpringSource and Zimbra. SpringSource, an open source group, provides training and support Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 5 for Java web programming frameworks Spring, Grails and the programming language Groovy (note: Groovy and Grails is akin to Ruby on Rails). SpringSource has strategic partnerships with Salesforce.com and Google. And Zimbra is an open source email collaboration platform akin to Microsoft Exchange. In 2010 VMware launched vCloud Director. VMware has now positioning itself as the clear leader in Cloud Computing. With their flagship product vSphere coupled with vCloud, they now provide cloud computing solutions for public, private and hybrid cloud. Commentary VMware clearly invented virtual computing in the Windows x86 environment. For almost a decade, VMware ESX server remained unchallenged as the only viable platform for the enterprise. Today, VMware finally has competition from XEN server, but organizations are still cautious of deployment in mission critical environments. Despite its total dominance in the hypervisor world, VMware has transitioned to cloud computing with a complete solution. Reviewing our definition of a cloud operating system, VMware is complete. They of course provide a hypervisor as well as management of virtualized storage network resources. They do not provide an operating system, but their hypervisor ensures 100% compatibility with all the major OSes. VMware does not provide a database as part of their stack, but they do provide support and certification for running databases in their virtual machines. Finally, as part of their open source acquisitions, VMware does have a SOA bus that they leverage in building vApps. VMware’s solution is built on solid proven technology, but it is not revolutionary. Perhaps they summarize it best themselves, “VMware an evolutionary approach to an IT revolution” Compare and Contrast AppLogic and VMware are most similar in what they offer - yet very different in how they deliver it. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 6 Both solutions provide a means for public agencies to build their own public, private and community clouds. Both are complete solutions that install on bare-metal servers and create a virtual infrastructure to deploy business applications. AppLogic has the Global Catalog that contains virtualized business applications. VMware has vCloud Director, their catalog and vApps, or virtual appliances. Both solutions leverage a type 1 hypervisor. AppLogic currently uses the XEN hypervisor and is releasing support for the VMware hypervisor vShere in version 3.0. Both solutions use a pool of virtual compute, storage and network resources to rapidly provision resources, and both solutions offer HA and DR solutions. Here is where the similarities stop. By its own admission, VMware is an evolutionary approach. AppLogic maintains a revolutionary approach. VMware is currently seen as the most solid hypervisor technology on the market. Their cloud solution makes the virtual machine the unit of measure. Vmware builds everything from the bottom up, and applications are multiple virtual machines in an OVF format that are grouped together and published in a catalog. From an infrastructure perspective, VMware uses a solid established approach of attaching all of the servers with Fibre Channel to a SAN. While reliable, it does require proprietary hardware, and it is expensive. From a server perspective, VMware users typically use fast and powerful servers with lots of memory. They do this, so that they can run as many virtual machines as possible to maximize their investment in VMware. To provide resiliency and disaster recovery, these powerful servers are clustered together. In contrast, the power and beauty of AppLogic is its simplicity. From the beginning, it was designed to be single complete solution for building cloud. AppLogic is a fully object-oriented platform and not a collection or grouping of parts. In AppLogic, Virtualized Business Services encapsulate everything needed to run that application. By using AppLogic’s visual designer, an administrator can move, copy, and resize a business service with the click of a mouse. With AppLogic, not just the virtual machine is abstracted from the hardware, the entire business application is abstracted from the hardware. It is this revolutionary approach that allows organizations to move their applications in and around the cloud easily. AppLogic takes a completely different approach when it comes to infrastructure. AppLogic uses only commodity Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 7 servers. It requires no expensive SAN or Fibre Channel devices; it does not require RAID controllers or any type of NAS. AppLogic relies on a grid of dissimilar hardware rather than clusters of identical machines. The AppLogic grid easily scales up and down. When a new commodity server is added to the grid, new storage and compute resources are available automatically. VMware is the industry standard hypervisor. Since 2008 they have acquired more than a dozen companies to piece together a solution for cloud computing. AppLogic is a single application with a core kernel and one GUI. It is one solution that provides a turn-key platform for managing and deploying applications in the cloud. Eucalyptus v2.0 “Eucalyptus Systems delivers private cloud software. This is infrastructure software that enables enterprises and government agencies to establish their own cloud computing environments. “ Eucalyptus provides a complete cloud solution by supporting many different types of resources. Their cloud controller supports access and control to both public and private cloud resources, including machine images, storage devices, a service bus and access control with a data base. It even supports the Amazon API. The support for resources is very extensive. For computer resources, Eucalyptus supports multiple hypervisors including Xen, KVM, ESX and Windows Machine Images. They have support for all types of storage, including NAS, SAN, and iSCSI. Their controller is even API-compatible with Amazon EC2 for both machine instances and storage. Commentary Eucalyptus is a complete solution with the ability to dynamically provision a wide array of cloud resources. The unique controller approach provides great flexibility in creating private and virtual private clouds. Because their architecture supports the use of different hypervisors, storage and networking, customers avoid vendor lock-in. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 8 Compare and Contrast Eucalyptus is similar to AppLogic, in that it is a purchased solution which allows customers to build and host their own private clouds. It provides access to all of the core resources to manage a cloud solution. Eucalyptus is very flexible, giving the customer the option to choose storage and networking and compute resources. The flexibility requires that users make more choices and do more configuration. AppLogic is different in this regard in that it provides a turnkey solution with storage, networking, and hypervisor support all built in without the need to build and configure the underlying infrastructure. With Eucalyptus, customers can choose but then must assemble and configure all of the components. With AppLogic, customers only need a usable block of commodity servers. AppLogic turns these resources into a pool of resources, supplying the storage, volume management, high-availability, and replication all under the hood. Red Hat “Red Hat delivers the infrastructure needed for reliable, agile, and cost-effective cloud computing. Red Hat's cloud vision is unlike that of any other IT vendor.” “In a market full of hype, Red Hat makes the cloud real and compelling. Today.” The Red Hat cloud solution is comprised of their standard products offerings: Red Hat Enterprise Linux, Enterprise virtualization and JBoss Enterprise Middleware. Red Hat has a certified cloud provider program. Their current partners include Amazon, IBM and Savvis, who run Red Hat products. In the NIST cloud model, they offer a PaaS Cloud Solution which is based on offering a flexible application deployment environment. The solution is based on Red Enterprise and JBoss. Their portability model is based on a Java Virtual machine and the ability to use programming frameworks like Seam, or Spring, Struts, Ruby etc. Red Hat pitches that by using open standards and OpenSource development tools that there is no vendor lock-in. They also make a point that “Salesforce.com cloud is built on Red Hat” Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 9 Commentary Red Hat is the undisputed leader in the enterprise OpenSource market. Red Hat Enterprise is used in Federal and DoD data centers around the world to run mission critical apps. With the purchase of JBoss, Red Hat now has a Service Oriented Architecture (SOA) and a service bus. With the addition of a hypervisor, they have positioned themselves with the ability to run the cloud. Red Hat is a great operating system and JBoss is an excellent Java application server; but even with the addition of KVM, this doesn’t really put them in the same category as Microsoft, Amazon or Eucalyptus. Red Hat provides some very important tools that can be used in building a cloud solution, but by my definition, they are not a cloud operating system. That fact that SalesForce.com uses Red Hat doesn’t equate Red Hat to Cloud. Compare and Contrast Red Hat Enterprise is an operating system with support for a Hypervisor. AppLogic uses the Xen hypervisor and provides support for Red Hat Enterprise as part of the application stack. Red Hat offers JBoss as its strategy for application portability. AppLogic supports JBoss, as well as other Java application development stacks. JBoss is provided as a ready virtual image in the AppLogic catalog. AppLogic supports and offers Red Hat and JBoss as components in platform offerings. Thus there is little to compare and contrast. UBUNTU Enterprise Cloud (UEC) “The Ubuntu Enterprise Cloud (UEC) brings Amazon EC2-like infrastructure capabilities inside the firewall. The UEC is powered by Eucalyptus, an open source implementation for the emerging standard of the EC2 API” Commentary Ubuntu gets an honorable mention. They appear poised to bring the simplicity and love of Ubuntu to their followers around the world who want cloud. Ubuntu uses Eucalyptus paired with Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 10 its own operating system. With these two powerful tools any “geek” can assemble a quality cloud. The capabilities of Eucalyptus have already been discussed, so there will be no compare and contrast. Rackspace & OpenStack “OpenStack is a collection of open source technologies delivering a massively scalable cloud operating system.” OpenStack was started as a partnership between by RackSpace and NASA. OpenStack is based on NASA’s Nebulae software, and is offered by Rackspace Hosting as a service. The code is available for download under the Apache 2.0 OpenSource licensing agreement at www.openstack.org. OpenStack addresses cloud in the same manner as Amazon. They have two interrelated projects: OpenStack Compute and OpenStack Object Storage. OpenStack Compute manages the cloud fabric. This currently means making machine images available as cloud resources. They currently support Xen, KVM, and QEMU. OpenStack Object Storage uses clusters of commodity servers to create redundant, scalable storage for the cloud compute fabric. It is not an operating system but a persistent store for machine images and data. Commentary The forces of Rackspace and NASA, combined with support from industry leaders like Dell, make the OpenStack project one of the most formidable competitors on the market. While OpenStack is its infancy compared to Amazon, the power of the brain trust at NASA and the OpenSource community at large, could make OpenStack one of the most powerful cloud Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 11 computing projects. The combination of OpenSource projects, the scientific community and the private sector make this the solution to watch, Compare and Contrast When OpenStack is offered by Rackspace, it provides all of the benefits of a fully hosted solution like Azure. The fact that the core of the software is freely available and supports all popular hypervisors and operating systems circumvents the problem of vendor lock-in. OpenStack positions itself as a cloud operating system to position large groups of virtual private servers rapidly. With its use of object machines and object storage, it is the solution most similar to AppLogic. AppLogic and OpenStack are similar in their approach to using an object-oriented model. AppLogic takes this approach further and encapsulates more components at a higher level on the solution stack. AppLogic not only provisions virtual machines along with their requisite storage, it rapidly provisions all three types of cloud services in the NIST model. AppLogic can easily provide basic virtual machines with storage and networking as Infrastructure-as-a-Service (IaaS). It can just as easily provide Platform-as-a-service (PaaS) with all required development platform like .NET, LAMP, Java. And finally can provide Software-as-a-Service (SaaS) by easily provisioning complex applications (SaaS) with the same ease as a single virtual machine object. OpenStack is an OpenSource project, making it freely available to everyone. AppLogic fully supports all OpenSource projects as ready application images in the AppLogic catalog. As commercial software, AppLogic is offered exclusively by CA Technologies and is backed up with the support of a $ 4 Billion dollar company. Copyright © 2010 CA. All rights reserved. CA confidential and proprietary information for CA internal use only. No unauthorized copying or distribution permitted. Page 12