【问题标题】:Ansible Become password [duplicate]Ansible成为密码[重复]
【发布时间】:2016-11-17 09:09:36
【问题描述】:

我有一个小而简单的剧本,可以在另外两台服务器上创建一个目录,我保存在一个清单文件中并传递名称“dev-edge”。

当我尝试运行它时,我得到一个:

a2s3421.fake.cor.com : ok=0    changed=0    unreachable=1    failed=0
a1s3433.fake.cor.com : ok=0    changed=0    unreachable=1    failed=0

我可以'ssh niall@g4t7459.houston.hpecorp.net' 这样可以从 ansible 服务器访问服务器。

我认为这是因为我没有传递密码,我尝试使用 'become_pass: XXXXX' 但仍然不起作用。

谁能告诉我如何在剧本中添加/请求密码? 还是有其他原因导致我在运行 playbook 时会收到无法访问的错误??

感谢您的帮助 霜冻。

“剧本”


- hosts: dev-edge
  remote_user: "{{ user }}"

  tasks:

    - name: create directories
      become: yes
      become_user: niall
      command: mkdir /opt/apps/niall_test

【问题讨论】:

    标签: ansible ansible-playbook


    【解决方案1】:

    您需要使用--ask-pass 选项运行剧本。详情请参考ansible-playbook --help

    帮助摘录:

        -k, --ask-pass      ask for connection password
    

    【讨论】:

      【解决方案2】:

      您可以使用 --ask-pass 运行或使用无密码 ssh。

      【讨论】:

        【解决方案3】:

        我在运行剧本时通过以下方式解决了这个问题
        --extra-vars='ansible_become_pass= XXXXXXX

        【讨论】:

          【解决方案4】:

          为避免在命令行上指定密码,应使用--ask-become-pass,如本回答中关于become on sudo 所述。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-03-19
            • 1970-01-01
            • 2011-10-07
            • 2022-06-10
            • 2011-04-03
            • 1970-01-01
            • 2020-12-20
            相关资源
            最近更新 更多