This is a ansible collection to set up vector on various systems.
OS | Tested |
---|---|
Debian 12 | ✅ |
RL8 | ✅ |
RL9 | ✅ |
Ubuntu 22.04 | ✅ |
Ubuntu 24.04 | ✅ |
Variable | Required | Default | Description |
---|---|---|---|
vector_template | yes | vector.yaml.j2 | path of your vector.yaml template |
vector_config_file | yes | /etc/vector/vector.yaml | system path of your vector.yaml configuration |
vector_groups | no | add user vector to specified groups | |
vector_install_from_repo | no | false | whether to install vector from packages or install from deb or redhat based repositories |
vector_repo_key | no | see defaults/main.yml |
configurable repo key, in case repo proxy is used |
vector_repo | no | see defaults/main.yml |
configurable repo, in case repo proxy is used |
vector_restartsec | no | add RestartSec to systemd config | |
vector_package | no | vector | option to define vector version with package name |
vector_version | no | define vector version while vector is installed by source | |
sources | yes | false | ingest observability data from a wide variety of targets link |
transforms | no | false | shape your data as it moves through your Vector topology link |
sinks | yes | false | deliver your observability data to a variety of destinations link |
sources:
journald:
type: journald
current_boot_only: true
transforms:
grok:
type: grok_parser
inputs:
- journald
pattern: '(?<capture>\\d+)%{GREEDYDATA}'
sinks:
vector:
type: vector
inputs: ["journald"]
address: "vector.example.com:9000"
- name: Install and configure vector
hosts: all
vars:
sources:
journald:
type: journald
current_boot_only: true
transforms:
grok:
type: grok_parser
inputs:
- journald
pattern: '(?<capture>\\d+)%{GREEDYDATA}'
sinks:
vector:
type: vector
inputs: ["journald"]
address: "vector.example.com:9000"
roles:
- telekom_mms.vector.vector