ITIA Logs
Fewer errors from manual work, fast and correct provisioning, repetitive tasks done automatically, more time for important work, and faster rollout of new applications and updates.
Avoids errors caused by manual administration.
Fast, correct provisioning and configuration of sys...
Q What is Ansible, and what technologies is it built on?
An open-source automation tool for configuring and administering computers, written in Python, with automation described in YAML.
Open source, maintained by Red Hat, with commercial products on top (historically Ansible Tower, today the Red Hat Ansible Automation Platform).
Main...
Q What does idempotent mean in Ansible, and why does it matter?
Running the same task or playbook again gives the same end result; if the system is already in the desired state, nothing is changed.
* Running the task again leaves a correct host untouched and reports ok instead of changed. *
Example: a task "make sure package nginx is install...
Q How can an Ansible playbook roll out a new application version to many servers without downtime?
Update the servers in batches (for example 10 at a time). For each batch: take it out of monitoring and load balancing, stop services, deploy, then reverse those steps before moving on.
* Only one batch of 10 is out of service at a time, so the rest keep serving users. *
For eac...
Q What is an automation execution environment, and what problem does it solve?
A container image with ansible-core, the needed content collections and all their dependencies. Playbooks run inside it, so they behave the same on every machine.
* ansible-builder builds the images; ansible-navigator runs the playbook inside one of them. *
Without execution env...
Q In short: why use Ansible, and how does it work?
Automation reduces human error and keeps infrastructure consistent. Ansible does this agentlessly: a control node reads human-readable playbooks and connects over SSH (or WinRM) to put Linux, Windows, UNIX and network devices into the described state.
Why automate: to reduce hum...
Q Once a system is managed by automation, why must changes be made in the automation code rather than...
A manual change is invisible to the automation, so the next automation run can overwrite it, and the server drifts away from what the code describes.
The automation code is the description of how the server should look. If an admin logs in and edits a config file by hand:
the co...
Q What are the three core claims Ansible makes about itself: simple, powerful and agentless? What does...
Simple: playbooks are human-readable and need no programming skills.
Powerful: covers configuration management, workflow and network automation, the whole application life cycle.
Agentless: nothing to install on managed hosts; Ansible connects over SSH or WinRM.
Claim
What i...
Q Why do Ansible modules that run arbitrary commands need special care?
Modules like command and shell just run what you give them; Ansible can't know whether the command already took effect, so they aren't idempotent unless you make them so.
A module like ansible.builtin.package checks the current state before acting. A module like ansible.builtin.c...
Q What three design principles should guide writing Ansible automation?
Complexity kills productivity: keep automation simple.
Optimise for readability: well-written playbooks document the workflow.
Think declaratively: describe the desired state, not a sequence of commands.
Complexity kills productivity. Simpler is better. Ansible's tools are des...