Sergey Nivens - Fotolia
When enterprises choose to migrate to cloud computing, configuration management does not just disappear. In fact, configuration management becomes more important in cloud -- especially when an organization uses multiple cloud providers -- because it helps track and control changes in software.
Like they would with on-premises tools, organizations use cloud configuration management tools to ensure proper control over the resources required to deliver services. These tools can also provide information about how exactly resources are configured, as well as the relationships between resources.
But enterprises face an important choice: use the native configuration management services in a public cloud platform or employ a third-party tool, such as Ansible and CFengine. The choice is not an easy one. Native cloud configuration management tools cause an enterprise to become more dependent on its public cloud provider, increasing the risk of vender lock-in. For example, when an enterprise uses two or more public clouds, such as Amazon Web Services (AWS) and Google, the native configuration tool will not work well across both platforms.
Configuration management options
Some of the most common cloud configuration management tools from third parties and cloud providers include:
1. AWS Config
2. Microsoft System Center Configuration Manager
3. Google Cloud Platform's autoscaler
4. Google Cloud Platform instance groups and managed instance groups
Third-party configuration management tools, cloud-based or not, work with multiple cloud providers and offer layers of abstraction to remove some of the complexity of configuration management. However, what these third-party tools gain in public cloud diplomacy, they may lose in capability. To take a least-common-denominator approach, third-party cloud configuration management tools give up some capabilities that the native tools offer. For instance, many native tools offer the ability to update repositories -- systems that store data about the resources being tracked -- in real time.
Third-party tools often require you to manually perform these sorts of tasks, which waste time and increase the opportunity for error -- however, they work across different cloud platforms. Enterprises need to consider the tradeoff between the ability to work more closely with native cloud services, such as those found within AWS, versus a tool that can abstract you from the native services of more than one cloud.
As an example, AWS OpsWorks is a cloud configuration management service that uses Chef. Chef provides an automated platform that treats server configurations as code. Organizations can deploy this technology to dynamically make changes to their software configuration. This is done through programming code, and not through a GUI. This also allows developers to change configurations at will, directly from the application, using APIs. AWS OpsWorks works natively for Amazon Elastic Compute Cloud instances, but there is no guarantee that it will work with other providers, such as Google or Microsoft Azure.
Cloud configuration management needs to work across all relevant platforms to be effective. While organizations can use third-party tools across different cloud services, these tools can't do everything for every platform, so some will require manual processes to fill in the gaps. The best choice, for now, is to use multiple cloud configuration management tools, even if it's more costly and complex.
Explore AWS configuration management tools
Follow these steps to find the right configuration management system
Guidelines to ensure successful configuration management