hetzner.hcloud.primary_ip 模块 – 在 Hetzner Cloud 上创建和管理云主 IP。

注意

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

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

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

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

hetzner.hcloud 1.8.0 中的新增功能

概要

  • 在 Hetzner Cloud 上创建、更新和管理云主 IP。

别名:hcloud_primary_ip

需求

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

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

auto_delete

布尔值

在分配给它的资源被删除时删除主 IP。

选项

  • false ← (默认)

  • true

datacenter

字符串

Hetzner Cloud 主 IP 的位置。

如果没有给出 *server* 且主 IP 不存在,则需要此参数。

delete_protection

布尔值

保护主 IP 不被删除。

选项

  • false

  • true

id

整数

要管理的 Hetzner Cloud 主 IP 的 ID。

如果没有给出主 IP *name*,则仅需此参数。

labels

字典

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

name

字符串

要管理的 Hetzner Cloud 主 IP 的名称。

如果没有给出主 IP *id* 或主 IP 不存在,则仅需此参数。

server

字符串

应将主 IP 分配到的 Hetzner Cloud 服务器的名称或 ID。

主 IP 不能分配给正在运行的服务器。

如果没有给出 datacenter 且主 IP 不存在,则需要此参数。

state

字符串

主 IP 的状态。

选项

  • "absent"

  • "present" ← (默认)

type

字符串

主 IP 的类型。

如果主 IP 不存在,则需要此参数

选项

  • "ipv4"

  • "ipv6"

另请参阅

另请参阅

Hetzner Cloud API 文档

Hetzner Cloud API 的完整参考。

示例

- name: Create a IPv4 Primary IP
  hetzner.hcloud.primary_ip:
    name: my-primary-ip
    datacenter: fsn1-dc14
    type: ipv4
    state: present

- name: Create a IPv6 Primary IP
  hetzner.hcloud.primary_ip:
    name: my-primary-ip
    datacenter: fsn1-dc14
    type: ipv6
    state: present

- name: Delete a Primary IP
  hetzner.hcloud.primary_ip:
    name: my-primary-ip
    state: absent

- name: Ensure the server is stopped
  hetzner.hcloud.server:
    name: my-server
    state: stopped
- name: Create a Primary IP attached to a Server
  hetzner.hcloud.primary_ip:
    name: my-primary-ip
    server: my-server
    type: ipv4
    state: present
- name: Ensure the server is started
  hetzner.hcloud.server:
    name: my-server
    state: started

返回值

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

描述

hcloud_primary_ip

复杂类型

主 IP 实例

返回:始终

assignee_id

整数

分配给主 IP 的资源的 ID,如果未分配,则为 null。

返回:始终

示例: 1937415

assignee_type

字符串

可以分配主 IP 的资源类型。

返回:始终

示例: "server"

auto_delete

布尔值

在分配给它的资源被删除时删除主 IP。

返回:始终

示例: false

datacenter

字符串

主 IP 数据中心的名称

返回:始终

示例: "fsn1-dc14"

delete_protection

布尔值

如果主 IP 受保护以防止删除,则为 True

返回:始终

示例: false

id

整数

主 IP 的 ID

返回:始终

示例: 12345

ip

字符串

主 IP 的 IP 地址

返回:始终

示例: "116.203.104.109"

labels

字典

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

返回:始终

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

name

字符串

主 IP 的名称

返回:始终

示例: "my-primary-ip"

type

字符串

主 IP 的类型

返回:始终

示例: "ipv4"

作者

  • Lukas Kaemmerling (@lkaemmerling)