Skip to main content

What is Ansible? A brief history

· 10 min read
Henri Courdent

Ansible is an open-source automation tool that helps system administrators and DevOps teams manage servers, deploy applications, and orchestrate complex IT tasks through simple, human-readable code. Created in 2012, it quickly gained popularity by eliminating common automation headaches: no agents needed to be installed, no complex master-slave setup required, and tasks could be written in straightforward YAML files rather than complicated programming languages.

Before Ansible, managing hundreds of servers meant either writing complex shell scripts or dealing with heavyweight configuration management tools that required significant setup. This article traces Ansible's journey from a solution to these everyday headaches to becoming one of the most widely-used automation tools in modern DevOps.

At its core, Ansible is an open-source automation tool that handles configuration management, application deployment, and task automation. What sets it apart is its simplicity: it uses SSH for connectivity, requires no agents on managed nodes, and employs YAML for defining automation tasks.

Chapter 1: The genesis of Ansible

The IT landscape before Ansible

Before Ansible emerged, we were stuck with limited options. Tools like Puppet and Chef were powerful but came with significant overhead:

  • They required agents on every managed node
  • Had steep learning curves with their DSLs (Domain Specific Languages)
  • Needed complex master-slave architectures
  • Required significant bootstrap configuration

For many teams, this meant either sticking with manual processes or investing heavily in training and infrastructure setup before seeing any benefits.

The founding of Ansible

In 2012, Michael DeHaan, who previously worked on tools like Cobbler at Red Hat, created Ansible with a radical approach: what if we could have powerful automation without all the complexity? DeHaan founded Ansible, Inc. with a clear vision of making automation accessible to everyone, not just specialized teams.


YouTube video of Michael DeHaan on Ansible, back in 2014


What really resonated with developers and sysadmins was Ansible's core philosophy:

  • Agentless Architecture: Using existing SSH infrastructure meant no new security concerns
  • YAML-Based: Writing automation in YAML made it readable even for non-programmers
  • Push-Based Model: Instead of agents polling for changes, control nodes push changes when needed
  • Idempotency: Running the same playbook multiple times produces the same result

This approach was revolutionary because it aligned with Unix philosophy: do one thing well, make it simple, and make it work with other tools.

Ansible's first commit

Ansible's first commit by mpdehaan

Chapter 2: Ansible's rise to prominence

Early reception and adoption

When Ansible was first released, the response from the community was overwhelmingly positive. The tool's simplicity and effectiveness resonated strongly with users. Unlike its competitors, Ansible didn't require a steep learning curve or complex infrastructure changes. This accessibility led to rapid adoption, especially among teams looking for a straightforward solution to automate their workflows.

Ansible's agentless architecture and use of SSH were game-changers. While tools like Puppet and Chef were powerful, they required agents and complex configurations. Ansible's approach was different: it was lightweight, easy to set up, and didn't require additional software on managed nodes. This made it particularly appealing to teams that needed to scale quickly without the overhead of managing additional infrastructure.

Key milestones in development

  • The Release of Ansible 1.1 (2013).
  • Introduction of major features: Over time, Ansible introduced Playbooks, roles, and modules, which significantly enhanced its functionality. Playbooks allowed users to define complex automation tasks in a simple, readable format, while roles and modules provided reusable components that streamlined automation processes.

The Open Source Community

Ansible's success can be largely attributed to its vibrant open-source community. Contributors from around the world played a crucial role in shaping the tool, expanding its capabilities, and integrating it with other technologies. The community-driven development model ensured that Ansible remained relevant and adaptable to the ever-changing needs of IT automation.

Ansible commits over time

Ansible's commits over time

Expansion of modules and integrations

The growth of Ansible's module library was a testament to its flexibility and extensibility. With modules for managing everything from cloud infrastructure to network devices, Ansible became a versatile tool that could handle a wide range of automation tasks. This expansion was driven by both community contributions and strategic partnerships, further solidifying Ansible's position as a leader in the automation space.

Ansible modules

Ansible's modules (source: Coding Ninjas)

Chapter 3: Red Hat's acquisition of Ansible

The acquisition process (2015)

In October 2015, the automation world was shaken by significant news: Red Hat had acquired Ansible for a staggering $150 million. This wasn't just another corporate acquisition; it represented a strategic move that would reshape the future of automation tools. Red Hat, already a powerhouse in the open-source world, saw in Ansible what many developers had already recognized - a tool that could revolutionize enterprise automation while maintaining its open-source roots.

The acquisition came at a crucial time in the automation landscape. Organizations were increasingly moving towards DevOps practices, and the need for simple, scalable automation tools was greater than ever. Red Hat's decision to acquire Ansible wasn't just about adding another tool to their portfolio; it was about embracing a philosophy that aligned perfectly with their vision of enterprise automation.

Key aspects of the acquisition included:

  • Maintaining Ansible's open-source nature
  • Integration with Red Hat's enterprise products
  • Expansion of development resources
  • Preservation of the existing community structure

The acquisition brought significant changes to Ansible's development. With Red Hat's resources, Ansible evolved from a community tool to an enterprise solution.

Ansible became deeply integrated with Red Hat's product lineup:

Community response and challenges

The acquisition wasn't without its challenges. The open-source community, always protective of its tools, expressed various concerns about Ansible's future.

