Choose the best configuration management tool for your business
The Configuration Management Systems (CMS) market is full of products, from the simple command-line scripting tool to the complete package and provisioning system, plus the automation and orchestration programs. application deployments. To choose, it is essential to take a close look at the needs of the business and examine these many offers in order to find the one that will best meet those needs.
A single tool is not enough to ensure synchronization between end-to-end development, testing, configuration management, provisioning, monitoring, and administration. However, you run to disaster if you let the various responsible for these processes self-manage: it becomes impossible to identify problems and correct them; the systems involved are then too numerous.
Therefore, consider the general context in your search. Your choice should be on those who can coexist with existing tools to allow complete end-to-end monitoring and reporting.
CM tools adapted to the needs of the company
Once the overall process is well understood, it is crucial to determine the level of technical complexity that your business can handle. Many products require in-depth knowledge of Ruby or Python programming languages, as well as the ability to build complex scripts that can be used repeatedly through process automation.
Most of these tools have a basic graphical interface. More sophisticated interfaces come at a cost (such as the Puppet Enterprise Console and the Red Hat Ansible Tower ), but they help reduce technical barriers.
Companies must also ensure that the chosen tool is compatible with all platforms used.
For example, a homogenous Windows environment will easily accept Microsoft PowerShell Desired State Configuration (DSC), while with a heterogeneous environment, it will be better to opt for a CMS that supports multiple operating systems.
That said, make sure that virtual machines ( VMware and Microsoft Hyper-V at a minimum ) and containers ( such as Docker , rkt, and Mesos ) are supported in the same way, to ensure better workload flexibility and greater portability for the future.
The ideal tools support the different architectures that the company uses or will use.
Ensure that multiple cloud-based systems are considered in the operation of these tools: Do not limit yourself to the top three, Amazon Web Services, Google, and Microsoft Azure. It is also important that OpenStack is supported and that the system is open enough to accommodate other cloud platforms, such as IBM SoftLayer.
Think about what these tools will need to handle
Your choice should be on those who can coexist with existing tools to allow complete end-to-end monitoring and reporting.
What should be the degree of universality of the tool? Are you content to manage software provisioning in the operating environment, or do you want to support a full DevOps environment? Chief and Puppet are often used in conjunction with Jenkins, an open source continuous integration tool, to enable bottom-up capabilities, including software project management and versioning.
Top-down features imply the need to manage how applications and functions are integrated and work together.
Vendor orchestration software such as Flexiant and Automic offer features that are compatible with CMS tools that provide an API function. In this way, Flexiant integrates closely with Chief to enable the deployment of systems across multiple clouds. For its part, Automic automates application deployments and ensures the monitoring and monitoring of databases; Chef, Puppet and other tools are pluggable into the global Automic system.
The needs of a business in terms of configuration management tools also vary by size.
Large organizations require tools that can deploy new configurations across dispersed systems, while performing process management and monitoring tasks. They generally opt for products such as Puppet, Salt or Ansible .
Smaller companies, on the other hand, may be content with a simpler approach, such as a provisioning mechanism in Pull mode, where the target machines manage facility planning rather than a centralized master server or a client. This method can be enough to manage a few dozen servers and applications. This is for example the case of Slaughter .
What configuration management tools do you already have?
Do not forget to ask yourself if one of your systems does not already have a CMS tool without your knowledge. For example, Microsoft PowerShell DSC is preinstalled in the most recent versions of Windows and Windows Server (since Windows 8.1 and Windows Server 2012 R2).
Similarly, Red Hat's original configuration management tool, Satellite, has been integrating Puppet open source software since version 6. SUSE relies on SaltStack to provide configuration management capabilities since SUSE Manager 3.0 .
The use of this type of integrated system has advantages, since the tool is incorporated in the heart of the system. However, it may still be advantageous to subscribe to enterprise versions, because of the additional possibilities they offer compared to the basic version.
This brings us to the question of whether it is better to opt for a completely free and open source software without paid support, to opt for the enterprise version of a CMS tool (with assistance included and, well, often, additional features) or opt for a standard system of commerce.
Quocirca recommends using free software only in companies with a highly skilled technical team, able to resolve potential problems, record them and separate the wheat from the chaff when it comes to adding functionality or look for patches and workarounds with the community that works on the tool in question.
In addition, if you plan to move towards a completely free and unassisted tool, make sure that it brings together a large and active community. Managing the software alone on your side is to be avoided.
Enterprise versions are ideal free or open-source solutions if you are concerned that you do not have enough competent resources. The company does not pay license fees, but pays a subscription for the help desk.
Make sure though that the level of support offered meets your needs. Indeed, some services are in English only or are only available during business hours in the United States; others can be reached through premium rate numbers or exclusively via e-mail.
Standard commercial software, such as Electric Cloud , Automic Software, Serena Software and others, are moving more and more towards subscription-based models and many are offering SaaS versions , which avoids any on-site installation. This solution can result in lower costs associated with installing and administering a system.
Many standard commercial products fall into the category of application deployment automation software and some flirt with the field of orchestration.
Overall, the best configuration management tools vary, but all companies, regardless of size, complexity or level of proficiency, will find the one that suits them.
However, you will have a hard time separating them by doing a simple search on the Internet.
Start by clearly identifying the features you are looking for in a CM system and then choose the tool or tools that best fit your needs. By carefully examining the factors discussed, you will be able to select the ideal configuration management tool for the current and future needs of your business.