cloudscale_ch.cloud.server_group 模块 – 管理 cloudscale.ch IaaS 服务上的服务器组

注意

此模块是 cloudscale_ch.cloud 集合 (版本 2.4.0) 的一部分。

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

要安装它,请使用: ansible-galaxy collection install cloudscale_ch.cloud

要在 playbook 中使用它,请指定: cloudscale_ch.cloud.server_group

cloudscale_ch.cloud 1.0.0 中的新增功能

概要

  • 创建、更新和删除服务器组。

别名:cloudscale_server_group

参数

参数

注释

api_timeout

整数

调用 cloudscale.ch API 的超时时间(秒)。

这也可以在 CLOUDSCALE_API_TIMEOUT 环境变量中传递。

默认值: 45

api_token

字符串 / 必需

cloudscale.ch API 令牌。

这也可以在 CLOUDSCALE_API_TOKEN 环境变量中传递。

api_url

字符串

cloudscale_ch.cloud 1.3.0 中新增

cloudscale.ch API URL。

这也可以在 CLOUDSCALE_API_URL 环境变量中传递。

默认值: "https://api.cloudscale.ch/v1"

name

字符串

服务器组的名称。

需要 *name* 或 *uuid* 之一。这些选项是互斥的。

state

字符串

服务器组的状态。

选项

  • "present" ← (默认)

  • "absent"

tags

字典

与服务器组关联的标签。将其设置为 {} 以清除任何标签。

type

字符串

服务器组的类型。

默认值: "anti-affinity"

uuid

字符串

服务器组的 UUID。

需要 *name* 或 *uuid* 之一。这些选项是互斥的。

zone

字符串

服务器组的区域标识符(例如 lpg1rma1)。

备注

注意

示例

---
- name: Ensure server group exists
  cloudscale_ch.cloud.server_group:
    name: my-name
    type: anti-affinity
    api_token: xxxxxx

- name: Ensure server group in a specific zone
  cloudscale_ch.cloud.server_group:
    name: my-rma-group
    type: anti-affinity
    zone: lpg1
    api_token: xxxxxx

- name: Ensure a server group is absent
  cloudscale_ch.cloud.server_group:
    name: my-name
    state: absent
    api_token: xxxxxx

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

href

字符串

获取有关此服务器组详细信息的 API URL

返回:如果可用

示例: "https://api.cloudscale.ch/v1/server-group/cfde831a-4e87-4a75-960f-89b0148aa2cc"

name

字符串

服务器组的显示名称

返回:始终

示例: "load balancers"

servers

列表 / 元素=字符串

服务器组中包含的服务器列表。

返回:如果可用

示例: []

state

字符串

服务器组的状态。

返回:始终

示例: "present"

tags

字典

与服务器组关联的标签。

返回:成功

示例: {"project": "my project"}

type

字符串

服务器组的类型

返回:如果可用

示例: "anti-affinity"

uuid

字符串

此服务器的唯一标识符

返回:始终

示例: "cfde831a-4e87-4a75-960f-89b0148aa2cc"

zone

字典

服务器组的区域

返回:成功

示例: {"slug": "rma1"}

作者

  • René Moser (@resmo)

  • Denis Krienbühl (@href)