小编pet*_*e.c的帖子

Ansible同步要求输入密码

我使用Ansible(1.9.2)将一些文件部署到Redhat 6.4服务器.

剧本看起来像这样

- name: deploy files
  hosts: web
  tasks:
    - name sync files
      sudo: no
      synchronize:
        src={{ local_path }}
        dest={{ dest_path }}
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我运行了类似下面的内容

ansible-playbook -i myinventory myplaybook.yml -u DOMAIN\\user --ask-pass
Run Code Online (Sandbox Code Playgroud)

当我开始播放时,我在提示符下输入密码,然后成功获取事实,但是一旦达到同步任务,另一个提示再次询问我的密码,如下所示

DOMAIN\user@hostname's password:
Run Code Online (Sandbox Code Playgroud)

如果我再次输入密码,则部署正确完成.

我的问题是

  1. 我该如何修复或解决这个问题,以便每次使用同步模块时都不必输入密码?
  2. 这是同步模块当前预期的行为吗?或者这是Ansible中的错误?

由于环境限制,我无法使用ssh密钥.

出于可伸缩性的原因,我不想使用复制模块.

我尝试过的事情

  1. 我已经看到了关于这个主题的其他一些问题,但我无法使用它们中的任何一个来解决我的问题或理解这是否是预期的行为.
  2. Ansible文档通常都很出色但我在官方文档上找不到任何相关内容.
  3. 我已尝试在库存文件中指定用户和密码,而不使用--ask-pass-u参数.但是,当我不必输入密码来收集事实时,同步模块仍然会请求我的密码.
  4. 我也试过设置--ask-sudo-pass,但它没有帮助
  5. 我一直在使用CentOS 7控制盒,但我也尝试过Ubuntu 14.04盒子

有人可以帮忙吗?

deployment rsync ansible ansible-playbook

8
推荐指数
1
解决办法
3843
查看次数

标签 统计

ansible ×1

ansible-playbook ×1

deployment ×1

rsync ×1