问题标签 [ansible]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2045 浏览

ansible - 在 Ansible 中的多个角色之间共享默认值?

我想在 Ansible 中的不同角色之间共享默认值。可以直接实现吗?是否有解决方法,也许是解决此问题的另一种方法?我只想保持默认值 DRY。

0 投票
7 回答
201949 浏览

shell - Ansible playbook shell 输出

我想使用 ansible-playbook 使用 ps、dstat 等命令快速监控一些主机。该ansible命令本身完美地完成了我想要的,例如我会使用:

它很好地为每个主机打印所有标准输出,如下所示:

然而,这需要我为每个不是很“可靠”的任务保留一堆 shell 脚本,所以我把它放在一个剧本中:

并使用 运行它-vv,但输出显示字典内容和换行符没有这样打印,所以这会导致像这样的不可读的混乱:

我还尝试添加register: var并显示“调试”任务,{{ var.stdout }}但结果当然是相同的。

当通过剧本运行时,有没有办法从命令的标准输出/标准错误中获得格式良好的输出?我可以想到许多可能的方法(使用 sed 格式化输出?将输出重定向到主机上的文件,然后取回该文件并将其回显到屏幕上?),但由于我对 shell/ansible 的了解有限,我需要一天试一试。

0 投票
1 回答
8533 浏览

ansible - 始终在远程机器上的 virtualenv 中运行 ansible 的最佳方法?

有没有更好的方法在远程机器上的 virtualenv 中运行 ansible?

到目前为止,我可以看到的方式是手动或使用 ansible 本身修改 .bashrc 文件。

例如:

TODO:检查是否可以使用 ssh 授权密钥完成:http: //binblog.info/2008/10/20/openssh-going-flexible-with-forced-commands/

0 投票
0 回答
2430 浏览

linux - 如何在 sudo 受限的剧本中使用 Ansible 服务模块?

我正在编写一个剧本来部署应用程序。我以普通用户的身份进行 SSH,而不是 root。在我的应用程序完成部署后,我想重新启动它的服务。显然,要重新启动服务,我需要某种sudo特权。

在我的/etc/sudoers文件中,我有:

但是,当我运行我的 Ansible 剧本时,它会挂起:

如何修改我的剧本以使用 Ansible 的service模块而不给予redadmin用户完全的 root 权限?

0 投票
2 回答
1450 浏览

python - Ansible“此模块所需”依赖问题(使用 Linode 模块)

我已经在 Ubuntu 上安装了 Ansible 并运行:

给出错误:

我安装linode-python成功,pp install linode-python我可以import linode在 Python 中运行。那么我怎样才能让这个模块工作呢?

0 投票
1 回答
1615 浏览

linux - Ansible:在每个主机的不同时间运行 cron

我需要配置一个 cron 作业以在多个主机上的不同时间运行。理想情况下,我希望有一个索引来标识我当前正在修改的主机并对其进行偏移。

因此,如果我针对以下情况运行 ansible:

我想将cron配置为这样

您知道如何在不为每个主机硬编码变量的情况下实现它吗?

0 投票
1 回答
5461 浏览

vagrant - Ansible 未设置 Postgres 用户密码

我正在使用 Ansible 来配置一个从 Vagrant 开始的虚拟机。我已经使用(首选)VMware 提供程序和 VirtualBox 进行了测试,并且得到了相同的结果。

我正在使用以下一组任务来尝试创建一个名为 的数据库so,并拥有一个django具有访问权限的用户。但是,似乎没有设置数据库密码。如果我手动设置它,我可以连接,如果我事先尝试,我总是得到FATAL: password authentication failed for user "django".

我已经在下面发布了 Ansible 配置的相关部分,以及下面的调试相关部分(ansible.verbose = "vvv"在 vagrant 配置中)。

详细输出:

0 投票
1 回答
507 浏览

ssh - 如何使用无法连接到服务器的用户使用 ansible playbook 在远程服务器上执行命令

她是我的工作流程。

ssh user1@remote-server

苏-用户2

某些命令只有 user2 可以执行

user1 不能 sudo user2 并且 user2 没有 ssh 访问权限。

我需要使用 ansible playbook 来执行此操作,并且我无法更改远程服务器上的设置。

0 投票
1 回答
286 浏览

ansible - 如何从 Prudentia 启动新的 Digital Ocean 液滴?

我是Prudentia的早期采用者。到目前为止,我只用它配置了现有节点。

现在我想用它来创建一个新的 Droplet 并提供它。我现在被卡住了,因为我不知道要遵循什么策略。看起来 Prudentia 只针对预先启动的实例……</p>

这可能吗,以前有人做过吗?

您能否分享一个高级策略以及可能的一些代码示例?

0 投票
1 回答
1209 浏览

inventory - Ansible 库存脚本

我正在使用 ansible 附带的 digital_ocean 库存脚本,它运行良好。但是,我正在尝试从剧本中的该脚本访问主机信息。这些值是否保存为可以从剧本内部访问的变量?如果是这样,有谁知道变量的名称是什么?

我不确定这些数据是否存储在全局变量命名空间(或任何名称)中,以便以后在剧本中使用。我以后需要单独调用库存脚本吗?我不想这样做,因为每次调用脚本都需要一段时间。

提前致谢。