hetzner.hcloud.firewall_resource 模块 – 管理 Hetzner Cloud 防火墙应用到的资源。

注意

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

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

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

要在 playbook 中使用它,请指定: hetzner.hcloud.firewall_resource

hetzner.hcloud 2.5.0 中的新增功能

概要

  • 添加和删除 Hetzner Cloud 防火墙应用到的资源。

别名:hcloud_firewall_resource

需求

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

  • 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 环境变量设置此选项。

firewall

字符串 / 必需

Hetzner Cloud 防火墙的名称或 ID。

label_selectors

列表 / 元素=字符串

标签选择器的列表。

servers

列表 / 元素=字符串

服务器名称或 ID 列表。

state

字符串

防火墙资源的状态。

选项

  • "absent"

  • "present" ← (默认)

另请参阅

另请参阅

Hetzner Cloud API 文档

Hetzner Cloud API 的完整参考。

示例

- name: Apply a firewall to a list of servers
  hetzner.hcloud.firewall_resource:
    firewall: my-firewall
    servers:
      - my-server
      - 3456789
    state: present

- name: Remove a firewall from a list of servers
  hetzner.hcloud.firewall_resource:
    firewall: my-firewall
    servers:
      - my-server
      - 3456789
    state: absent

- name: Apply a firewall to resources using label selectors
  hetzner.hcloud.firewall_resource:
    firewall: my-firewall
    label_selectors:
      - env=prod
    state: present

- name: Remove a firewall from resources using label selectors
  hetzner.hcloud.firewall_resource:
    firewall: my-firewall
    label_selectors:
      - env=prod
    state: absent

返回值

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

描述

hcloud_firewall_resource

字典

Hetzner Cloud 防火墙应用到的资源。

返回:始终

firewall

字符串

Hetzner Cloud 防火墙的名称。

返回:成功

示例: "my-firewall"

label_selectors

列表 / 元素=字符串

标签选择器的列表。

返回:成功

示例: ["env=prod"]

servers

列表 / 元素=字符串

服务器名称列表。

返回:成功

示例: ["my-server1", "my-server2"]

作者

  • Jonas Lammler (@jooola)