ansible剧本失败:超时(12s)等待特权升级提示:“}

Ram*_*ula 6 ansible

我正在尝试在VM上自动化一些手动任务。因此,我的VM没有直接的root访问权限。因此,我必须使用其他用户,然后升级到root用户。当我尝试切换为root用户时,密码提示与默认提示不同。我看到的提示如下所示

================= [user1 @ vm-1 tmp] $ su-root

输入登录密码:

我写了一本剧本来测试连通性。该剧如下

====================================

 hosts: vm-1
 any_errors_fatal: true
 become: true
 become_method: su
 become_user: root
 gather_facts: no
 vars:
 ansible_become_pass: "r00t"
 tasks:
 name: Test me
 command: 'echo works'
Run Code Online (Sandbox Code Playgroud)

====================================

我的主机文件如下所示

localhost ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
vm-1 ansible_ssh_host=1.2.3.4 
ansible_connection=ssh 
ansible_ssh_user=user1 
ansible_ssh_pass=password  
ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
Run Code Online (Sandbox Code Playgroud)

====================================

使用此配置,当我尝试运行播放时,我遇到了以下错误

致命的:[vm-1]:失败!=> {“ msg”:“超时(12s)等待特权升级提示:”}

相同的剧本可以在其他VM上运行,但是尝试将用户切换为root时的提示只是“ Passowrd”

感谢您的帮助。

顺便说一下,我在ansible 2.4、2.5版本中尝试过此方法。在两个版本中,我都遇到相同的错误。

提前致谢。拉木

小智 2

我很难找到一张开放的票证,但这里有一个已关闭的票证,并且有一些解决方法和一些可能适合或可能不适合您的解决方案: https: //github.com/ansible/ansible/issues/14426

我至少有两台机器,其中列出的解决方案均不起作用。它还会减慢没有 Ansible 的直接 SSH,并且重新启动不起作用。我无法找出问题所在,所以现在我只能重建机器。

正如@AHT所说,您可以在ansible.cfg中将超时增加到30秒,但是,我认为这应该只是暂时的,因为它掩盖了更大的问题。

  • 不幸的是,这些解决方案对我不起作用。干杯! (2认同)