buluma.rsyslog

Ansible 角色 rsyslog

在您的系统上安装和配置 rsyslog。

GitHub 版本 问题 拉取请求 下载量
github Version Issues PullRequests Ansible Role

示例剧本

该示例取自 molecule/default/converge.yml,并在每次推送、拉取请求和发布时进行测试。

---
- name: 汇聚
  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: 准备
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap

有关如何使用这些角色的完整解释和示例

角色变量

变量的默认值在 defaults/main.yml 中设置:

---
# rsyslog 的默认文件

# 要配置服务器接收日志,请将 rsyslog_receiver 设置为 true。
rsyslog_receiver: false

# 要将日志转发到另一台服务器,请将 rsyslog_remote 设置为接收 rsyslog 服务器的主机名或 IP 地址。
# 如果未设置此变量,则不会转发日志。
# rsyslog_remote: server1.example.com

# 如果设置了 rsylog_remote,则设置“选择器”模式,以确定要发送哪些消息到远程服务器。默认值为 "*.*",表示发送所有信息。
# 请参见 `man rsyslog.conf`。
rsyslog_remote_selector: "*.*"

# 如果设置了 rsylog_remote,则如果为 true 使用 TCP,为 false 使用 UDP。
rsyslog_remote_tcp: true

# 如果设置了 rsylog_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' }

# 使用(过时的)旧版,v6 之前的配置文件格式,或更现代的 v6 及以上版本中的“高级”配置文件格式。默认使用“旧版”格式,以便不突然更改这个角色的现有用户的配置文件。
# 关于不同格式的更多信息,请访问 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: []

# 避免由于 logrotate 导致 sd_journal_get_cursor() 失败:无法分配请求的地址消息
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

上下文

此角色是许多兼容角色的一部分。请查看这些角色的 文档 以获取更多信息。

以下是相关角色的概述:

依赖关系

兼容性

此角色在以下 容器镜像 上经过测试:

容器 标签
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.rsyslog
许可证
apache-2.0
下载
39.5k
拥有者
DevOps Engineer