community.general.etcd3 模块 – 设置或删除 etcd3 集群中的键值对

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

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

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

要在剧本中使用它,请指定: community.general.etcd3

概要

  • 使用其 v3 api 在 etcd3 集群中设置或删除值。

  • 需要 python etcd3 库才能工作

要求

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

  • etcd3

参数

参数

注释

ca_cert

路径

用于验证 etcd 主机的证书颁发机构。

如果定义了 client_certclient_key,则需要此参数。

client_cert

路径

用于 SSL 客户端身份验证的 PEM 格式证书链文件。

如果定义了 client_key,则需要此参数。

client_key

路径

包含用于 SSL 客户端身份验证的私钥的 PEM 格式文件。

如果定义了 client_cert,则需要此参数。

host

字符串

集群的 IP 地址

默认值: "localhost"

key

字符串 / 必需

集群中存储信息的位置

password

字符串

用于身份验证的密码。

如果定义了 user,则需要此参数。

port

整数

用于连接到集群的端口号

默认值: 2379

state

字符串 / 必需

键的值的状态。

可以是 present 或 absent

选项

  • "present"

  • "absent"

timeout

整数

以秒为单位的套接字级别超时。

user

字符串

用于身份验证的 etcd 用户。

value

字符串 / 必需

存储的信息

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 中运行,并在不修改目标的情况下返回更改状态预测。

diff_mode

支持:不支持

在差异模式下,将返回有关已更改内容(或可能需要在 check_mode 中更改)的详细信息。

示例

- name: Store a value "bar" under the key "foo" for a cluster located "https://127.0.0.1:2379"
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    host: "localhost"
    port: 2379
    state: "present"

- name: Authenticate using user/password combination with a timeout of 10 seconds
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    state: "present"
    user: "someone"
    password: "password123"
    timeout: 10

- name: Authenticate using TLS certificates
  community.general.etcd3:
    key: "foo"
    value: "baz3"
    state: "present"
    ca_cert: "/etc/ssl/certs/CA_CERT.pem"
    client_cert: "/etc/ssl/certs/cert.crt"
    client_key: "/etc/ssl/private/key.pem"

返回值

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

Key

描述

key

字符串

被查询的键

返回:始终返回

old_value

字符串

集群中的先前值

返回:始终返回

作者

  • Jean-Philippe Evrard (@evrardjp)

  • Victor Fauth (@vfauth)