rsyslog

Ansible роль rsyslog

Установите и настройте rsyslog на вашей системе.

GitHub Версия Проблемы Запросы на слияние Загрузки
github Version Issues PullRequests Ansible Role

Пример Playbook

Этот пример взят из molecule/default/converge.yml и тестируется при каждом пуше, запросе на слияние и релизе.

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: buluma.rsyslog
      vars:
        rsyslog_traditional_file_format: false
        rsyslog_omit_local_logging: false

Машину нужно подготовить. В CI это делается с помощью molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap

Смотрите также полное объяснение и пример о том, как использовать эти роли.

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

Значения по умолчанию для переменных установлены в defaults/main.yml:

---
# файл значений по умолчанию для rsyslog

# Чтобы настроить сервер для приема логов, установите rsyslog_receiver в true.
rsyslog_receiver: false

# Чтобы пересылать логи на другой сервер, укажите rsyslog_remote как имя хоста или
# ip-адрес принимающего сервера rsyslog.
# Не устанавливая эту переменную, логи не будут пересылаться.
# rsyslog_remote: server1.example.com

# Если rsyslog_remote установлен, устанавливает "шаблон" для определения, какие
# сообщения отправлять на удаленный сервер. По умолчанию "*.*" отправляет все.
# Смотрите `man rsyslog.conf`.
rsyslog_remote_selector: "*.*"

# Если rsyslog_remote установлен, используйте TCP, если true. UDP, если false.
rsyslog_remote_tcp: true

# Если rsyslog_remote установлен, порт назначения для использования.
rsyslog_remote_port: 514

# Установите режим для новых директорий; доступно только в устаревшем шаблоне.
rsyslog_dircreatemode: "0700"

# Установите режим для новых файлов; доступно только в устаревшем шаблоне.
rsyslog_filecreatemode: "0644"

# Установите включенные модули
rsyslog_mods:
  - imuxsock
  - imjournal

# Минимальная настройка rsyslog (может конфликтовать с пользовательскими конфигурационными файлами)
rsyslog_deploy_default_config: true

# Правила по умолчанию для rsyslogd
rsyslog_default_rules:
  - { rule: '*.info;mail.none;authpriv.none;cron.none', logpath: '/var/log/messages' }
  - { rule: 'authpriv.*', logpath: '/var/log/secure' }
  - { rule: 'mail.*', logpath: '-/var/log/maillog' }
  - { rule: 'cron.*', logpath: '/var/log/cron' }
  - { rule: '*.emerg', logpath: ':omusrmsg:*' }
  - { rule: 'uucp,news.crit', logpath: '/var/log/spooler' }
  - { rule: 'local7.*', logpath: '/var/log/boot.log' }

# Использовать (устаревший) формат конфигурационного файла legacy, или более
# современный формат конфигурационного файла "advanced", доступный в версии 6 и выше. 
# По умолчанию используется формат 'legacy', чтобы не менять конфигурационные файлы для
# существующих пользователей этой роли без предупреждения.
# Дополнительная информация о разных форматах на сайте rsyslog:
# https://www.rsyslog.com/doc/v8-stable/configuration/conf_formats.html
rsyslog_config_file_format: legacy

# Имя правила конфигурации для добавления в /etc/rsyslog.d/
# rsyslog_forward_rule_name: <дополнить>

# Настройте пакет rsyslog как `present`, или установите `latest`, чтобы установить
# последнюю доступную версию.
rsyslog_package_state: present

# если установлено в false (упрощенное значение по умолчанию для совместимости с sysklogd),
# доменная часть имени, которая находится в том же домене, что и принимающая система,
# отбрасывается. Если установить в true, всегда используются полные имена.
rsyslog_preservefqdn: false

# Настройте дополнительные конфигурационные файлы в /etc/rsyslog.d
# Пример:
# rsyslog_rsyslog_d_files:
#   000-splunk:
#     content: |
#       auth,authpriv.* action(type="omfwd"
#                              target="splunk"
#                              port="514"
#                              protocol="tcp")
rsyslog_rsyslog_d_files: []

# Избежать сообщений sd_journal_get_cursor() failed: Cannot assign requested address
# из-за logrotate
rsyslog_workaroundjournalbug: false

# Отключает получение сообщений через локальный лог-сокет
rsyslog_imuxsock_syssock: false

# Установите дополнительные пакеты rsyslog
# Пример для установки rsyslog-elasticsearch:
# rsyslog_features:
#   - gnutls
#   - elastisearch
rsyslog_features: []

# Файл конфигурации по умолчанию для rsyslog
rsyslog_dest_conf_file: "/etc/rsyslog.conf"

# Включить/Выключить опцию OmitLocalLogging
rsyslog_omit_local_logging: true

# Разрешить использование традиционного формата файла.
rsyslog_traditional_file_format: true

Требования

Состояние используемых ролей

Следующие роли используются для подготовки системы. Вы можете подготовить вашу систему другим способом.

Требование GitHub Версия
buluma.bootstrap Ansible Molecule Version

Контекст

Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.

Вот обзор связанных ролей:

dependencies

Совместимость

Эта роль тестировалась на следующих контейнерных образах:

контейнер метки
Alpine все
Amazon Кандидат
EL 8, 9
Debian все
Fedora все
opensuse все
Ubuntu все

Минимальная требуемая версия Ansible - 2.12, тесты проводились на:

  • Предыдущей версии.
  • Текущей версии.
  • Версии разработки.

Если вы найдете проблемы, пожалуйста, зарегистрируйте их на GitHub

История изменений

История роли

Лицензия

Apache-2.0

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

Shadow Walker

О проекте

Install and configure rsyslog on your system.

Установить
ansible-galaxy install buluma/ansible-role-rsyslog
Лицензия
apache-2.0
Загрузки
39430
Владелец
DevOps Engineer