- blogs:
- cles::blog
2018/10/20

systemd を cron 代わりに使う


systemd にはタイマーという機能があって、これが cron の代替になるというのでちょっと試してみました。
今回は簡単なものということで、先日インストールした Splash の GC を1時間に1回呼出すようにしてみました。
† .service を作る
Splash の GC は HTTP で指定された URL に POST を行うことで実施できるので、service ファイルは以下のような感じになります。
このサービスは daemon ではないので、一度実行したら終了する Type=oneshot にしておきます。
/etc/systemd/system/splash-gc.service
[Unit]
Description = splash GC
[Service]
Type = oneshot
ExecStart = /usr/bin/curl -s -X POST http://localhost:8050/_gc
User = hoge
SyslogIdentifier=splash-gc
[Install]
WantedBy = multi-user.target
† .timer を作る
次に .service に対応する .timer を作ります。
OnCalendar で起動時刻を、RandomizedDelaySec でランダムウェイトを指定しています。
/etc/systemd/system/splash-gc.timer
[Unit]
Description = splash GC timer
[Timer]
RandomizedDelaySec = 30s
OnCalendar = *-*-* *:00:00
Unit = splash-gc.service
[Install]
WantedBy = multi-user.target,timers.target
あとはタイマーを有効化して、list-timers で確認したときに次回の起動時刻が表示されていれば設定は完了です。
# systemd enable splash-gc.timer
# systemd start splash-gc.timer
# systemctl list-timers
NEXT LEFT LAST PASSED UNIT ACTIVATES
Sat 2018-10-20 23:00:00 JST 20min left n/a n/a splash-gc.timer splash-gc.service
・・・・・・・
設定は明らかに cron の方がシンプルなので、ちょっと微妙ですかね。。。。
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/10518
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(114444)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112962)
3 . 年次の人間ドックへ(112384)
4 . 2023 年分の確定申告完了!(1つめ)(111954)
5 . 三菱鉛筆がラミーを買収(111827)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112962)
3 . 年次の人間ドックへ(112384)
4 . 2023 年分の確定申告完了!(1つめ)(111954)
5 . 三菱鉛筆がラミーを買収(111827)
cles::blogについて
Referrers