LLMpediaThe first transparent, open encyclopedia generated by LLMs

Ansible (software)

Generated by DeepSeek V3.2
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Expansion Funnel Raw 53 → Dedup 0 → NER 0 → Enqueued 0
1. Extracted53
2. After dedup0 (None)
3. After NER0 ()
4. Enqueued0 ()
Ansible (software)
NameAnsible
DeveloperRed Hat
Released20 February 2012
Programming languagePython, PowerShell
Operating systemLinux, Unix-like, Microsoft Windows, macOS
GenreConfiguration management, Infrastructure as code, Orchestration
LicenseGPLv3

Ansible (software). Ansible is an open-source software provisioning, configuration management, and application-deployment tool enabling infrastructure as code. It runs on many Unix-like systems, and can configure both Unix-like systems as well as Microsoft Windows. It uses a declarative language to describe system configuration, which is designed to be minimal, consistent, secure, and highly reliable, with an extremely low learning curve for administrators, developers, and IT managers.

Overview

Created by Michael DeHaan and acquired by Red Hat in 2015, Ansible automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs. It is agentless, using SSH or Windows Remote Management for connections, and requires no software to be installed on managed nodes. Its human-readable automation language, based in YAML, is accessible to those without deep programming skills, bridging the gap between development and operations teams. The tool is widely used in DevOps practices and is a core component of the Red Hat Ansible Automation Platform.

Architecture

The architecture follows a simple, push-based model where a central control machine orchestrates tasks. The control node, typically a Linux system, runs the software and connects to managed nodes over standard protocols like SSH for Linux or PowerShell Remoting for Windows Server. Inventories, defined in INI or YAML format, list all managed hosts, which can be grouped for organization. Playbooks, written in YAML, define policies, configurations, and orchestration steps, which are executed by modules—discrete units of code that perform specific tasks like managing packages or services.

Core components

Key components include Inventories, which are static files or dynamic scripts that pull host information from sources like AWS or Microsoft Azure; Modules, which are the tools in the toolkit, shipped with Ansible and written in Python or PowerShell; Playbooks, the central configuration, deployment, and orchestration documents; and Roles, which provide a framework for grouping related tasks, variables, and handlers. The Ansible Galaxy community portal provides pre-packaged roles for common configurations. Plugins extend core functionality for areas like inventory, connection types, and callbacks.

Use cases

Primary use cases span IT automation for provisioning virtual machines on platforms like VMware vSphere and OpenStack, configuring network devices from vendors like Cisco and Juniper Networks, and deploying applications across complex environments. It is extensively used for continuous delivery pipelines, security compliance automation, and managing container orchestration platforms like Kubernetes. Enterprises leverage it for ensuring consistent state across hybrid environments involving public cloud providers such as Google Cloud Platform and private cloud infrastructure.

History and development

Michael DeHaan, previously a developer for Cobbler and Func, authored the initial version, releasing it in February 2012. The project gained rapid adoption for its simplicity and agentless model. In October 2015, Red Hat announced its acquisition of the company behind Ansible, AnsibleWorks, for an estimated $150 million, integrating it into its management and cloud computing portfolio. Since the acquisition, development has continued actively under the auspices of Red Hat, with major releases adding features like Ansible Tower (now part of the Automation Platform) for enterprise-scale management and enhanced support for Windows Server and network automation.

Comparison with similar software

Compared to other configuration management tools like Puppet, Chef, and SaltStack, Ansible's primary distinction is its lack of a required agent on managed nodes, contrasting with the agent-based architectures of Puppet and Chef. While SaltStack also offers an agentless mode, Ansible's use of YAML for its domain-specific language is often considered more accessible than the Ruby-based DSL of Chef or the custom language of Puppet. For orchestration, it is frequently compared to more complex frameworks like Terraform, with Ansible excelling at configuration and procedural tasks, while Terraform specializes in declarative infrastructure provisioning.

Category:Free software programmed in Python Category:Red Hat software Category:Configuration management Category:Orchestration (computing)