Contents
cron
cronとは、あらかじめ決めたタイミングで定期的にプログラムを実行するための仕組みです。(タイトルには「Linux」と銘打ちましたが、正確には「UNIX系OS」が備えている機能です)
自分でプログラムを実行しなくても、指定した時間になると勝手にプログラムを起動してくれるので、ログローテートとかバックアップとか、定期的にやってほしい作業にcronを設定しておくと便利だ。
https://hara-chan.com/it/infrastructure/cron/
イメージとしては、WebHookに近いですね(違う部分もそれなりにありますが)。実際のcron設定には、crontabとよばれる書式を使います。
ちなみに、KubernetesにはCronJobという、決まった周期でJobを実行するためのリソースがあります。以下はk8s公式サイトからの引用です。spec.scheduleの値がcrontab書式で、「毎分ごとの実行」を示す記述になっています。
apiVersion: batch/v1kind: CronJobmetadata: name: hellospec: schedule: "*/1 * * * *" jobTemplate: spec:template: spec: containers: - name: helloimage: busyboxcommand:- /bin/sh- -c- date; echo Hello from the Kubernetes cluster restartPolicy: OnFailure