import yum\r\nImportError: No module named yum

报错:FAILED! => {"changed": false, "module_stderr": "Shared connection to 192.168.10.10 closed.\r\n", "module_stdout": "Traceback (most recent call last):\r\n File \"/tmp/ansible_NDuf1p/ansible_module_yum.py\", line 27, in <module>\r\n import yum\r\nImportError: No module named yum\r\n", "msg": "MODULE FAILURE", "rc": 0}python

import yum\r\nImportError: No module named yum
报错缘由,远程主机上默认的python版本为python2.7git


解决方法:vim

一、在playbook中加入如下配置
vars:
ansible_python_interpreter: /usr/bin/python2.6
修改后的playbook以下:服务器

- hosts: gitlab
  vars:
    ansible_python_interpreter: /usr/bin/python2.6.6
  become: True
  become_user: root
  gather_facts: false
  roles:    zabbix-agent

二、或者在ansible的hosts配置文件中,非python2.6环境服务器上添加ansible_python_interpreter参数python2.7

# vim /etc/ansible/hosts
[gitlab]
gitlab-server ansible_ssh_host=192.168.10.10 ansible_ssh_user=root ansible_python_interpreter=/usr/bin/python2.6.6   #添加最后字段

三、 若是yum命令执行失败,修改 /usr/bin/yum 里为 旧的python解释器的路径ssh

# vim /usr/bin/yum 
#!/usr/bin/python2.6.6   #修改第一行
......
相关文章
相关标签/搜索