openstack.cloud.stack 模块 – 添加/删除 Heat 堆栈
注意
此模块是 openstack.cloud 集合 (版本 2.3.0) 的一部分。
如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用: ansible-galaxy collection install openstack.cloud。您需要满足其他要求才能使用此模块,请参阅 要求 获取详细信息。
要在剧本中使用它,请指定: openstack.cloud.stack。
概要
- 向 OpenStack Heat 添加或删除堆栈 
要求
在执行此模块的主机上需要以下要求。
- python >= 3.6 
- openstacksdk >= 1.0.0 
参数
| 参数 | 注释 | 
|---|---|
| 套接字层在 API 调用超时之前应等待多长时间。如果省略此项,则不会将任何内容传递给 requests 库。 | |
| 包含云的认证插件策略所需的认证信息的字典。对于默认的 *password* 插件,这将包含 *auth_url*、*username*、*password*、*project_name* 和任何关于域的信息(例如,*user_domain_name* 或 *project_domain_name*),如果云支持它们的话。对于其他插件,此参数需要包含该认证插件所需的任何参数。如果提供了命名云或存在 OpenStack OS_* 环境变量,则不需要此参数。 | |
| 要使用的认证插件的名称。如果云使用密码认证以外的其他认证方式,则应在此处指示插件的名称,并相应地更新 *auth* 参数的内容。 | |
| CA 证书捆绑包的路径,可用作验证 SSL API 请求的一部分。 | |
| 客户端证书的路径,用作 SSL 事务的一部分。 | |
| 客户端密钥的路径,用作 SSL 事务的一部分。 | |
| 要操作的命名云或云配置。如果 *cloud* 是字符串,则它引用在 OpenStack clouds.yaml 文件中定义的命名云配置。为 *auth* 和 *auth_type* 提供默认值。如果提供了 *auth* 或存在 OpenStack OS_* 环境变量,则不需要此参数。如果 *cloud* 是字典,则它包含完整的云配置,就像 clouds.yaml 的一部分一样。 | |
| 应该用于堆栈创建的环境文件列表 | |
| 从服务目录中获取的端点 URL 类型。 选项 
 | |
| 堆栈的名称。 该值在一个项目中必须唯一。 名称必须以 ASCII 字母开头,并且可以包含 ASCII 字母、数字、下划线、句点和连字符。具体来说,名称必须匹配  当您删除或放弃堆栈时,其名称在删除成功完成之前将不会可用。 | |
| 堆栈创建的参数字典 默认值:  | |
| 区域名称。 | |
| 回滚堆栈创建 选项 
 | |
| OpenStackSDK 的日志级别 选项 
 | |
| OpenStackSDK 日志文件的路径。如果为空,则不写入日志 | |
| 指示所需资源状态 选项 
 | |
| 一个或多个简单的字符串标签,用于与堆栈关联。 要将多个标签与堆栈关联,请使用逗号分隔标签。例如, | |
| 用于堆栈创建的模板文件路径 | |
| 等待堆栈创建的最大秒数 默认值:  | |
| 是否验证 SSL API 请求。 在 Ansible 2.3 之前,默认为  选项 
 | |
| Ansible 是否应等到请求的资源完成。 选项 
 | 
备注
注意
- 可以使用标准的 OpenStack 环境变量(例如 - OS_USERNAME),而不是提供显式值。
- 身份验证信息由 openstacksdk 驱动,这意味着值可以来自 /etc/ansible/openstack.yaml、/etc/openstack/clouds.yaml 或 ~/.config/openstack/clouds.yaml 中的 yaml 配置文件,然后来自标准环境变量,最后来自 playbook 中的显式参数。更多信息可在 https://docs.openstack.org/openstacksdk/ 找到。 
示例
- name: create stack
  openstack.cloud.stack:
    name: "teststack"
    tag: "tag1,tag2"
    state: present
    template: "/path/to/my_stack.yaml"
    environment:
    - /path/to/resource-registry.yaml
    - /path/to/environment.yaml
    parameters:
        bmc_flavor: m1.medium
        bmc_image: CentOS
        key_name: default
        node_count: 2
        name: undercloud
        image: CentOS
        my_flavor: m1.large
返回值
常见的返回值已在 此处 记录,以下是此模块特有的字段
| 键 | 描述 | 
|---|---|
| 堆栈信息 返回: 始终 | |
| 将要添加的资源对象列表。 返回: 成功 | |
| AWS 兼容模板列出功能。 返回: 成功 | |
| 创建时间。 返回: 成功 示例:  | |
| 将要删除的资源对象列表。 返回: 成功 | |
| 删除时间。 返回: 成功 示例:  | |
| Heat 模板中提供的堆栈描述。 返回: 成功 示例:  | |
| 堆栈的 JSON 环境。 返回: 成功 | |
| 在 files 字典中找到的环境文件的排序列表。 返回: 成功 | |
| 模板或环境中引用的附加文件 返回: 成功 | |
| 包含子模板和文件的 Swift 容器名称。 返回: 成功 | |
| 堆栈 ID。 返回: 成功 示例:  | |
| 堆栈是否支持回滚。 返回: 成功 | |
| 指向当前堆栈的链接。 返回: 成功 示例:  | |
| 堆栈名称 返回: 成功 示例:  | |
| 堆栈相关事件。 返回: 成功 示例:  | |
| 堆栈返回的输出。 返回: 成功 示例:  | |
| 所有者堆栈的 ID(如果有)。 返回: 成功 | |
| 当前堆栈的参数 返回: 成功 示例:  | |
| 父堆栈的 ID(如果有)。 返回: 成功 | |
| 将要替换的资源对象列表。 返回: 成功 | |
| 堆栈状态。 返回: 成功 | |
| 解释堆栈如何转换到其当前状态。 返回: 成功 | |
| 用作堆栈标签的字符串列表 返回: 成功 | |
| 包含用于堆栈创建的模板的字典。 返回: 成功 | |
| 堆栈模板描述文本。 返回: 成功 | |
| 可以找到堆栈模板的 URL。 返回: 成功 | |
| 堆栈操作超时(分钟)。 返回: 成功 | |
| 如果堆栈,则将保持不变的资源对象列表。 返回: 成功 | |
| 将更新其属性的资源对象列表。 返回: 成功 | |
| 堆栈上次更新的时间戳。 返回: 成功 | |
| 为该堆栈创建的用户项目的 ID。 返回: 成功 | 
