alloy(role): add documentation
- add README - add argument_specs - removed tags
This commit is contained in:
parent
25bf4da29d
commit
099852f588
8 changed files with 65 additions and 7 deletions
28
roles/alloy/README.md
Normal file
28
roles/alloy/README.md
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# `Grafana Alloy` role
|
||||
|
||||
Installs and configures [Grafana Alloy](https://grafana.com/docs/alloy/latest/) on Debian-based systems.
|
||||
Optionally deploys a [Blackbox exporter](https://github.com/prometheus/blackbox_exporter) config and a [UniFi Poller](https://unpoller.com/).
|
||||
|
||||
## Supported Distributions
|
||||
|
||||
Should work on Debian-based distributions.
|
||||
|
||||
## Required Arguments
|
||||
|
||||
- `alloy_config_default`: The default Alloy configuration. Recomanded for configuration that hosts of a groupe share.
|
||||
|
||||
## Optional Arguments
|
||||
|
||||
- `alloy_config_additional`: Additional Alloy configuration appended to the default config. Recomanded for per host configuration
|
||||
- `alloy_cap_net_bind_service`: Grant Alloy the `CAP_NET_BIND_SERVICE` capability, allowing it to bind to privileged ports (<1024).
|
||||
|
||||
### Blackbox Exporter
|
||||
- `alloy_blackbox_exporter_config_default`: Default blackbox exporter configuration.
|
||||
- `alloy_blackbox_exporter_config_additional`: Additional blackbox exporter configuration appended to the default blackbox exporter config.
|
||||
|
||||
### UniFi Poller
|
||||
|
||||
- `alloy_unpoller_enabled`: Enable the UniFi Poller container to scrape UniFi metrics.
|
||||
- `alloy_unpoller_unifi_user`: Username for the UniFi controller used by unpoller, defaults to `unpoller`.
|
||||
- `alloy_unpoller_unifi_password`: Password for the UniFi controller. Required when `alloy_unpoller_enabled` is `true`.
|
||||
- `alloy_unpoller_unifi_url`: URL of the UniFi controller. Required when `alloy_unpoller_enabled` is `true`.
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
---
|
||||
alloy_cap_net_bind_service: false
|
||||
alloy_do_we_have_v6: "{{ (ansible_facts['all_ipv6_addresses'] | select('match', '^[23]') | list | length > 0) | ternary('true', 'false') }}"
|
||||
|
||||
alloy_config_default: |
|
||||
prometheus.remote_write "default" {
|
||||
|
|
|
|||
33
roles/alloy/meta/argument_specs.yaml
Normal file
33
roles/alloy/meta/argument_specs.yaml
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
argument_specs:
|
||||
main:
|
||||
options:
|
||||
alloy_config_default:
|
||||
type: str
|
||||
required: true
|
||||
alloy_config_additional:
|
||||
type: str
|
||||
required: false
|
||||
alloy_blackbox_exporter_config_default:
|
||||
type: str
|
||||
required: false
|
||||
alloy_blackbox_exporter_config_additional:
|
||||
type: str
|
||||
required: false
|
||||
alloy_cap_net_bind_service:
|
||||
type: bool
|
||||
required: false
|
||||
default: false
|
||||
alloy_unpoller_enabled:
|
||||
type: bool
|
||||
required: false
|
||||
default: false
|
||||
alloy_unpoller_unifi_user:
|
||||
type: str
|
||||
required: false
|
||||
default: unpoller
|
||||
alloy_unpoller_unifi_password:
|
||||
type: str
|
||||
required: false
|
||||
alloy_unpoller_unifi_url:
|
||||
type: str
|
||||
required: false
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
---
|
||||
- name: Render blackbox exporter config
|
||||
tags: [ blackbox-exporter, alloy ]
|
||||
become: true
|
||||
ansible.builtin.template:
|
||||
src: config.blackbox-exporter.j2
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
name: grafana
|
||||
types: deb
|
||||
uris: https://apt.grafana.com
|
||||
suites: stable
|
||||
suites: "{{ ansible_facts['distribution_release'] }}"
|
||||
components:
|
||||
- main
|
||||
signed_by: https://apt.grafana.com/gpg.key
|
||||
|
|
@ -2,9 +2,8 @@
|
|||
- name: Deploy Grafana Alloy with config
|
||||
tags: [ alloy ]
|
||||
block:
|
||||
- name: Install Alloy on Debian
|
||||
when: ansible_facts['distribution'] == "Debian"
|
||||
ansible.builtin.include_tasks: install_debian.yml
|
||||
- name: Install Alloy
|
||||
ansible.builtin.include_tasks: install.yaml
|
||||
|
||||
- name: Create systemd override for alloy
|
||||
become: true
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
---
|
||||
- name: Install and Setup unpoller
|
||||
tags: [ unpoller, alloy, podman, container ]
|
||||
block:
|
||||
- name: Install Podman
|
||||
become: true
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
---
|
||||
alloy_enable_blackbox_exporter: "{{ 'prometheus.exporter.blackbox' in (alloy_config_default + alloy_config_additional) }}"
|
||||
alloy_do_we_have_v6: "{{ (ansible_facts['all_ipv6_addresses'] | select('match', '^[23]') | list | length > 0) | ternary('true', 'false') }}"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue