community.general.influxdb_retention_policy module – Manage InfluxDB retention policies
Note
This module is part of the community.general collection (version 8.6.4).
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
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.general.influxdb_retention_policy
.
Synopsis
Manage InfluxDB retention policies.
Aliases: database.influxdb.influxdb_retention_policy
Requirements
The below requirements are needed on the host that executes this module.
influxdb >= 0.9
requests
Parameters
Parameter |
Comments |
---|---|
Name of the database. |
|
Sets the retention policy as default retention policy. Choices:
|
|
Determines how long InfluxDB should keep the data. If specified, it should be Required only if |
|
The hostname or IP address on which InfluxDB server is listening. Default: |
|
Password that will be used to authenticate against InfluxDB server. Default: |
|
The path on which InfluxDB server is accessible. Only available when using python-influxdb >= 5.1.0. Default: |
|
Name of the retention policy. |
|
The port on which InfluxDB server is listening. Default: |
|
HTTP(S) proxy to use for Requests to connect to InfluxDB server. Default: |
|
Determines how many independent copies of each point are stored in the cluster. Required only if |
|
Number of retries client will try before aborting.
Only available when using python-influxdb >= 4.1.0. Default: |
|
Determines the time range covered by a shard group. If specified it must be at least one hour. If none, it’s determined by InfluxDB by the rentention policy’s duration. Supports complex duration expressions with multiple units. |
|
Use https instead of http to connect to InfluxDB server. Choices:
|
|
State of the retention policy. Choices:
|
|
Number of seconds Requests will wait for client to establish a connection. |
|
UDP port to connect to InfluxDB server. Default: |
|
Use UDP to connect to InfluxDB server. Choices:
|
|
Username that will be used to authenticate against InfluxDB server. Default: |
|
If set to This should only set to Choices:
|
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Examples
# Example influxdb_retention_policy command from Ansible Playbooks
- name: Create 1 hour retention policy
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
duration: 1h
replication: 1
ssl: true
validate_certs: true
state: present
- name: Create 1 day retention policy with 1 hour shard group duration
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
duration: 1d
replication: 1
shard_group_duration: 1h
state: present
- name: Create 1 week retention policy with 1 day shard group duration
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
duration: 1w
replication: 1
shard_group_duration: 1d
state: present
- name: Create infinite retention policy with 1 week of shard group duration
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
duration: INF
replication: 1
ssl: false
shard_group_duration: 1w
state: present
- name: Create retention policy with complex durations
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
duration: 5d1h30m
replication: 1
ssl: false
shard_group_duration: 1d10h30m
state: present
- name: Drop retention policy
community.general.influxdb_retention_policy:
hostname: "{{ influxdb_ip_address }}"
database_name: "{{ influxdb_database_name }}"
policy_name: test
state: absent