146 lines
4.7 KiB
YAML
146 lines
4.7 KiB
YAML
# - name: server | telegraf | remove repo
|
|
# file:
|
|
# path: "/etc/apt/sources.list.d/influxdata.list"
|
|
# state: absent
|
|
|
|
- name: server | telegraf | download key
|
|
ansible.builtin.uri:
|
|
url: "https://repos.influxdata.com/influxdata-archive_compat.key"
|
|
dest: "/tmp/influxdb.key"
|
|
creates: "/tmp/influxdb.key"
|
|
|
|
- name: server | telegraf | verify and import key
|
|
ansible.builtin.shell:
|
|
cmd: "echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c /tmp/influxdb.key' | sha256sum -c && cat /tmp/influxdb.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null"
|
|
creates: "/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg"
|
|
|
|
- name: server | telegraf | add repository
|
|
ansible.builtin.shell:
|
|
cmd: "echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list"
|
|
creates: "/etc/apt/sources.list.d/influxdata.list"
|
|
|
|
- name: server | telegraf | install telegraf
|
|
ansible.builtin.apt:
|
|
name: "telegraf"
|
|
state: latest
|
|
update_cache: yes
|
|
|
|
- name: server | telegraf | copy basic config
|
|
ansible.builtin.copy:
|
|
dest: "/etc/telegraf/telegraf.d/{{ item | basename }}"
|
|
src: "{{ item }}"
|
|
with_fileglob:
|
|
- "telegraf.d/*.conf"
|
|
notify: restart_telegraf
|
|
|
|
- name: Configure telegraf agent hostname
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*hostname\s*='
|
|
line: ' hostname = "{{ ansible_fqdn }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent interval
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*interval\s*='
|
|
line: ' interval = "{{ telegraf_agent_interval }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent flush_interval
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*flush_interval\s*='
|
|
line: ' flush_interval = "{{ telegraf_agent_flush_interval }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent flush_jitter
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*flush_jitter\s*='
|
|
line: ' flush_jitter = "{{ telegraf_agent_flush_jitter }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent collection_jitter
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*collection_jitter\s*='
|
|
line: ' collection_jitter = "{{ telegraf_agent_collection_jitter }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent metric_batch_size
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*metric_batch_size\s*='
|
|
line: ' metric_batch_size = "{{ telegraf_agent_metric_batch_size }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent metric_buffer_limit
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*metric_buffer_limit\s*='
|
|
line: ' metric_buffer_limit = "{{ telegraf_agent_metric_buffer_limit }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: Configure telegraf agent round_interval
|
|
tags: telegraf
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/telegraf/telegraf.conf
|
|
regexp: '^\s*#?\s*round_interval\s*='
|
|
line: ' round_interval = "{{ telegraf_agent_round_interval }}"'
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
notify: restart_telegraf
|
|
when: ansible_distribution in ["Debian", "Ubuntu", "Linux Mint"]
|
|
|
|
- name: server | telegraf | create systemd override directory for telegraf
|
|
ansible.builtin.file:
|
|
path: /etc/systemd/system/telegraf.service.d
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: server | telegraf | define systemd-limits
|
|
ansible.builtin.template:
|
|
src: telegraf-override.j2
|
|
dest: /etc/systemd/system/telegraf.service.d/override.conf
|
|
notify:
|
|
- reload_systemd
|
|
- restart_telegraf
|
|
|
|
|