The community's worries were legitimate and touched on several key points:

  • Fear of commercialization affecting the open-source nature
  • Worries about community contribution processes becoming more complex
  • Questions about the future of free features
  • Concerns about the tool's independence

Acquisition reactions

Online reactions following the acquisition on Hacker News


Red Hat's response to these concerns was both swift and thoughtful. Drawing from their experience with other open-source projects, they:

  • Maintained the upstream open-source project with full transparency
  • Continued supporting and encouraging community contributions
  • Created a clear separation between community and enterprise features
  • Kept the development process transparent through public repositories

Chapter 4: Modern Ansible ecosystem and enterprise adoption

The years following Red Hat's acquisition (and later IBM's acquisition of Red Hat in 2019) saw Ansible evolve from a configuration management tool into a comprehensive automation platform. This transformation wasn't just about adding features; it represented a fundamental shift in how organizations approach automation.

Ansible's ecosystem expanded significantly with several key projects:

  • AWX (2017): The upstream open-source version of Ansible Tower, providing a web-based UI and REST API (docs)
  • Ansible Galaxy and Collections (2019): A new content structure that revolutionized how Ansible content is created and shared (docs)
  • Ansible Automation Platform (2020): Red Hat's enterprise solution for scaling automation across organizations (docs)
  • Event-Driven Ansible (2023): Bringing automation to event-based workflows and real-time responses (docs)

Ansible became deeply embedded in DevOps practices and modern IT operations, offering comprehensive solutions:

DevOps practices across the application lifecycle:

  • Infrastructure as Code: Teams use Ansible playbooks as living documentation of their infrastructure
  • CI/CD Integration: Native integration with tools like Jenkins, GitLab, and GitHub Actions
  • Configuration Management: Standardized configurations across development, testing, and production environments
  • Application Deployment: Automated, repeatable deployment processes that reduce human error

Critical IT automation capabilities:

  • Cloud Management: Orchestrating resources across multiple cloud providers
  • Network Automation: Managing network infrastructure through code
  • Security Automation: Implementing security policies and responding to threats
  • Container Orchestration: Working alongside tools like Kubernetes for container management

Organizations from startups to enterprises now rely on Ansible to automate complex workflows, maintain consistency, and accelerate their digital transformation initiatives. Its ability to adapt to new technologies while maintaining its core simplicity has made it an indispensable tool in the modern IT landscape.

Chapter 5: The future of Ansible

As Ansible continues to evolve, it faces both exciting opportunities and significant challenges. The platform is embracing AI and machine learning capabilities, with features like predictive analytics for system failures and intelligent automation for complex deployments. Infrastructure as Code is also advancing, with Ansible developing better abstractions for multi-cloud environments and deeper integration with modern DevOps workflows.

While pushing innovation forward, Ansible must carefully balance maintaining its core simplicity with adding advanced features. Technical challenges include scaling for complex infrastructure and ensuring security in distributed environments, while also keeping pace with rapid cloud provider changes and maintaining quality across its growing ecosystem. Looking ahead, Ansible's roadmap focuses on enhancing container orchestration and cloud-native capabilities in the short term, while working toward seamless hybrid cloud management and advanced AI-driven automation for the future.

What has become of Michael DeHaan?

After stepping away from Ansible, Michael DeHaan maintains a personal blog at https://laserllama.substack.com/ where he writes about a variety of topics. His posts range from tech reviews and IT industry news (Apple Pro XDR Monitor) to more niche content, such as yard sprinklers or ... rabbits in his garden.

Rabbits in the garden

Michael DeHaan's rabbits in the garden


He is also active on Bluesky and LinkedIn, where last year he said he wanted to create a new IT automation system built in Rust with "scalability, high performance, audit features, and a return to minimalism." Well, this project sounds very familiar.

New project

Michael DeHaan's new project


Conclusion

Ansible's journey from a simple automation tool to a comprehensive automation platform demonstrates several important lessons:

  1. Simplicity wins: Ansible's success stems from its commitment to keeping things simple and accessible
  2. Community matters: The vibrant community has been crucial to Ansible's growth and adaptation
  3. Enterprise support: Red Hat's backing has provided the stability needed for enterprise adoption
  4. Continuous innovation: Regular updates and new features keep Ansible relevant in a changing landscape

As automation becomes increasingly central to modern infrastructure management, Ansible's role continues to evolve. Its combination of simplicity, flexibility, and enterprise support positions it well for future challenges in automation and infrastructure management.

Modern Ansible integration with Windmill

Today, Ansible continues to evolve through various platforms and integrations. One notable example is Windmill, which provides native support for Ansible playbooks alongside other scripting languages.


Windmill extends Ansible's capabilities by adding features like version control for playbooks, auto-generated UIs, webhook triggers, and seamless integration with other automation tools. It simplifies Ansible usage by handling inventory management, dependency installation, and resource management through a web-based IDE, while maintaining Ansible's core philosophy of simplicity and accessibility.

Further reading and resources

For developers looking to deepen their Ansible knowledge:

Windmill Logo
Windmill is an open-source and self-hostable serverless runtime and platform combining the power of code with the velocity of low-code. We turn your scripts into internal apps and composable steps of flows that automate repetitive workflows.

You can self-host Windmill using a docker compose up, or go with the cloud app.