Роль для автоматизированной установки и настройки Vector — высокопроизводительного инструмента для сбора, обработки и передачи логов и метрик.
Роль выполняет следующие задачи:
- Создаёт системного пользователя и группу для Vector
- Скачивает и распаковывает архив с бинарным файлом Vector
- Создаёт символическую ссылку на бинарный файл
- Развертывает конфигурационный файл из шаблона
- Устанавливает unit-файл systemd
- Перезапускает и включает службу Vector
- Ansible 2.12+
- Целевой хост с Linux (протестировано на AlmaLinux / CentOS-подобных системах)
- Доступ к скачиванию дистрибутива Vector по HTTP(S), либо предварительно скачанный архив
| Переменная | По умолчанию | Описание |
|---|---|---|
vector_version |
"0.51.1" |
Версия Vector |
vector_download_url |
"https://packages.timber.io/vector/{{ vector_version }}/vector-{{ vector_version }}-x86_64-unknown-linux-musl.tar.gz" |
URL архива с бинарным файлом Vector |
vector_install_dir |
"/opt/vector" |
Каталог установки Vector |
vector_config_dir |
"/etc/vector" |
Каталог для конфигурации Vector |
vector_data_dir |
"/var/lib/vector" |
Каталог для данных Vector |
vector_bin_path |
"/usr/local/bin/vector" |
Путь до бинарного файла (символическая ссылка) |
vector_user |
"vector" |
Пользователь, от которого работает служба |
vector_group |
"vector" |
Группа, от которой работает служба |
vector_service_enabled |
true |
Включить автозапуск службы |
vector_service_state |
"started" |
Целевое состояние службы (started, stopped и т.д.) |
| Переменная | Описание |
|---|---|
vector_archive_path |
Путь на целевом хосте, куда будет загружен архив |
| Обработчик | Описание |
|---|---|
restart vector |
Перезапускает службу Vector через ansible.builtin.service |
| Файл | Описание |
|---|---|
templates/vector.yml.j2 |
Конфигурационный файл Vector |
templates/vector.service.j2 |
Unit-файл systemd для службы Vector |
---
- src: https://github.com/wiqt8r/vector-role.git
scm: git
version: "v0.1.0"
name: vector-roleУстановка роли:
ansible-galaxy install -r requirements.yml -p roles---
- name: Install Vector
hosts: vector
roles:
- role: vector-role
tags: [vector]При необходимости параметры можно переопределить в group_vars/vector/vars.yml или непосредственно в playbook:
vector_version: "0.51.1"
vector_install_dir: "/opt/vector"Явных зависимостей от других ролей нет. Роль может использоваться совместно с другими ролями, например, с ролью для ClickHouse.
Этот проект распространяется под лицензией MIT.
wiqt8r - GitHub
- Vector за отличный инструмент для сбора логов