Amazon Web Services (AWS) recently announced the addition of CloudFormation to their offerings. With this addition, AWS continues to grow from an IaaS provider toward becoming a PaaS provider. Will AWS will become a PaaS provider in terms a consistent programming interface (API) that abstracts the underlying cloud resources? It not likely; certainly not soon. Microsoft’s approach with Azure – start with the platform and then open the infrastructure – is better for true PaaS. AWS offers so many divergent resources that building a consistent API for PaaS is near impossible. From a technical perspective, their best approach might be to adopt (and heavily influence) OpenStack which has been experiencing good growth and adoption recently. That direction is not good for business, however, since applications would be inherently portable to other providers.
So what’s the point of CloudFormation? Amazon’s announcement states that CloudFormation aims to provide “an easy way to create a collection of AWS resources and provision them in an orderly and predictable fashion.” Is this an IaaS or PaaS capability? CloudFormation primarily falls into the Systems Management space which is definitely IaaS. (The fact that AWS does or may expose programmatic interfaces to CloudFormation reaches into the PaaS arena, but it isn’t Cloud Formation’s raison d’être)
This new AWS functionality will certainly benefit SaaS providers. I worked with a SaaS provider a year or so ago which hosted its own servers. Their clientele were Fortune 500-types, so the company hosted a new set of hardware for each new client. If the company were able to host its SaaS in AWS, it would save on capital outlays for new customers. CloudFormation would further cut costs on administrative personnel, freeing people to stand up temporary SaaS environments in AWS, for example, which would facilitate the sale process.
Interestingly, companies wanting to build special purpose (niche) cloud platforms should be able to leverage CloudFormation into their own PaaS. As an example, companies could use AWS to host OpenStack and use CloudFormation for provisioning and management. Such a company may gain enough customers and attention to be gobbled up by Amazon itself.