0x0i.journald

ansible ロゴ

redhat ロゴ

Ansible ロール :signal_strength: :page_with_curl: Journald

Galaxy ロール 最新の GitHub リリース ライセンス: MIT

目次

Ansible ロールは、ログデータを収集し保存するシステムサービスである Journald をインストールおよび設定します。

対応プラットフォーム:
* Debian
* Redhat (CentOS/Fedora)
* Ubuntu

要件

journald は、Linux ディストリビューションのデフォルトのログシステムと見なされ、syslog の後継として考えられています。一般に systemd と一緒にインストールされ、対応プラットフォームのリストでは手動またはユーザーインストールなしで利用可能です。

詳細については、systemdREADME と journald の ドキュメント を参照してください。

ロール変数

変数は利用可能で、以下のソフトウェアおよびマシンプロビジョニングの各段階に従って整理されています。

  • インストール
  • 設定
  • アンインストール

インストール

次の変数は、journald のインストールプロセスに関与する特定の側面を制御するためにカスタマイズできます。ホストには動作中の systemd パッケージがインストールされていることが前提です。OS ディストリビューションに基づく利用可能なバージョンについては こちら を参照してください。

journal_group_adds: <アカウントのリスト> (デフォルト: [])

  • 特権ログ監視機能のために systemd-journal グループに自動的に追加するユーザーアカウントを示します。

ジャーナルファイルは、デフォルトで systemd-journal システムグループによって所有され、読み取り可能ですが、書き込みはできません。このグループにユーザーを追加することで、そのユーザーは権限昇格なしでジャーナルファイルを読み取ることができます。詳細については、systemd-journald サービスのドキュメントを参照してください。

 journal_group_adds:
   - user-account-1
   - user-account-2

設定

journald の設定は、デフォルトで journald.conf という ini-style の設定ファイルに宣言されます。この INI 設定は、ログサービスの望ましい動作を宣言するためのさまざまなオプションを含む単一のセクション [Journal] で構成されます。

これらの設定は、ロールの journald_config ハッシュ変数内で、キーとバリューのペアを持つ辞書のリストとして表現できます。利用可能なオプションの完全なリストについては こちら を参照してください。

[journald_configs: <リストエントリ>:] name: <文字列> (デフォルト: journald.conf)

  • journald 設定ファイルの名前

[journald_configs: <リストエントリ>:] path: <文字列> (デフォルト: /etc/systemd/)

  • journald 設定ファイルのロードパス

パッケージやローカル管理者が基本またはデフォルトの設定をカスタマイズする必要がある場合、次のオーバーライドディレクトリのいずれかに設定スニペットをインストールできます。

設定ロードパス 説明
/etc/systemd/journald.conf ローカルシステム管理者によって定義されたデフォルト/ベース設定
/etc/systemd/journald.conf.d/*.conf ローカル管理者オーバーライドルートディレクトリ(ファイル名は任意の値)
/run/systemd/journald.conf.d/*.conf 実行時オーバーライドルートディレクトリ(ファイル名は任意の値)
/usr/lib/systemd/journald.conf.d/*.conf ベンダーパッケージオーバーライドルートディレクトリ

メイン設定ファイルは、すべての設定ディレクトリよりも先に読み込まれ、最も低い優先順位を持ちます。どの設定ディレクトリのファイルも、単一の設定ファイル内のエントリを上書きします。.conf.d/ 設定サブディレクトリ内のファイルは、サブディレクトリがどれであっても辞書順に整列され読み込まれます。*

[journald_config: <リストエントリ>:] config: <辞書> (デフォルト: {})

  • ジャーナル設定のセクション定義

journald でサポートされているすべての設定/値キーのペアは、各 journald_configs リストエントリ内で表現されるべきで、指定された INI 設定内で適切にレンダリングされる必要があります。

 journald_configs:
   - name: debug-overrides.conf
     path: /run/systemd/journald.conf.d
     config:
       MaxLevelStore: debug
       Storage: volatile
       RateLimitIntervalSec: 0
       RateLimitBurst: 0

アンインストール

管理されている journald.conf 設定を削除し、ターゲットホストをこのロールの適用前の設定状態に戻します(例えば、システムアップグレード中に設定を再利用する際に有用です)。

このアンインストールプロセスを管理するためにカスタマイズ可能な変数は以下です:

perform_uninstall: <true | false> (デフォルト: false)

  • ターゲットホスト上のシステムの journald.conf 設定の管理された構成をアンインストールするかどうか (詳細は: handlers/main.yml を参照)

依存関係

なし

サンプルプレイブック

デフォルトの例:

- hosts: all
  roles:
  - role: 0x0I.journald

永続的なログストレージを設定し、永続性同期間隔を更新/減少させる:

- hosts: staging
  roles:
  - role: 0x0I.journald
    vars:
      journald_configs:
        - config:
            Storage: persistence
            SyncIntervalSec: 10

デバッグオーバーライド設定を持つ基本的なカスタム設定を作成:

- hosts: all
  roles:
  - role: 0x0I.journald
    vars:
      journald_configs:
          # 基本設定は /etc/systemd/journald.conf にインストールされます
          - config:
              Storage: auto
              MaxLevelStore: warning
          # オーバーライド設定は /run/systemd/journald.conf.d/debug-overrides.conf にインストールされます
          - name: debug-overrides.conf
            path: /run/systemd/journald.conf.d
            config:
              Storage: volatile
              MaxLevelStore: debug
              RateLimitIntervalSec: 0
              RateLimitBurst: 0

特権ジャーナルアクセスのために systemd-journal グループにユーザーを追加:

- hosts: prod
  roles:
  - role: 0x0I.journald
    vars:
      journal_group_adds: ['sysadmin-user', 'sre-user']

ライセンス

MIT

著者情報

このロールは2019年に O1.IO によって作成されました。

プロジェクトについて

Journald, a system service that collects and stores logging data

インストール
ansible-galaxy install 0x0i.journald
ライセンス
Unknown
ダウンロード
256
所有者