In this section, we're going to look at one of the most popular configuration management tools in the form of Ansible. Like others (such as Chef, Puppet, and Salt), Ansible is a way of codifying your server configuration, by which I mean that any changes you want to make can be written into a file and applied to a server, or a collection of servers, programatically.
The configuration files you put together can be saved to a central store, most commonly Git, and you can build things such as automatic pipelines around your configuration so that changes to that configuration are applied automatically.
In the default scenario, your Ansible is run from a designated box in your infrastructure (usually a GitLab, Jenkins, or Ansible Tower install), or in smaller environments. It's not unusual to see engineers making changes from their own machines.