# How ansible works? without an agent on target device

**URL:** <https://forum.ansible.com/t/how-ansible-works-without-an-agent-on-target-device/29555>\
**Category:** Ansible Project\
**Created:** [January 28, 2019, 10:32pm UTC](https://forum.ansible.com/t/how-ansible-works-without-an-agent-on-target-device/29555 "2019-01-28T22:32:31Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ethashamuddin\_Mohamm](https://avatars.discourse-cdn.com/v4/letter/e/439d5e/32.png) [@Ethashamuddin\_Mohamm](https://forum.ansible.com/u/Ethashamuddin_Mohamm)\
**Post date:** [January 28, 2019, 10:32pm UTC](https://forum.ansible.com/t/how-ansible-works-without-an-agent-on-target-device/29555/1 "2019-01-28T22:32:31Z")

</div>

Without an agent on target host, Ansible is able to perform tasks like for example: adding a user(`-m user`).

[Here](https://docs.ansible.com/ansible/latest/modules/list_of_all_modules.html) are the list of all modules

To understand this, I read this [article](https://www.ansible.com/overview/how-ansible-works), which says:

“Ansible works by connecting to your nodes and pushing out **small programs** , called “Ansible modules” to them. These programs are written to be resource models of the desired state of the system.”

---

<div class="post-metadata">

**Author:** ![mboncalo](https://avatars.discourse-cdn.com/v4/letter/m/8dc957/32.png) [@mboncalo](https://forum.ansible.com/u/mboncalo)\
**Post date:** [January 29, 2019, 8:30pm UTC](https://forum.ansible.com/t/how-ansible-works-without-an-agent-on-target-device/29555/2 "2019-01-29T20:30:11Z")

</div>

Hi ,

I'm pretty new with ansible but you can read on ansible website that  
ansible requires python to be installed on the remote hosts though  
should work using the raw module which sends commands through ssh.  
Check [Ansible - Command vs Shell vs Raw Modules - UnixArena](https://www.unixarena.com/2018/07/ansible-command-vs-shell-vs-raw-modules.html/)

To be more precise I attach this very verbose[ ansible output while  
changing passwords for one user on two hosts. You can see there how  
ansible works behind the scene

BR

> **(attachments)**
>
> [ansible.log](https://forum.ansible.com/uploads/short-url/jut0v3vAG8dEQarMbPL2Wgw84K9.log) (165 KB)
