【Linux】定期的にプログラム実行!cronについて

Categories:KubernetesLinux

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/v1
kind: CronJob
metadata:
  name: hello
spec:
  schedule: "*/1 * * * *"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: hello
            image: busybox
            command:
            - /bin/sh
            - -c
            - date; echo Hello from the Kubernetes cluster
          restartPolicy: OnFailure

参考リンク

返信がありません

コメントを残す

メールアドレスが公開されることはありません。