graylog

Роль Ansible для Graylog

Эта роль устанавливает и настраивает Graylog.

Предполагается, что у вас уже есть другие роли для Elasticsearch, MongoDB, Nginx и др.

Требования

  • Вам нужен работающий кластер Elasticsearch и кластер MongoDB.
  • Управляемые серверы должны иметь возможность общаться с https://packages.graylog2.org/.
  • Эта роль протестирована только на Debian 10.x (Buster).

Переменные роли

Эта роль старается сохранить ту же конфигурацию по умолчанию, как если бы вы вручную устанавливали Graylog. Все значения по умолчанию определены в ./defaults/main.yml, вам следует с ним ознакомиться. Мы стараемся сохранить те же названия для переменных Ansible, что и названия в конфигурационном файле Graylog, но с префиксом graylog_. Вы можете получить больше информации о каждом параметре в документации Graylog.

Вы должны определить как минимум две переменные:

  • graylog_password_secret: вы должны сгенерировать его содержимое с помощью команды: pwgen -N 1 -s 96 или tr -cd '[:alnum:]' < /dev/urandom | fold -w96 | head -n1
  • graylog_root_password_sha2: вам нужно сгенерировать его содержимое с помощью команды: echo -n your_password | shasum -a 256 (Вы должны заменить 'your_password' на фактический пароль!)
    Или вы можете использовать функцию Ansible hash(): graylog_root_password_sha2: "{{ vault_graylog_root_password | hash('sha256') }}".

Эта роль также поддерживает установку плагинов. Плагины должны быть файлами с расширением .jar, а управляемые хосты должны иметь возможность их загружать. Проверка контрольной суммы является необязательной и работает как параметр проверки контрольной суммы в модуле get_url Ansible.

graylog_plugins:
  - url: https://github.com/graylog-labs/graylog-plugin-metrics-reporter/releases/download/3.0.0/metrics-reporter-prometheus-3.0.0.jar
    checksum: sha256:383eac2135baf248b5a0828a9e305130a2ab863b07afeef30cba00be05fc7cf9

Если некоторые из ваших плагинов нуждаются в конфигурации в основном конфигурационном файле Graylog, есть специальная переменная для этого graylog_custom_config. Это словарь, ключи используются в качестве названий параметров, а значения — как значения. Например:

graylog_custom_config:
  metrics_prometheus_enabled: true
  metrics_prometheus_report_interval: 1m
  metrics_prometheus_address: 127.0.0.1:9001
  metrics_prometheus_job_name: graylog

добавит в конец файла /etc/graylog/server/server.conf:

# Пользовательская конфигурация, если она необходима для плагинов.
metrics_prometheus_enabled = True
metrics_prometheus_report_interval = 1m
metrics_prometheus_address = 127.0.0.1:9001
metrics_prometheus_job_name = graylog

Зависимости

Список других ролей, размещенных на Galaxy, должен быть здесь, а также любые детали относительно параметров, которые могут потребоваться для других ролей, или переменных, используемых из других ролей.

Пример плейбука

- hosts: logs-servers
  gather_facts: True
  become: true
  vars:
    graylog_password_secret: "OMFPRQwk7Pg7i9Apun5xbuK4ICl0cfNUbZ5QblvmHKnKvnpzbjxtgHIoaSiEmi9XVlbqDhI6d8UqErW2wRiS0uapaHRgW4e"
    graylog_root_password_sha2: "4da3376323046a3bb6759f0a3f4ae7100a0567950c53ee42d2e19201baaa6dfc"
    # Вы также можете попросить Ansible захэшировать его и использовать хранилище для пароля.
    # graylog_root_password_sha2: "{{ vault_graylog_root_password | hash('sha256') }}"
  roles:
    - role: bimdata.graylog

Лицензия

MIT

Информация об авторе

BIMData.io

О проекте

This role installs and configures Graylog.

Установить
ansible-galaxy install bimdata/ansible_role_graylog
Лицензия
mit
Загрузки
1257
Владелец