W3cubDocs

/Ansible

community.general.etcd3 – Set or delete key value pairs from an etcd3 cluster

Note

This plugin is part of the community.general collection (version 3.8.1).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.etcd3.

Synopsis

  • Sets or deletes values in etcd3 cluster using its v3 api.
  • Needs python etcd3 lib to work

Requirements

The below requirements are needed on the host that executes this module.

  • etcd3

Parameters

Parameter Choices/Defaults Comments
ca_cert
path
The Certificate Authority to use to verify the etcd host.
Required if client_cert and client_key are defined.
client_cert
path
PEM formatted certificate chain file to be used for SSL client authentication.
Required if client_key is defined.
client_key
path
PEM formatted file that contains your private key to be used for SSL client authentication.
Required if client_cert is defined.
host
string
Default:
"localhost"
the IP address of the cluster
key
string / required
the key where the information is stored in the cluster
password
string
The password to use for authentication.
Required if user is defined.
port
integer
Default:
2379
the port number used to connect to the cluster
state
string / required
    Choices:
  • present
  • absent
the state of the value for the key.
can be present or absent
timeout
integer
The socket level timeout in seconds.
user
string
The etcd user to authenticate with.
value
string / required
the information stored

Examples

- name: Store a value "bar" under the key "foo" for a cluster located "http://localhost: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"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
key
string
always
The key that was queried

old_value
string
always
The previous value in the cluster



Authors

  • Jean-Philippe Evrard (@evrardjp)
  • Victor Fauth (@vfauth)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/etcd3_module.html