小编tri*_*lef的帖子

Ansible 任务写入本地日志文件

使用 Ansible 我希望能够将运行命令的任务的 sysout 写入本地(即在托管服务器上)日志文件。目前我只能使用这样的任务来做到这一点:

- name: Run my command
  shell: <command> <arg1> <arg3> ... |tee -a <local log file>
Run Code Online (Sandbox Code Playgroud)

这样做的原因是需要很长时间才能完成(即我们不能等到它完成才能获取其输出)并且希望在其执行期间收集输出。

是否有任何“Ansible”方法可以在不使用tee管道的情况下在执行期间将命令的 sysout 重定向到本地日志文件?

linux shell ansible ansible-playbook

4
推荐指数
1
解决办法
3万
查看次数

使用 group_vars 在不同组上使用同一主机

我有一个 Ansible 清单,如下所示:

[group1]
host1.mydomain

[maingroup:children]
group1

[group2]
host1.mydomain
Run Code Online (Sandbox Code Playgroud)

我需要在不同的组上声明相同的主机,因为在这个主机中有两个类似的服务并置。为了区分这两个服务,我创建了以下组变量:

group_vars/maingroup
---
servicepath: /service1/path

group_vars/group2
---
servicepath: /service2/path
Run Code Online (Sandbox Code Playgroud)

当我第一次使用 运行剧本hosts: maingroup,然后使用相同的剧本时hosts: group2,它servicepath每次都使用正确的变量值(第一次运行= /service1/path,第二次运行= /service2/path)。

但是,在我运行剧本时的所有后续重试中,我都maingroup获得了价值servicepath: /service2/path

我只设法使用--extra-vars=@group_vars/group2ansible-playbook 参数使用正确的变量运行 剧本。

这可能是 Ansible 错误还是我遗漏了什么?

ansible ansible-playbook

4
推荐指数
1
解决办法
5583
查看次数

Ansible 命令忽略创建

我使用command具有createsansible 2.9 角色的模块。

但是,有时我需要忽略createsarg 并多次重新运行该命令。

有什么办法可以覆盖默认行为并强制执行任务吗?

command ansible ansible-playbook

3
推荐指数
1
解决办法
381
查看次数

标签 统计

ansible ×3

ansible-playbook ×3

command ×1

linux ×1

shell ×1