Amazon's CTO envisions the EC2 infrastructure turning into a service platform, not just a source of compute cycles.
Werner Vogels, a bear of a man from Amsterdam, with his beard, his sweater, and sport coat making him seem even bigger than he is, paused while literally on the run at Cloud Connect 2011, a UBM TechWeb event, to talk about some of the things happening with Amazon Web Services Elastic Compute Cloud (EC2).
Amazon's goal with EC2 is not to be all things to all people but to stick to providing a basic infrastructure that allows others to select what they want from the cloud. "Most serious applications today have multiple components. An application will combine Java code with Ruby code with an (Oracle) E-Business suite, and bring in something from SugarCRM," he said in an interview.
Amazon Web Services is trying to provide a platform where companies can decide to run some of those components in the cloud and others in the enterprise. In the past, he noted, a "platform" vendor tended to provide elements that were proprietary and locked the customer in. A cloud infrastructure, on the other hand, "is a platform that allows you to mix and match" elements and run them where you choose.
This is the first time I've heard Vogels refer to EC2 as a platform, and platform as a service is one of the acknowledged forms of cloud computing. That term tends to cover Salesforce.com with its Force.com platform, Windows Azure when you use it to run tools and services provided by Microsoft, and Google App Engine, with its tools and gadgets provided by Google. But that's not what Vogels meant.
So far, Amazon hasn't waded into any lock-in platform characteristics -- other than originating Amazon Machine Images at a time when there weren't many alternatives, which I would term "light lock-in." AMIs can be converted to run under hypervisors other than Amazon's customized Xen, and that will be done routinely sometime in the future. Amazon Web Services has not produced development kits and tools that, if you use them, make you a permanent fixture in EC2. Rather, I think, Vogels meant AWS was building out a neutral platform on which many different tools and development services may be built.
In addition to the Heroku and Engine Yard examples for Ruby, he noted SpringSource's Java platform Cloud Foundry runs on EC2, as does the PHP platform, PHP Fog.
At the same time as third parties are building options on top of EC2, Amazon itself is building out specific services that make its cloud easier to use, such as Elastic Beanstalk, CloudFormation, and Simple Notification Service. Whatever the development environment, the resulting application can make use of these services to speed deployment, manage the app components, and scale out services as needed, he said.
His comments on this point underscore a fundamental change going on inside Amazon's infrastructure setting. We tend to think of EC2 infrastructure as static, unchanging compute cycles attached to static auxiliary services, such as S3 storage. In fact, EC2 itself is a rapidly evolving environment, offering more and more services that make using the cloud easier. It added 43 such services in 2009; 50 in 2010, Vogels said, and the pace will continue to accelerate.
Look for AWS and third parties to start making EC2 a more complete mobile development environment. Vogels referred to the example of SimpleGeo, a set of location-aware services for app developers who register for a key to use its SimpleGeo API. Geo-location services would be a natural addition to sit on top of EC2 -- notification services for people on the move, collaboration services for dispersed teams, temporarily disconnected.
I'm beginning to see cloud infrastructure not as just compute cycles but as a core of tightly wound, carefully constructed core services that can be used by different customers in many different ways. SimpleDB was a prototype but the list of possibilities, like the prospects for cloud computing itself, are endless.
Think of everything as a service, Vogels said, and the complexion of infrastructure as a service begins to take on another light. What about the more restrictive definition of infrastructure as a service, including the well established one from NIST, I thought to myself as I heard him say this during his keynote address. But he soon came up with an answer. "We don't give a rat's ass about those models. . . We don't want to go into the platform business (but) let a thousand platforms bloom."
Amazon's skillful building of lean and mean infrastructure services is doing just that.
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.