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

注意

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

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

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

要在 playbook 中使用它,请指定: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)