setting up new control from source - getting 'FAILED => winrm is not installed' targeting existing Win clients

9,851 views
Skip to first unread message

Damon Overboe

unread,
Aug 28, 2014, 4:24:57 PM8/28/14
to ansible...@googlegroups.com
I have a current Linux control machine that can talk to many Windows clients.

I'm running from source on it (calling `. hacking/env-setup`).

I'm now trying to bring a new Linux control host (Ubuntu 12.04) online, calling the same Windows clients and it's failing.

Both control hosts have Python 2.7.3.

I took the same steps setting up this control machine; the pip installs of the dependencies went fine.

But, I'm attempting to win_ping any of the existing clients on the new control, and getting the error:

        FAILED => winrm is not installed

This control machine is in the same domain as the other control machine, and the firewall rules on the Win clients are set to allow Domain (and I can ping them successfully).



So, that makes me think, my new Linux control machine must be missing winrm;

But, on both control machines:

1. `which winrm` returns nothing
2. `pip install winrm` fails to find the package
3. `easy_install winrm` also fails ".."
4. `apt-get install winrm`: E: Unable to locate package winrm
5. `find -name "winrm"` returns nothing


And `ansible windows -m win_ping -vvvv` doesn't provide any additional errors or info.

So that makes me think it's complaining about the Win clients, but, I have them working correctly with the old control already, which is why I was looking at the control machine.


So next, just in case it is an issue where the clients were caching their hosts credentials, I set up a new Win client, and tried connecting to it from the new host first.

I still get the winrm is not installed error.


So....... I tested adding a new Win client, and tried connecting to it from the new host; no luck, same error.
I then attempted to connect to it from my old host, and it succeeded; ping pong.

That tells me that there is something wrong with my new control host, but I have no idea what else to test or try to install... Any thoughts?

Here's the code I ran:
# Copy configs, host files, group_vars from current host to new host;
# /etc/ansible has been created on new host, with appropriate permissions for my user
cd
/etc/ansible
scp
-r * newhost:/etc/ansible
ssh newhost


# On new host, prep the tools, pull & launch the source

sudo pip install paramiko
PyYAML jinja2 httplib2

git clone git
://github.com/ansible/ansible.git
cd ./ansible
source ./hacking/env-setup


# test it, with the error on the next comment
ansible windows
-m win_ping
# clone1 | FAILED => winrm is not installed



Damon Overboe

unread,
Aug 28, 2014, 4:28:31 PM8/28/14
to ansible...@googlegroups.com
OK it is a python problem on my new host, I just don't know / remember what I did the first time around (if anything) to get winrm.

Python still pukes when I tell it to install it, but on my current host, I ran:

find / -name "winrm"
# /usr/local/lib/python2.7/dist-packages/winrm

Checking on my new host, that directory is missing, so... I'm obviously missing a dependency.

For now, I'm going to try copying that directory over and see how much havoc I can wreak on that server.

Damon Overboe

unread,
Aug 28, 2014, 4:34:21 PM8/28/14
to ansible...@googlegroups.com
Found it:

sudo pip install pywinrm

ansible windows
-m win_ping

# clone1 | success >> {
 
"changed": false,
 
"ping": "pong"
}

Damon Overboe

unread,
Aug 28, 2014, 4:35:52 PM8/28/14
to ansible...@googlegroups.com
I somewhat remember doing that too, now, but I don't see it in the documentation.

I'm supposed to patch something else in the Windows docs, so I'll add this to that patch.

Matt Martz

unread,
Aug 28, 2014, 4:55:28 PM8/28/14
to ansible...@googlegroups.com
Installing pywinrm is included in the documentation at http://docs.ansible.com/intro_windows.html#installing-on-the-control-machine


--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/835e69a4-a1c2-4724-8008-2c1a12918328%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Matt Martz
ma...@sivel.net
http://sivel.net/

Damon Overboe

unread,
Aug 28, 2014, 5:26:02 PM8/28/14
to ansible...@googlegroups.com
Right in front of my face. I saw that line and assumed that was the full installation for the Control machine, I just hurried through it this time.

Thanks!

John Jelinek

unread,
Nov 5, 2014, 7:11:12 PM11/5/14
to ansible...@googlegroups.com
I am still unable to execute the win_ping module:

```
$ ansible windows -i ansible_hosts -m win_ping -vvvv
windows.example.com | FAILED => winrm is not installed
```

My group_vars is set to connect using a local Admin on the box. I ran the powershell scripts to make sure WinRM is all set up. This is on Win2012. Any thoughts?

Thanks,
--John Jelinek IV

John Jelinek

unread,
Nov 5, 2014, 7:25:33 PM11/5/14
to ansible...@googlegroups.com
I upgraded to the dev branch of ansible and it works now.

l...@blelo.ch

unread,
Aug 11, 2015, 9:38:21 AM8/11/15
to Ansible Project
What version of ansible are you using? I'm running 1.9.2 stable, pywinrm installed, same error.

Eric Herrmann

unread,
Oct 2, 2015, 2:56:10 PM10/2/15
to Ansible Project
I encountered this too. "pip list" showed "pywinrm" installed and "/usr/local/lib/python3.4/dist-packages/winrm/" existed on my filesystem, however Ansible kept giving me the error, as well as...

eric.herrmann@ubuntu-VirtualBox:~$ python
Python 2.7.9 (default, Apr  2 2015, 15:33:21) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import winrm
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named winrm

The "/usr/local/lib/python3.4/dist-packages/winrm/" was the clue. You can see in the interactive python above it is "Python 2.7.9", but the package is installed under the "3.4" directory. I had several versions of python installed. When that's the case, you should also have several pip versions installed...

eric.herrmann@ubuntu-VirtualBox:~$ ls -la /usr/local/bin/pip*
-rwxr-xr-x 1 root root 205 Oct  2 12:41 /usr/local/bin/pip
-rwxr-xr-x 1 root root 283 Jul  1 11:34 /usr/local/bin/pip2
-rwxr-xr-x 1 root root 287 Jul  1 11:34 /usr/local/bin/pip2.7
-rwxr-xr-x 1 root root 205 Oct  2 12:41 /usr/local/bin/pip3
-rwxr-xr-x 1 root root 205 Oct  2 12:41 /usr/local/bin/pip3.4

I ran "sudo pip2.7 install https://github.com/diyan/pywinrm/archive/master.zip#egg=pywinrm" and it now works correctly.

kavi...@gmail.com

unread,
Oct 13, 2016, 11:10:44 AM10/13/16
to Ansible Project
Hi Damon,

Exactly i am facing the same issue; Could you please let me know how to copy the below package to which location?

Regards,
Kavin

Diego Morales

unread,
Oct 19, 2016, 3:34:37 PM10/19/16
to Ansible Project
Just adding that I was also getting the "winrm is not installed" message, but it was because of a problem with requests (see python shell output bellow).

When I installed requests (using pip) I got an error because of missing gcc, and it ended up broken somehow. I removed it and reinstalled it with  pip install requests --no-cache-dir and winrm worked fine again.


# python
Python 2.7.5 (default, Sep 15 2016, 22:37:39)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2

Type "help", "copyright", "credits" or "license" for more information.
>>> import winrm
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/winrm/__init__.py", line 6, in <module>
    from winrm.protocol import Protocol
  File "/usr/lib/python2.7/site-packages/winrm/protocol.py", line 11, in <module>
    from winrm.transport import Transport
  File "/usr/lib/python2.7/site-packages/winrm/transport.py", line 19, in <module>
    import requests
ImportError: No module named requests
Reply all
Reply to author
Forward
0 new messages