在ansible中使用pipelining = True获取MODULE FAILURE错误

时间:2016-10-26 11:42:04

标签: ansible ansible-playbook

运行我的Ansible playbook时出现以下错误:

  

{“已更改”:false,“failed”:true,“invocation”:{“module_name”:“setup”},“module_stderr”:“sudo:抱歉,你必须有一个tty来运行sudo \ n” ,“module_stdout”:“”,“msg”:“MODULE FAILURE”,“已解析”:false}

我的True中有ssh pipelining = ansible.cfg,如果我将其设为false,则错误消息会消失。

我在CentOS 7机器上尝试这个,而我的Ansible版本是2.1.1.0。有没有办法在不关闭ssh管道的情况下摆脱上述错误?

1 个答案:

答案 0 :(得分:1)

在我的剧本中使用了这些变化:

   vars:
    ansible_ssh_pipelining: no
   tasks:
    - name: Disable require tty access in /etc/sudoers
      replace: dest="/etc/sudoers"
               regexp='^Defaults    requiretty'
               replace='Defaults    !requiretty'