Ansible (software)
Ansible (software)
Ansible is an open-source automation tool used for configuration management, application deployment, task automation, and orchestration. It is developed by Red Hat (originally created by Michael DeHaan) and is written in Python. Ansible is designed to be simple, agentless, and to use a declarative language based on YAML.
Unlike many other configuration management tools, Ansible does not require any agent software to be installed on managed nodes; it connects via SSH (or Windows Remote Management for Windows systems) and pushes configurations. Its idempotent execution model ensures that repeated runs of the same playbook produce the same result unless the target state changes. Ansible can manage both Unix‑like and Windows systems, as well as network devices.
Features
- Agentless architecture – no extra software is installed on managed hosts; communication is done over standard SSH or WinRM.
- YAML playbooks – configuration, deployment, and orchestration tasks are written in human‑readable YAML files called playbooks.
- Idempotency – applying a playbook multiple times results in the same state, which simplifies continuous delivery and infrastructure as code.
- Modular design – hundreds of built‑in modules cover tasks such as package management, file operations, user management, and cloud services.
- Inventory – managed hosts are defined in static files or dynamic sources (e.g., cloud provider APIs).
- Roles and Collections – reusable groupings of playbooks, tasks, and variables that can be shared via Ansible Galaxy.
History
Ansible was first released in 2012 by Michael DeHaan, the creator of the Cobbler provisioning tool. In 2015, Red Hat acquired Ansible, Inc., and later that year Ansible 2.0 was released, introducing a new modular architecture and support for network automation. The open‑source project remains under the Apache License 2.0.
Red Hat also developed Ansible Tower (now Red Hat Ansible Automation Platform), a commercial web‑based interface and dashboard for managing Ansible workflows, role‑based access control, and job scheduling. The upstream community project, AWX, provides the open‑source foundation for Tower. Ansible has since become one of the most widely used automation tools in the industry.