ngine_io.cloudstack.cs_service_offering 模块 – 管理基于 Apache CloudStack 的云上的服务产品。

注意

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

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

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

要在 playbook 中使用它,请指定:ngine_io.cloudstack.cs_service_offering

ngine_io.cloudstack 0.1.0 中的新增功能

概要

  • 创建和删除来宾和系统虚拟机的服务产品。

  • 更新现有服务产品的 display_text。

要求

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

  • 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 环境变量。

cpu_number

整数

服务产品的 CPU 数量。

cpu_speed

整数

服务产品的 CPU 速度,以 MHz 为单位。

deployment_planner

字符串

用于部署此产品 VM 的部署计划程序启发式算法。

如果未设置,则使用全局配置 vm.deployment.planner 的值。

disk_bytes_read_rate

别名:bytes_read_rate

整数

磁盘产品的字节读取速率。

disk_bytes_write_rate

别名:bytes_write_rate

整数

磁盘产品的字节写入速率。

disk_iops_max

整数

计算产品的最大 iops。

disk_iops_min

整数

计算产品的最小 iops。

disk_iops_read_rate

整数

磁盘产品的 IO 请求读取速率。

disk_iops_write_rate

整数

磁盘产品的 IO 请求写入速率。

display_text

字符串

服务产品的显示文本。

如果未设置,则在创建时将 name 用作 display_text

domain

字符串

服务产品所关联的域。

如果未设置,则对所有域和子域公开。

host_tags

别名:host_tag

列表 / 元素=字符串

此服务产品的主机标签。

hypervisor_snapshot_reserve

整数

作为卷百分比的 Hypervisor 快照保留空间。

仅适用于使用 Xen 或 VMware 的托管存储。

is_customized

布尔值

该产品是否可自定义。

选择

  • false

  • true

is_iops_customized

别名:disk_iops_customized

布尔值

计算产品 iops 是否为自定义。

选择

  • false

  • true

is_system

布尔值

是否为系统 VM 产品。

选择

  • false ←(默认)

  • true

is_volatile

布尔值

虚拟机是否需要是易失性的。

每次 VM 重启时,根磁盘都会分离然后销毁,并创建新的根磁盘并附加到 VM。

选择

  • false

  • true

limit_cpu_usage

布尔值

将 CPU 使用率限制为已提交的服务产品。

选择

  • false

  • true

memory

整数

服务产品的总内存,以 MB 为单位。

name

字符串 / 必需

服务产品的名称。

network_rate

整数

允许的数据传输速率,以 Mb/s 为单位。

仅支持非系统产品和具有 system_vm_type=domainrouter 的系统产品。

offer_ha

布尔值

是否为服务产品设置了 HA。

选择

  • false

  • true

provisioning_type

字符串

用于创建卷的配置类型。

选择

  • "thin"

  • "sparse"

  • "fat"

service_offering_details

列表 / 元素=字典

计划程序的详细信息,用于存储特定参数。

具有键 keyvalue 的字典列表。

state

字符串

服务产品的状态。

选择

  • "present" ←(默认)

  • "absent"

storage_tags

别名:storage_tag

列表 / 元素=字符串

此服务产品的存储标签。

storage_type

字符串

服务产品的存储类型。

选择

  • "local"

  • "shared"

system_vm_type

字符串

系统 VM 类型。

如果 is_system=yes,则为必需。

选择

  • "domainrouter"

  • "consoleproxy"

  • "secondarystoragevm"

validate_certs

布尔值

在 ngine_io.cloudstack 2.4.0 中添加

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

如果未给出,则会考虑 CLOUDSTACK_DANGEROUS_NO_TLS_VERIFY 环境变量。

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

选择

  • false

  • true ← (默认)

注意

注意

  • 关于 CloudStack 模块的详细指南可以在 CloudStack 云指南 中找到。

  • 此模块支持检查模式。

示例

- name: Create a non-volatile compute service offering with local storage
  ngine_io.cloudstack.cs_service_offering:
    name: Micro
    display_text: Micro 512mb 1cpu
    cpu_number: 1
    cpu_speed: 2198
    memory: 512
    host_tags: eco
    storage_type: local

