使用Ansible和Packstack进行Openstack部署期间的源更改

时间:2018-08-09 09:50:10

标签: ansible openstack multi-tenant

我正在使用角色结构来部署Openstack基础结构,并且在task文件夹的main.yml中,我将执行一些应适用于一个租户的任务,而某些任务应适用于不同的租户。

即使来自不同租户,我也想一次运行所有任务。为此,我需要以某种方式指定一些任务是针对tenant1的,而某些任务是针对tenant2的。

让我们举一个简单的例子。我当前在运行Ansible任务时正在寻找租户1,但是我希望在租户2上运行以下Ansible任务:

- name: Create the security group
  os_security_group:
     state: present
     name: sg_default
     description: Security group
  tags: security_group

第一步,我在两个租户上都添加了管理员角色。

即使租户不同,是否有任何选项可以帮助我同时运行主要任务文件中的所有内容?还是可以从我指定角色的主要yml中进行一些更改?

1 个答案:

答案 0 :(得分:0)

找到了一种方法:

从运行剧本的位置创建一个clouds.yml文件。像这样:

clouds:
  testing:
    auth:
      auth_url: http://openstack.local:5000/v2.0
      username: admin
      password: secret
      project_name: admin

在函数内部这样插入云:

- name: Create the security group
  os_security_group:
     state: present 
     cloud: testing
     name: sg_default
     description: SG group
  tags: security_group