Continuous configuration automation

From Wikipedia, the free encyclopedia

Continuous configuration automation (CCA) is the methodology or process of automating the deployment and configuration of settings and software for both physical and virtual data center equipment.[1]


Continuous configuration automation is marketed for data center and application configuration management. CCA tools use a programmable framework for configuration and orchestration through coding, planning, and incrementally adopting policies.[2][3]

Relationship to DevOps[edit]

CCA tools are used for what is called DevOps, and are often included as part of a DevOps toolchain. CCA grew out of a push to develop more reliable software faster.[1] Gartner describes CCA as “Embodying lean, agile and collaborative concepts core to DevOps initiatives, CCA tools bring a newly found level of precision, efficiency and flexibility to the challenges of infrastructure and application configuration management.” [4]


CCA tools support administrators and developers to automate the configuration and Orchestration of physical and virtual infrastructure in a systematic way that give visibility to state of infrastructure within an enterprise. Generally thought of as an extension of infrastructure as code (IaC) frameworks.[1] CCA tools include Ansible, Chef software, Otter, Puppet (software), Rudder (software) and SaltStack.[5] Each tool has a different method of interacting with the system some are agent-based, push or pull, through an interactive UI. Similar to adopting any DevOps tools, there are barriers to bring on CCA tools and factors that hinder and accelerate adoption.[6]

Notable CCA tools include:

Tool Released by Initial release Method Approach Written in
Ansible RedHat 2012; 12 years ago (2012) Push Declarative and imperative Python
CFEngine CFEngine 1993; 31 years ago (1993) Pull Declarative C[7]
Chef Chef 2009; 15 years ago (2009) Pull Imperative Ruby
Otter Inedo 2015; 9 years ago (2015) Push Declarative and imperative -
Puppet Puppet 2005; 19 years ago (2005) Pull Declarative C++, Clojure since 4.0, Ruby
SaltStack SaltStack 2011; 13 years ago (2011) Push and Pull Declarative and imperative Python
Terraform HashiCorp 2014; 10 years ago (2014) Push Declarative Go

Evaluation factors[edit]

Evaluations of CCA tools may consider the following:[8][9]

  • Skills, training, and cost required to implement and maintain tool
  • Content and support of the Platform and Infrastructure – tool specified for Windows or Linux etc.
  • Delivery method and likening flexibility – important for scalability
  • Method of interacting with managing system
  • Support and training availability and cost
  • Incorporation of orchestration with configuration management
  • Security and compliance reporting

See also[edit]


  1. ^ a b c Fletcher, Colin; Cosgrove, Terrence (26 August 2015). Innovation Insight for Continuous Configuration Automation Tools. Gartner (Report).[dead link]
  2. ^ Ramos, Martin (4 November 2015). "Continuous Integration: Infrastructure as Code in DevOps". Archived from the original on 6 February 2016. Retrieved 11 May 2016.
  3. ^ Infrastructure As Code: Fueling the Fire for Faster Application Delivery (Report). Forrester. March 2015.
  4. ^ Phillips, Andrew (14 May 2015). "Moving from Infrastructure Automation to True DevOps".
  5. ^ Venezia, Paul (21 November 2013). "Puppet vs. Chef vs. Ansible vs. Salt". Network World. Network World. Archived from the original on 18 July 2018. Retrieved 14 December 2015.
  6. ^ Garner Market Trends: DevOps – Not a Market, but Tool-Centric Philosophy That supports a Continuous Delivery Value Chain (Report). Gartner. 18 February 2015.
  7. ^ "CFEngine 3.18.0 Documentation - What is CFEngine?".
  8. ^ Fletcher, Colin; Cosgrove, Terrence (25 March 2016). How I&O teams can combine CCA tools With Containers to Achieve Operational Efficiecies. Gartner (Report).
  9. ^ Fletcher, Colin; Cosgrove, Terrence (8 December 2016). Market Guide for Continuous Configuration Automation Tools. Gartner (Report).