This post was originally authored by Aliza Earnshaw, managing editor at Puppet Labs.
Many organizations offer APIs. The really interesting trend is that APIs are being used to automate tuning of cloud-based applications to meet varying demands. Pete Sonsini, writing for TechCrunch, describes this promising trend in configuration management.
Sonsini looks forward to more cloud-based applications being created with two sets of automation attributes similar to those in software-defined networking. Almost every application delivered through the cloud these days has an API for getting data in and out of the application and for providing its core functions through a programmable remote interface. Sonsini sees this as similar to the data plane in a software-defined network (SDN), which moves packets as needed within a network. APIs do the same thing in cloud architecture.
Cloud services often analyze data from end nodes and then modify the behavior of those nodes, just as the control plane in SDN modifies the behavior of the network. This is the layer that enables you to change the behavior of the application, collect statistics about application use, tune resource consumption, and take on other configuration management tasks. But what’s often missing in cloud architectures is automation — that is, configuration management services that let you control, tune, monitor and manage the application itself.
The author posits a future world where cloud-based applications have intelligent security systems, which would use big-data techniques to help determine if the system is under attack and then share that intelligence across the cloud. The same sorts of tools could be applied to the task of keeping cloud system costs under control, noticing when application components are idle so that they can be spun down to save resources and money.
The first wave of cloud-based applications deliver their value in part by providing easy-to-use APIs. The future of cloud automation points to a world where APIs are also in place to control and coordinate configuration management across an entire cloud infrastructure.