logrotate

gabops.logrotate

Статус сборки

Устанавливает и настраивает logrotate.

Требования

Нет.

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

Переменная Значение по умолчанию Описание
logrotate_packages [] Определяет список пакетов, которые будут установлены для установки logrotate. Обратите внимание, что эта роль уже обрабатывает пакеты для установки, однако, эта переменная существует для того, чтобы вы могли объявить свой собственный список пакетов, если это необходимо.
logrotate_enable_repo "" Определяет репозиторий, который будет активирован при установке пакетов, определённых в переменной logrotate_packages. Учтите, что эта опция работает только в дистрибутивах семейства RedHat.
logrotate_config_global [] Определяет конфигурацию, которая будет применена к /etc/logrotate.conf. Обратите внимание, что если эта переменная пустая, как по умолчанию, файл logrotate.conf не будет изменён.
logrotate_config_files [] Определяет индивидуальные конфигурации logrotate, которые будут применены. Смотрите раздел Заметки и Пример плейбука для получения дополнительной информации.

Заметки:

  • Все конфигурации, определённые в logrotate_config_files, будут применены к стандартному каталогу /etc/logrotate.d. Это поведение можно изменить, если в переменной logrotate_config_global вы объявите директиву include. Например, если вы определите:
logrotate_config_global:
  - include
  - weekly
  - rotate 4
  - create
  - dateext
  - include /etc/customdir

Роль автоматически обнаружит путь в директиве include и будет использовать его вместо стандартного /etc/logrotate.d.

  • Все конфигурации, определённые в logrotate_config_files, будут добавлены в отдельные файлы, используя значение, определённое в name, в качестве имени файла.

  • Параметры, которые требует каждое определение в logrotate_config_files, это:

logrotate_config_files:
  - name: ""        # => Обязательно.
    state: ""       # => Необязательно: возможные значения - present или absent. Если не указано, будет present по умолчанию.
    path: ""        # => Обязательно (это может быть строка или список!).
    directives: ""  # => Обязательно.

Зависимости

Нет.

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

    - hosts: servers
      vars:
        logrotate_config_global:
          - weekly
          - rotate 4
          - create
          - dateext
          - include /etc/logrotate.d

        logrotate_config_files:
          - name: messages
            state: absent
            path: /var/log/messages
            directives: |
              rotate 5
              weekly
              postrotate
                /usr/bin/killall -HUP syslogd
              endscript

          - name: httpd
            path:
              - /var/log/httpd/access.log
              - /var/log/httpd/error.log
            directives: |
              rotate 5
              mail [email protected]
              size 100k
              sharedscripts
              postrotate
                /usr/bin/killall -HUP httpd
              endscript

      roles:
         - role: gabops.logrotate

Лицензия

MIT

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

Габриэль Суárez (Gabops)

Установить
ansible-galaxy install gabops/ansible-role-logrotate
Лицензия
mit
Загрузки
22829
Владелец
I am a DevOps engineer who likes Python, Go, AWS, Kubernetes and climbing with friends.