hetzner.hcloud.network 模块 – 在 Hetzner Cloud 上创建和管理云网络。

注意

此模块是 hetzner.hcloud 集合 (版本 4.2.2) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install hetzner.hcloud。您需要其他需求才能使用此模块,请参阅 需求 以了解详细信息。

要在剧本中使用它,请指定:hetzner.hcloud.network

概要

  • 在 Hetzner Cloud 上创建、更新和管理云网络。

  • 您至少需要 hcloud-python 1.3.0。

别名:hcloud_network

需求

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

  • python-dateutil >= 2.7.5

  • requests >=2.20

参数

参数

注释

api_endpoint

别名:endpoint

字符串

Hetzner Cloud 的 API 端点。

您也可以使用 HCLOUD_ENDPOINT 环境变量来设置此选项。

默认值: "https://api.hetzner.cloud/v1"

api_token

字符串 / 必需

Hetzner Cloud 的 API 令牌。

您也可以使用 HCLOUD_TOKEN 环境变量来设置此选项。

delete_protection

布尔值

保护网络不被删除。

选项

  • false

  • true

expose_routes_to_vswitch

布尔值

指示是否应将此网络中的路由公开到 vSwitch 连接。

仅当 vSwitch 连接处于活动状态时,公开才有效。

选项

  • false

  • true

id

整数

要管理的 Hetzner Cloud 网络的 ID。

如果没有给出网络 *名称*,则只需要此参数。

ip_range

字符串

网络的 IP 范围。

如果网络不存在,则需要此参数。

labels

字典

用户定义的标签(键值对)。

name

字符串

要管理的 Hetzner Cloud 网络的名称。

如果没有给出网络 *id* 或网络不存在,则只需要此参数。

state

字符串

网络的状态。

选项

  • "absent"

  • "present" ← (默认)

另请参阅

另请参阅

Hetzner Cloud API 文档

Hetzner Cloud API 的完整参考。

示例

- name: Create a basic network
  hetzner.hcloud.network:
    name: my-network
    ip_range: 10.0.0.0/8
    state: present

- name: Ensure the Network is absent (remove if needed)
  hetzner.hcloud.network:
    name: my-network
    state: absent

返回值

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

描述

hcloud_network

复杂类型

网络

返回:始终

delete_protection

布尔值

在 hetzner.hcloud 0.1.0 中添加

如果网络受到删除保护则为 True

返回:始终

示例: false

expose_routes_to_vswitch

布尔值

指示是否应将此网络中的路由公开到 vSwitch 连接。

返回:始终

示例: false

id

整数

网络的 ID

返回:始终

示例: 12345

ip_range

字符串

网络的 IP 范围

返回:始终

示例: "10.0.0.0/8"

labels

字典

用户定义的标签(键值对)

返回:始终

示例: {"key": "value", "mylabel": 123}

name

字符串

网络的名称

返回:始终

示例: "my-volume"

作者

  • Lukas Kaemmerling (@lkaemmerling)