Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ansible 具有单个定义变量的可传递多个变量_Ansible_Ansible 2.x_Ansible Inventory_Ansible Facts - Fatal编程技术网

Ansible 具有单个定义变量的可传递多个变量

Ansible 具有单个定义变量的可传递多个变量,ansible,ansible-2.x,ansible-inventory,ansible-facts,Ansible,Ansible 2.x,Ansible Inventory,Ansible Facts,每次使用以下任务创建新服务器时,我都需要将服务器添加到服务组 任务 变量: service_group: - group_name: bif_sg service_state: present server_name1: bif01 server_port1: 80 我需要有关传递服务器名称和服务器端口变量的帮助,假设在任务中有3台服务器要添加到服务组,我需要添加3倍的服务器名称1、服务器端口1 服务器名称2,服务器端口2。。。。。。 每次添加服务器时,我也需要在任

每次使用以下任务创建新服务器时,我都需要将服务器添加到服务组

任务

变量:

service_group:
  - group_name: bif_sg
    service_state: present
    server_name1: bif01
    server_port1: 80
我需要有关传递服务器名称和服务器端口变量的帮助,假设在任务中有3台服务器要添加到服务组,我需要添加3倍的服务器名称1、服务器端口1 服务器名称2,服务器端口2。。。。。。 每次添加服务器时,我也需要在任务中更新:(


有没有一种方法可以在任务中使用单个定义的值多次传递服务器名称和服务器端口。

如果希望服务器组有一个服务器列表,请重构变量,使其有一个服务器列表,而不是一堆单独的子键:

service_group:
  - group_name: bif_sg
    service_state: present
    servers:
      - name: bif01
        port: 80
      - name: bif02
        port: 8080
在你的任务中:

...
servers: "{{ item.1.servers }}"
...
...
servers: "{{ item.1.servers }}"
...