Microsoft Azure Kubernetes|Azure AKS の Cronjob のスケジュール設定を毎月 月初日 1 日の 0 時以降から 9 時前の間で設定する方法


Azure AKS の Cronjob のスケジュール設定を毎月 月初日 1 日の 0 時以降から 9 時前の間で設定する方法について記載する。


Cronjob のスケジュール設定を月初日 1 日の 0 時以降から 9 時前の間で設定する方法

まず、AKS クラスタのタイムゾーンを UTC から日本時間 JST などの他のタイムゾーンに変更する方法はないため、Cronjob のスケジュールを設定は、UTC のタイムゾーンで設定する必要がある。


例えば、Cronjob のマニフェストファイル ( yaml ファイル ) にて、下記の設定をすると、毎月 1 日 9 時に Cronjob が実行される。

spec:
  schedule: '0 0 1 * *'


上記より、

月初日 1 日の 0 時以降から 9 時前の間で設定するためには、

UTC にて [+9:00] となる前日 (前の月の月末日) の 16:00 から 23:59 を指定して設定する必要がある。


また、

月末日は、28 日、29 日、30 日、31 日と複数ある。

しかし、Cronjob のスケジュールを設定するための構文では、月末日を指定するための特殊文字が用意されいない。

したがって、月毎に Cronjob のスケジュールの設定を 28 日、29 日、30 日、31 日 にあわせて、都度、変更する必要がある。


例えば、Cronjob のマニフェストファイル ( yaml ファイル ) にて、下記の設定をすると、1 日の 6 時に Cronjob が実行される。


spec:
  schedule: '0 21 31 * *'




スポンサーリンク

0 件のコメント :

コメントを投稿