uuid: - value: 82839e74-b53c-4d18-af5d-024d8f09fb3f langcode: - value: en type: - target_id: daily_email target_type: node_type target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7 revision_timestamp: - value: '2025-05-11T09:00:57+00:00' revision_uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 revision_log: { } status: - value: true uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 title: - value: 'Automating all the things with Ansible' created: - value: '2022-09-02T00:00:00+00:00' changed: - value: '2025-05-11T09:00:57+00:00' promote: - value: false sticky: - value: false default_langcode: - value: true revision_translation_affected: - value: true path: - alias: /daily/2022/09/02/automating-all-the-things-with-ansible langcode: en body: - value: |
Ansible is a tool for automating IT tasks. It's one of my preferred tools to use, and one that I've written about and presented talks on previously.
It's typically thought of as a tool for managing configuration on servers. For example. you have a new VPS that you want to use as a web server, so it needs Nginx, MySQL, PHP, etc to be installed - or whatever your application uses. You define the desired state and run Ansible, which will perform whatever tasks are needed to get to that state.
Ansible though does include modules for interacting with services like Amazon AWS and DigitalOcean to create the servers and resources, and not just configure them.
It also doesn't just work on servers. I use Ansible to configure my local development environment, to ensure that dependencies and tools are installed, and requirements like my SSH keys and configuration are present and correct.
Lastly, I use Ansible to deploy application code onto servers and automatically run any required steps, ensuring that deployments are simple, robust and repeatable.
In the next few emails, I'll explain how I've been able to utilise Ansible for each of these situations.
Want to learn more about how I use Ansible? Register for my upcoming free email course.
format: full_html processed: |Ansible is a tool for automating IT tasks. It's one of my preferred tools to use, and one that I've written about and presented talks on previously.
It's typically thought of as a tool for managing configuration on servers. For example. you have a new VPS that you want to use as a web server, so it needs Nginx, MySQL, PHP, etc to be installed - or whatever your application uses. You define the desired state and run Ansible, which will perform whatever tasks are needed to get to that state.
Ansible though does include modules for interacting with services like Amazon AWS and DigitalOcean to create the servers and resources, and not just configure them.
It also doesn't just work on servers. I use Ansible to configure my local development environment, to ensure that dependencies and tools are installed, and requirements like my SSH keys and configuration are present and correct.
Lastly, I use Ansible to deploy application code onto servers and automatically run any required steps, ensuring that deployments are simple, robust and repeatable.
In the next few emails, I'll explain how I've been able to utilise Ansible for each of these situations.
Want to learn more about how I use Ansible? Register for my upcoming free email course.
summary: null field_daily_email_cta: { }