influxdb_retention_policy - Manage InfluxDB retention policies

New in version 2.1.

Synopsis

Requirements

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

  • python >= 2.6
  • influxdb >= 0.9
  • requests

Parameters

Parameter Choices/Defaults Comments
database_name
required
Name of the database.
default
required
Sets the retention policy as default retention policy
duration
required
Determines how long InfluxDB should keep the data
hostname Default:
localhost
The hostname or IP address on which InfluxDB server is listening.
Since version 2.5, defaulted to localhost.
password Default:
root
Password that will be used to authenticate against InfluxDB server.
Alias login_password added in version 2.5.

aliases: login_password
policy_name
required
Name of the retention policy
port Default:
8086
The port on which InfluxDB server is listening
proxies
(added in 2.5)
HTTP(S) proxy to use for Requests to connect to InfluxDB server.
replication
required
Determines how many independent copies of each point are stored in the cluster
retries
(added in 2.5)
Default:
3
Number of retries client will try before aborting.
0 indicates try until success.
ssl
(added in 2.5)
Use https instead of http to connect to InfluxDB server.
timeout
(added in 2.5)
Number of seconds Requests will wait for client to establish a connection.
udp_port
(added in 2.5)
Default:
4444
UDP port to connect to InfluxDB server.
use_udp
(added in 2.5)
Use UDP to connect to InfluxDB server.
username Default:
root
Username that will be used to authenticate against InfluxDB server.
Alias login_username added in version 2.5.

aliases: login_username
validate_certs
(added in 2.5)
Default:
yes
If set to no, the SSL certificates will not be validated.
This should only set to no used on personally controlled sites using self-signed certificates.

Examples

# Example influxdb_retention_policy command from Ansible Playbooks
- name: create 1 hour retention policy
  influxdb_retention_policy:
      hostname: "{{influxdb_ip_address}}"
      database_name: "{{influxdb_database_name}}"
      policy_name: test
      duration: 1h
      replication: 1
      ssl: yes
      validate_certs: yes

- name: create 1 day retention policy
  influxdb_retention_policy:
      hostname: "{{influxdb_ip_address}}"
      database_name: "{{influxdb_database_name}}"
      policy_name: test
      duration: 1d
      replication: 1

- name: create 1 week retention policy
  influxdb_retention_policy:
      hostname: "{{influxdb_ip_address}}"
      database_name: "{{influxdb_database_name}}"
      policy_name: test
      duration: 1w
      replication: 1

- name: create infinite retention policy
  influxdb_retention_policy:
      hostname: "{{influxdb_ip_address}}"
      database_name: "{{influxdb_database_name}}"
      policy_name: test
      duration: INF
      replication: 1
      ssl: no
      validate_certs: no

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Maintenance

This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.

For a list of other modules that are also maintained by the Ansible Community, see here.

Author

  • Kamil Szczygiel (@kamsz)

Hint

If you notice any issues in this documentation you can edit this document to improve it.