This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.9. systemd-journald および Fluentd の設定
Fluentd のジャーナルからの読み取りや、ジャーナルのデフォルト設定値は非常に低く、ジャーナルがシステムサービスからのロギング速度に付いていくことができないためにジャーナルエントリーが失われる可能性があります。
ジャーナルでエントリーが失われるのを防ぐことができるように RateLimitIntervalSec=30s および RateLimitBurst=10000 (必要な場合はさらに高い値) を設定することが推奨されます。
3.9.1. クラスターロギング用の systemd-journald の設定 リンクのコピーリンクがクリップボードにコピーされました!
プロジェクトのスケールアップ時に、デフォルトのロギング環境にはいくらかの調整が必要になる場合があります。
たとえば、ログが見つからない場合は、journald の速度制限を引き上げる必要がある場合があります。一定期間保持するメッセージ数を調整して、クラスターロギングがログをドロップせずに過剰なリソースを使用しないようにすることができます。
また、ログを圧縮する必要があるかどうか、ログを保持する期間、ログを保存する方法、ログを保存するかどうかやその他の設定を決定することもできます。
手順
必要な設定で
journald.confファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ログがファイルシステムに書き込まれる前にそれらのログを圧縮するかどうかを指定します。
yesを指定してメッセージを圧縮するか、またはnoを指定して圧縮しないようにします。デフォルトはyesです。 - 2
- ログメッセージを転送するかどうかを設定します。それぞれについて、デフォルトで
noに設定されます。以下を指定します。-
ForwardToConsole: ログをシステムコンソールに転送します。 -
ForwardToKsmg: ログをカーネルログバッファーに転送します。 -
ForwardToSyslog: syslog デーモンに転送します。 -
ForwardToWall: メッセージを wall メッセージとしてすべてのログインしているユーザーに転送します。
-
- 3
- ジャーナルエントリーを保存する最大時間を指定します。数字を入力して秒数を指定します。または、year、month、week、day、h または m などの単位を含めます。無効にするには
0を入力します。デフォルトは1monthです。 - 4
- レート制限を設定します。
RateLimitIntervalSecで定義される期間に、RateLimitBurstで指定される以上のログが受信される場合、この期間内の追加のメッセージすべてはこの期間が終了するまでにドロップされます。デフォルト値であるRateLimitIntervalSec=30sおよびRateLimitBurst=10000を設定することが推奨されます。 - 5
- ログの保存方法を指定します。デフォルトは
persistentです。-
volatile: ログを/var/log/journal/のメモリーに保存します。 -
persistent: ログを/var/log/journal/のディスクに保存します。systemd は存在しない場合はディレクトリーを作成します。 -
auto: ディレクトリーが存在する場合に、ログを/var/log/journal/に保存します。存在しない場合は、systemd はログを/run/systemd/journalに一時的に保存します。 -
none: ログを保存しません。systemd はすべてのログをドロップします。
-
- 6
- ERR、WARNING、NOTICE、INFO、および DEBUG ログについてジャーナルファイルをディスクに同期させるまでのタイムアウトを指定します。 systemd は、CRIT、ALERT、または EMERG ログの受信後すぐに同期を開始します。デフォルトは
1sです。 - 7
- ジャーナルが使用できる最大サイズを指定します。デフォルトは
8gです。 - 8
- systemd が残す必要のあるディスク領域のサイズを指定します。デフォルトは
20%です。 - 9
/var/log/journalに永続的に保存される個別のジャーナルファイルの最大サイズを指定します。デフォルトは10Mです。注記レート制限を削除する場合、システムロギングデーモンの CPU 使用率が高くなることがあります。 以前はスロットリングされていた可能性のあるメッセージが処理されるためです。
systemd 設定の詳細については、https://www.freedesktop.org/software/systemd/man/journald.conf.html を参照してください。このページに一覧表示されるデフォルト設定は OpenShift Container Platform には適用されない可能性があります。
次のコマンドを実行して、
journal.confファイルを base64 に変換し、jrnl_cnfという名前の変数に保存します。export jrnl_cnf=$( cat journald.conf | base64 -w0 )
$ export jrnl_cnf=$( cat journald.conf | base64 -w0 )Copy to Clipboard Copied! Toggle word wrap Toggle overflow 前の手順で作成した
jrnl_cnf変数を含むMachineConfigオブジェクトを作成します。次のサンプルコマンドは、ワーカーのMachineConfigオブジェクトを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- オプション: コントロールプレーン (マスターとも呼ばれます) ノードの場合、ファイル名を
40-master-custom-journald.yamlとして指定できます。 - 2
- オプション: コントロールプレーン (マスターとも呼ばれます) ノードの場合、
masterとしてのロールを指定します。 - 3
- オプション: コントロールプレーン (マスターとも呼ばれます) ノードの場合、名前を
40-master-custom-journaldとして指定できます。 - 4
- オプション:
journald.confファイルにパラメーターの静的コピーを含めるには、${jrnl_cnf}をecho$jrnl_cnfコマンドの出力に置き換えます。 - 5
journal.confファイルのパーミッションを設定します。0644パーミッションを設定することが推奨されます。
マシン設定を作成します。
oc apply -f <file_name>.yaml
$ oc apply -f <file_name>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow コントローラーは新規の
MachineConfigオブジェクトを検出し、新規のrendered-worker-<hash>バージョンを生成します。新規のレンダリングされた設定の各ノードへのロールアウトのステータスをモニターします。
oc describe machineconfigpool/<node>
$ oc describe machineconfigpool/<node>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ノードを
masterまたはworkerとして指定します。
worker の出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow