Ansible SSH ERROR connection in localhost

Ansible by default tries to connect through ssh. For localhost you should set the connection to local.

You can define this when calling the playbook:

ansible-playbook playbook.yml --connection=local

Define it in your playbook:

- hosts: local
  connection: local

Or, preferable, define it as a host var just for localhost/127.0.0.1. Create a file host_vars/127.0.0.1 relative to your playbook with this content:

ansible_connection: local

You also could add it as a group var in your inventory:

[local]
127.0.0.1

[local:vars]
ansible_connection=local

or as a host var:

[local]
127.0.0.1   ansible_connection=local

See Behavioral Parameters in docs.


It could be done way more easier.

Under the [defaults] section of the ansible.cfg file, just paste the following line:

transport = local