robertdebock.rsyslog

Ansibleロール rsyslog

システムにrsyslogをインストールして設定します。

GitHub GitLab ダウンロード バージョン
github gitlab downloads Version

例のプレイブック

この例はmolecule/default/converge.ymlから取られ、各プッシュ、プルリクエスト、およびリリースでテストされています。

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

  roles:
    - role: robertdebock.rsyslog

マシンを準備する必要があります。CIではmolecule/default/prepare.ymlを使用して行います。

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

  roles:
    - role: robertdebock.bootstrap

これらのロールの使用方法についての完全な説明と例もご覧ください。

ロール変数

変数のデフォルト値はdefaults/main.ymlに設定されています。

---
# rsyslogのデフォルトファイル

# ログを受信するサーバーを設定するには、rsyslog_receiverをyesに設定します。
rsyslog_receiver: false

# ログを別のサーバーに転送するには、rsyslog_remoteを受信するrsyslogサーバーのホスト名または
# IPアドレスに設定します。
# この変数を設定しないと、ログは転送されません。
# rsyslog_remote: server1.example.com

# rsylog_remoteが設定されている場合、リモートサーバーに送信するメッセージを決定するための
# "セレクタ"パターンを設定します。デフォルトは"*.*"で、すべてを送信します。
# `man rsyslog.conf`を参照してください。
rsyslog_remote_selector: "*.*"

# rsylog_remoteが設定されている場合、yesならTCPを使用し、noなら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() failed: Cannot assign requested addressメッセージを回避します
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 GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab

コンテキスト

このロールは、多くの互換性のあるロールの一部です。詳細情報については、これらのロールのドキュメントをご覧ください。

関連するロールの概要は次のとおりです: dependencies

互換性

このロールは次のコンテナイメージでテストされています:

コンテナ タグ
Alpine すべて
Amazon Candidate
EL 9
Debian すべて
Fedora すべて
Ubuntu すべて

必要なAnsibleの最小バージョンは2.12で、次のテストが行われています:

  • 前のバージョン。
  • 現在のバージョン。
  • 開発バージョン。

問題が見つかった場合は、GitHubに登録してください。

ライセンス

Apache-2.0

著者情報

robertdebock

私を支援することを検討してください。

プロジェクトについて

Install and configure rsyslog on your system.

インストール
ansible-galaxy install robertdebock.rsyslog
ライセンス
apache-2.0
ダウンロード
334.6k
所有者
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.