Ansible:为每个服务器使用单独的参数运行任务

时间:2018-12-19 09:45:16

标签: bash parameters ansible

需要在多台服务器上运行任务:它将是相同的管道,但是在Eatch服务器上的数据是不同的。

所以,我有文件列表。必须将其切成服务器编号部分,每个子列表都传递给各个服务器的任务副本,然后才能独立运行。

我不知道该怎么做

  1. 将输入列表分隔为零件
  2. 在服务器实例任务中传递切片
  3. 组织任务-它包括几个步骤(复制到服务器/ tmp文件夹,从服务器复制到本地,删除/ tmp释放磁盘空间)。它一定是另一本剧本,并且包含在我的剧本中吗?不知道如何在一个循环中设置几个子任务。

所有实例和问询者都谈到并行运行不同的任务。但是我有相同的任务,但是参数化了。 如果没有文件列表作为参数,它将很简单地运行:只需设置主机,然后设置任务即可。

1 个答案:

答案 0 :(得分:0)

一个选项

  

“在多个服务器上运行任务...,但是每个服务器上的数据不同”

将为每个服务器使用不同数据的include文件。

- include_vars: "{{ ansible_hostname }}.yaml"