- name: Create a volatile compute service offering with shared storage
  ngine_io.cloudstack.cs_service_offering:
    name: Tiny
    display_text: Tiny 1gb 1cpu
    cpu_number: 1
    cpu_speed: 2198
    memory: 1024
    storage_type: shared
    is_volatile: yes
    host_tags: eco
    storage_tags: eco

- name: Create or update a volatile compute service offering with shared storage
  ngine_io.cloudstack.cs_service_offering:
    name: Tiny
    display_text: Tiny 1gb 1cpu
    cpu_number: 1
    cpu_speed: 2198
    memory: 1024
    storage_type: shared
    is_volatile: yes
    host_tags: eco
    storage_tags: eco

- name: Create or update a custom compute service offering
  ngine_io.cloudstack.cs_service_offering:
    name: custom
    display_text: custom compute offer
    is_customized: yes
    storage_type: shared
    host_tags: eco
    storage_tags: eco

- name: Remove a compute service offering
  ngine_io.cloudstack.cs_service_offering:
    name: Tiny
    state: absent

- name: Create or update a system offering for the console proxy
  ngine_io.cloudstack.cs_service_offering:
    name: System Offering for Console Proxy 2GB
    display_text: System Offering for Console Proxy 2GB RAM
    is_system: yes
    system_vm_type: consoleproxy
    cpu_number: 1
    cpu_speed: 2198
    memory: 2048
    storage_type: shared
    storage_tags: perf

- name: Remove a system offering
  ngine_io.cloudstack.cs_service_offering:
    name: System Offering for Console Proxy 2GB
    is_system: yes
    state: absent

返回值

通用返回值已记录在这里,以下是此模块特有的字段

描述

cpu_number

整数

服务产品中的 CPU 数量

返回: 成功

示例: 4

cpu_speed

整数

服务产品中 CPU 的速度(以 MHz 为单位)

返回: 成功

示例: 2198

创建时间

字符串

产品创建的日期

返回: 成功

示例: "2017-11-19T10:48:59+0000"

disk_bytes_read_rate

整数

服务产品的字节读取速率

返回: 成功

示例: 1000

disk_bytes_write_rate

整数

服务产品的字节写入速率

返回: 成功

示例: 1000

disk_iops_max

整数

磁盘产品的最大 iops

返回: 成功

示例: 1000

disk_iops_min

整数

磁盘产品的最小 iops

返回: 成功

示例: 500

disk_iops_read_rate

整数

服务产品的每秒读取 IO 请求数

返回: 成功

示例: 1000

disk_iops_write_rate

整数

服务产品的每秒写入 IO 请求数

返回: 成功

示例: 1000

display_text

字符串

产品的显示文本

返回: 成功

示例: "Micro 512mb 1cpu"

domain

字符串

产品所在的域

返回: 成功

示例: "ROOT"

host_tags

列表 / 元素=字符串

主机标签列表

返回: 成功

示例: ["eco"]

id

字符串

服务产品的 UUID

返回: 成功

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

is_customized

布尔值

该产品是否可定制

返回: 成功

示例: false

is_iops_customized

布尔值

该产品是否使用自定义 IOPS

返回: 成功

示例: false

is_system

布尔值

该产品是否用于系统 VM

返回: 成功

示例: false

is_volatile

布尔值

该产品是否是易失性的

返回: 成功

示例: false

limit_cpu_usage

布尔值

CPU 使用是否仅限于已提交的服务产品

返回: 成功

示例: false

memory

整数

系统产品的内存

返回: 成功

示例: 512

name

字符串

系统产品的名称

返回: 成功

示例: "Micro"

network_rate

整数

允许的每秒兆比特的数据传输速率

返回: 成功

示例: 1000

offer_ha

布尔值

是否在该产品中启用了 HA 支持

返回: 成功

示例: false

provisioning_type

字符串

用于创建卷的置备类型

返回: 成功

示例: "thin"

service_offering_details

字典

其他服务产品详细信息

返回: 成功

示例: {"pciDevice": "Group of NVIDIA Corporation GK107GL [GRID K1] GPUs", "vgpuType": "GRID K180Q"}

storage_tags

列表 / 元素=字符串

存储标签列表

返回: 成功

示例: ["eco"]

storage_type

字符串

用于创建卷的存储类型

返回: 成功

示例: "shared"

system_vm_type

字符串

此产品的系统 VM 类型

返回: 成功

示例: "consoleproxy"

作者

  • René Moser (@resmo)