created: 2022-11-16T14:19:30.865Z
ソフトウェアデザインのsystemd実践入門メモ(3)
ソフトウェアデザイン2018年2月号の「systemd実践入門」を読んでメモ。
journald とは
systemd 環境で使われるログ管理ソフト。これまでは rsyslogd が担っていた部分をやる。
- デーモンから出力されるログの蓄積/表示
- ログファイルの管理
- その他、ログ流量のレートリミットなど
ログが /var/log/journal
に入るまで
- アプリがシステムコールである syslog 関数を呼ぶ
/dev/log
にログが出力される- systemd-journald がそれを
/var/log/journal
に追記していく
もし、rsyslogd も動作している環境だと、imjournal がログの追記を検知して、さらに /var/log/message へ追記されていく。
timer とは
これまで crond が担っていた仕組みを systemd 上でやるための仕組み。
2つファイルを用意して動作させる。
- xxxx.timer
- どのような頻度で実行されるべきかを細かく定義できる
- 休止状態でスキップされていたら?
- ランダムに遅延させる必要がある?
- タイマーの精度はどれくらい正確に実行すべき? (消費電力とトレードオフ)
- どのような頻度で実行されるべきかを細かく定義できる
- xxxx.service
- 実行されるコマンドについて定義する
どんなコマンドが実行されるかを定義するのは、あくまでサービスファイルである。
その他
誌面では以下のような情報も紹介されていたが、まだつかわなさそうなのでまたこんど使う時にちゃんと読む。
- サービスごとのテンポラリファイルの設定
- サービスごとのリソース制限の設定
- systemd-nspawn (コンテナというよりか chroot 的なツール)