manala.rsyslog

#######################################################################################################

:exclamation: 废弃警告 :exclamation:

此仓库及其关联角色已废弃,建议使用 Manala Ansible Collection

您可以在 集合仓库 中找到相关使用信息

#######################################################################################################

Ansible 角色: Rsyslog 构建状态

:exclamation: 报告问题提交拉取请求主 Ansible 角色仓库 :exclamation:

此角色负责配置 Rsyslog

它是 Manala Ansible 堆栈 的一部分,但也可以作为独立组件使用。

要求

无。

依赖

无。

安装

Ansible 2+

使用 ansible galaxy 命令行工具:

ansible-galaxy install manala.rsyslog

使用 ansible galaxy 需求文件:

- src: manala.rsyslog

角色处理程序

名称 类型 描述
rsyslog restart 服务 重新启动 rsyslog 服务

角色变量

名称 默认值 类型 描述
manala_rsyslog_install_packages ~ 数组 需要安装的依赖包
manala_rsyslog_install_packages_default ['rsyslog'] 数组 默认的需要安装的依赖包
manala_rsyslog_config_template 'config/_default.j2' 字符串 配置基础模板路径
manala_rsyslog_config ~ 数组/字符串 配置指令
manala_rsyslog_configs_exclusive false 数组 额外配置的专属性
manala_rsyslog_configs_dir '/etc/rsyslog.d' 字符串 额外配置的目录路径
manala_rsyslog_configs_defaults {} 数组 额外配置的默认值
manala_rsyslog_configs [] 数组 额外配置的指令

配置示例

基于内容

manala_rsyslog_config: |
  $FileOwner root
  $FileGroup adm
  $FileCreateMode 0640
  $DirCreateMode 0755
  $Umask 0022

基于模板

manala_rsyslog_config_template: my/rsyslog.conf.j2

基于字典数组参数(已废弃):

manala_rsyslog_config_template: config/default.prod.j2
manala_rsyslog_config:
  - $ModLoad imklog: false
  - $ModLoad immark: true
  - |
    *.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none    -/var/log/messages

配置文件

manala_rsyslog_configs 允许您使用模板和配置或原始内容定义 rsyslog 配置文件。

可以提供状态(present|absent|ignore)。

manala_rsyslog_configs:
  # 基于配置
  - file: config.conf
    config:
      foo.*: -/var/log/foo.log
      bar.*: -/var/log/bar.log
  # 基于内容
  - file: content.conf
    config: |
      foo.* -/var/log/foo.log
      bar.* -/var/log/bar.log
  # 基于模板(基于文件名)
  - template: rsyslog/bar.conf.j2
    config:
      foo: bar
  # 基于模板(强制文件名)
  - file: baz.conf
    template: rsyslog/bar.conf.j2
    config:
      foo: bar
  # 基于字典数组的模板(已废弃)
  - file: foo.conf
    template: configs/rules.prod.j2
    config:
      - auth,authpriv.*           /var/log/auth.log
      - '*.*;auth,authpriv.none   -/var/log/syslog'
      - daemon.*                  -/var/log/daemon.log
      - kern.*                    -/var/log/kern.log
      - mail.*                    -/var/log/mail.log
      - user.*                    -/var/log/user.log
  # 确保配置不存在
  - file: absent.conf
    state: absent # 默认是 "present"
  # 忽略配置
  - file: ignore.conf
    state: ignore
  # 扁平化配置
  - "{{ my_custom_configs_array }}"

manala_rsyslog_configs_exclusive 允许您清理 manala_rsyslog_configs_dir 键定义的目录中的现有 rsyslog 配置文件。确保不会有旧文件或手动创建的文件更改当前配置。

manala_rsyslog_configs_exclusive: true

示例剧本

- hosts: all
  roles:
    - role: manala.rsyslog

许可

MIT

作者信息

Manala (http://www.manala.io/)

关于项目

Install and configure rsyslog

安装
ansible-galaxy install manala.rsyslog
许可证
Unknown
下载
21.6k
拥有者
Manala is an open source project supported by the french web agency ELAO providing advanced ansible roles for website's infrastructures and far more.