ngine_io.cloudstack.cs_network_offering 模块 – 管理基于 Apache CloudStack 的云上的网络产品。

注意

此模块是 ngine_io.cloudstack 集合(版本 2.5.0)的一部分。

如果您正在使用 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install ngine_io.cloudstack。您需要进一步的要求才能使用此模块,请参阅 要求 以了解详细信息。

要在剧本中使用它,请指定:ngine_io.cloudstack.cs_network_offering

ngine_io.cloudstack 0.1.0 中的新功能

概要

  • 创建、更新、启用、禁用和删除网络产品。

要求

执行此模块的主机需要满足以下要求。

  • python >= 2.6

  • cs >= 0.9.0

参数

参数

注释

api_http_method

字符串

用于查询 API 端点的 HTTP 方法。

如果未给定,则考虑 CLOUDSTACK_METHOD 环境变量。

选择

  • "get" ←(默认)

  • "post"

api_key

字符串 / 必需

CloudStack API 的 API 密钥。

如果未给定,则考虑 CLOUDSTACK_KEY 环境变量。

api_secret

字符串 / 必需

CloudStack API 的密钥。

如果未设置,则考虑 CLOUDSTACK_SECRET 环境变量。

api_timeout

整数

HTTP 超时(以秒为单位)。

如果未给定,则考虑 CLOUDSTACK_TIMEOUT 环境变量。

默认值: 10

api_url

字符串 / 必需

CloudStack API 的 URL,例如 https://cloud.example.com/client/api

如果未给定,则考虑 CLOUDSTACK_ENDPOINT 环境变量。

api_verify_ssl_cert

字符串

验证 CA 授权证书文件。

如果未给定,则考虑 CLOUDSTACK_VERIFY 环境变量。

availability

字符串

网络产品的可用性。默认值为 Optional

conserve_mode

布尔值

网络产品是否启用了 IP 保留模式。

选择

  • false

  • true

details

列表 / 元素=字典

网络产品详细信息,以键/值对形式表示。

以服务提供商作为值

display_text

字符串

网络产品的显示文本。

domains

别名:domain

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

与网络产品相关的域的列表。

对于公共产品,请使用 public

egress_default_policy

字符串

默认出口策略是允许还是拒绝。

选择

  • "allow"

  • "deny"

for_vpc

布尔值

产品是否用于 VPC。

选择

  • false

  • true

guest_ip_type

字符串

网络产品的访客类型。

选择

  • "Shared"

  • "Isolated"

keepalive_enabled

布尔值

如果为 true,则将在负载均衡器中启用保持活动状态。

在编写本文时,这仅对 haproxy 有影响。

在 haproxy conf 文件中取消设置了模式 http 和 httpclose 选项。

选择

  • false

  • true

max_connections

整数

网络产品支持的最大并发连接数。

name

字符串 / 必需

网络产品的名称。

network_rate

整数

允许的数据传输速率,以兆比特/秒为单位。

persistent

布尔值

如果网络产品支持持久网络,则为 True

如果未指定,则默认为 false

选择

  • false

  • true

service_capabilities

别名:service_capability

列表 / 元素=字符串

作为网络产品一部分的所需服务功能。

service_offering

字符串

虚拟路由器提供商使用的服务产品名称或 ID。

service_providers

别名:service_provider

列表 / 元素=字典

服务提供商到服务的映射。

如果未指定,则会将服务的提供商映射到物理网络上的默认提供商。

specify_ip_ranges

布尔值

网络产品是否支持指定 IP 范围。

如果未指定,则 API 默认设置为 no

选择

  • false

  • true

specify_vlan

布尔值

网络产品是否支持 vlan。

选择

  • false

  • true

state

字符串

网络产品的状态。

选择

  • "enabled"

  • "present" ←(默认)

  • "disabled"

  • "absent"

supported_services

别名:supported_service

列表 / 元素=字符串

网络产品支持的服务。

来自选择列表的一个或多个项目的列表。

选择

  • "Dns"

  • "PortForwarding"

  • "Dhcp"

  • "SourceNat"

  • "UserData"

  • "Firewall"

  • "StaticNat"

  • "Vpn"

  • "Lb"

  • "NetworkACL"

  • "SecurityGroup"

  • "Connectivity"

  • "BaremetalPxeService"

tags

别名:tag

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

标签列表。标签是字符串列表。

要删除所有标签,请设置一个空列表,例如tags: []

traffic_type

字符串

网络产品的流量类型。

默认值: "Guest"

validate_certs

布尔值

在 ngine_io.cloudstack 2.4.0 中添加

如果 false,则不会验证 SSL 证书。

如果没有给定,则会考虑 CLOUDSTACK_DANGEROUS_NO_TLS_VERIFY 环境变量。

这应该只在个人控制的使用自签名证书的站点上使用。

选择

  • false

  • true ← (默认)

zones

别名:zone

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

与网络产品相关的区域列表。

使用 all 表示所有区域提供。

注释

注意

  • 有关 cloudstack 模块的详细指南,请参阅 CloudStack 云指南

  • 此模块支持检查模式。

示例

- name: Create a network offering and enable it
  ngine_io.cloudstack.cs_network_offering:
    name: my_network_offering
    display_text: network offering description
    state: enabled
    guest_ip_type: Isolated
    supported_services:
      - Dns
      - PortForwarding
      - Dhcp
      - SourceNat
      - UserData
      - Firewall
      - StaticNat
      - Vpn
      - Lb
      - NetworkACL
      - SecurityGroup
      - Connectivity
      - BaremetalPxeService
    service_providers:
      - { service: 'dns', provider: 'virtualrouter' }
      - { service: 'dhcp', provider: 'virtualrouter' }

- name: Remove a network offering
  ngine_io.cloudstack.cs_network_offering:
    name: my_network_offering
    state: absent

返回值

通用返回值记录在此处,以下是此模块独有的字段

描述

availability

字符串

网络产品的可用性。

返回: 成功

示例: "可选"

display_text

字符串

网络产品的显示文本。

返回: 成功

示例: "我的 网络 产品"

domains

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

与网络产品关联的域列表。

返回: 成功

示例: ["public"]

egress_default_policy

字符串

默认出口策略。

返回: 成功

示例: "allow"

for_vpc

布尔值

产品是否用于 VPC。

返回: 成功

示例: false

guest_ip_type

字符串

网络产品的访客类型。

返回: 成功

示例: "隔离"

id

字符串

网络产品的 UUID。

返回: 成功

示例: "a6f7a5fc-43f8-11e5-a151-feff819cdc9f"

is_default

布尔值

网络产品是否为默认产品。

返回: 成功

示例: false

is_persistent

布尔值

是否支持持久网络。

返回: 成功

示例: false

max_connections

整数

LB 要处理的最大并发连接数。

返回: 成功

示例: 300

name

字符串

网络产品的名称。

返回: 成功

示例: "我的自定义网络产品"

network_rate

整数

网络流量传输速率,单位为 Mbit/s。

返回: 成功

示例: 200

service_offering_id

字符串

服务产品 ID。

返回: 成功

示例: "c5f7a5fc-43f8-11e5-a151-feff819cdc9f"

state

字符串

网络产品的状态。

返回: 成功

示例: "已启用"

tags

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

与网络产品关联的标签列表。

返回: 成功

示例: ["tag1", "tag2"]

traffic_type

字符串

流量类型。

返回: 成功

示例: "Guest"

zones

列表 / 元素=字符串

在 ngine_io.cloudstack 2.2.0 中添加

与网络产品关联的区域列表。

返回: 成功

示例: ["all"]

作者

  • David Passante (@dpassante)