Automationアカウント(Runbook)で色んなスケジュール設定する方法

2020-10-06Automationアカウント,Azure,Runbook

Azure Automationアカウントで色んなスケジュール設定する方法やRunbookとスケジュールを関連付けて実行する手順の紹介です。
平日のみ、特定曜日、第何週の何曜日、祝日を考慮したスケジュールなどを例に設定方法を紹介しています。

スポンサーリンク

Azure Automationアカウントのスケジュール設定内容

スケジュールはAutomationアカウントで設定

スケジュールはAutomationアカウントで作成します。
作成したスケジュールをRunbookに割り当てます。

Azure Automation のスケジュールを管理する

1つのスケジュールを複数のRunbookに割り当てる事もできます。
1つのRunbookに複数のスケジュールを割り当てる事もできます。

スケジュールの繰り返し設定は1度か定期的から選択

Automationアカウントのスケジュール設定は繰り返し実行と1度だけ実行から選択できます。
毎日、毎週といった設定をする場合は繰り返しで定期的を選択します。

スケジュール設定画面例
繰り返しで1度だけを選択した場合Automationアカウントのスケジュール設定で1度だけ実行する場合 繰り返しで定期的を選択した場合Automationアカウントのスケジュール設定で繰り返し実行する場合

スケジュールの繰り返しで設定できる間隔

スケジュールの間隔で設定できるのは時間、日、週、月の4種類です。
実行時間は開始時で指定します。
例えば毎時間30分に実行する場合は、間隔に1時間、開始時をXX:30と指定します。

スケジュール設定画面例
間隔に時間を指定した場合Automationアカウントのスケジュールで定期実行する設定例(毎時間実行) 間隔に日を指定した場合Automationアカウントのスケジュールで定期実行する設定例(毎日実行)
間隔に週を指定した場合Automationアカウントのスケジュールで定期実行する設定例(毎週実行) 間隔に月を指定した場合Automationアカウントのスケジュールで定期実行する設定例(毎月実行)

スケジュール間隔を1時間より短い時間に設定

1つのスケジュール設定で出来る最短の間隔は1時間です。
それより短い時間でRunbookを実行する場合は、1つのRunbookに複数のスケジュールを関連付けします。

Runbook をより頻繁に実行するためのスケジュール設定

スケジュール設定画面例
15分間隔でRunbookを実行する例です。
1つのRunbookに4つのスケジュールを関連付けしています。

1つのRunbookに複数のスケジュールを関連付けした場合

Logic AppsからRunbookを呼び出す事でも、短いスケジュールで実行させることができます。
Logic AppsからRunbook呼び出す方法についてはこちらで紹介しています。

第何週の何曜日に実行するスケジュール設定

スケジュール実行間隔で月を選択します。
毎月の特定曜日で平日を選択します。
実行週や実行曜日が指定できる間隔設定が表示されます。
第何週の何曜日と言う設定が出来ます。

スケジュール設定画面例
実行週を指定Automationアカウントのスケジュールで毎月実行を選択した場合の間隔指定 実行曜日を指定Automationアカウントのスケジュールで毎月実行を選択した場合の曜日指定

平日や特定曜日のみ実行するスケジュール設定

間隔を週にすると、実行曜日が選択できます。
平日のみ実行する場合は、月曜日から金曜日を選択します。

※実行時間は開始時の時間で指定します。

スケジュール設定画面例
間隔で週を選択します。
設定曜日が表示されるので、実行したい曜日を指定します。
Automationアカウントのスケジュールで平日のみ実行する設定の例

祝日を考慮したスケジュール設定

少し手間がかかりますが、実行日を指定する事で祝日を考慮したスケジュール設定ができます。

    • 間隔で月を指定
    • 実行する日を指定
    • 開始日時を指定
    • 有効期限を指定

例えば5月分のカレンダーの場合は、開始日を2024/05/01、有効期限を2024/05/31と設定します。
実行する日を指定します。
これで5月分の実行スケジュールが設定できます。

※実行時間は開始時の時間で指定します。

スケジュール設定画面例

間隔で月を選択します。
毎月の特定曜日で月の日付を選択します。
設定曜日が表示されるので、実行したい曜日を指定します。

※月の指定した日に実行のカレンダーの曜日は固定です。曜日は無視して大丈夫です。

Automationアカウントのスケジュールで平日のみ実行(祝日を除外)する設定の例

—広告—

Azure AutomationアカウントでRunbookをスケジュール実行

Runbookをスケジュール実行させるために必要な設定は2つ

Runbookをスケジュール実行させるために必要な設定は2つです。

    • Azure Automationアカウントでスケジュールを作成
    • スケジュールをRunbookに関連付け

Runbookでパラメーターを指定する場合は、スケジュール関連付け時にパラメーターも合わせて設定します。

スケジュール設定内容

今回設定したスケジュール設定です。
毎朝9時30分にスケジュール実行する場合を想定しています。

    • 名前:schedule-01
    • 開始時:5月5日 9:30
    • タイムゾーン:Japan
    • 繰り返し:定期的
    • 間隔:1日
    • 有効期限の設定:いいえ

※開始時は未来日時である必要があります。

Azure Automationアカウントでスケジュールを作成

スケジュールはAutomationアカウントの共有リソースとして設定します。
共有リソースにスケジュール設定があります。

スケジュール設定手順
共有リソースのスケジュールを選択します。
スケジュールの追加を選択します。
名前やスケジュールを設定します。
作成を選択します。
作成したスケジュールは一覧画面に表示されます。
Automationアカウントのスケジュール設定手順
Automationアカウントのスケジュールを表示

Runbookにスケジュールを関連付け

作成したスケジュールをRunbookに関連付けします。
Runbookに関連付け時には、Runbook実行のパラメーターも併せて設定します。
関連付けしたスケジュールの設定内容に基づいてRunbookが実行されます。

Runbookにスケジュールを関連付け
概要の"スケジュールへのリンク"か、リソースにあるスケジュールで"スケジュールの追加"を選択します。 Runbookへのスケジュールの関連付け(Runbookの概要から設定)
Runbookへのスケジュールの関連付け(Runbookのスケジュールメニューから設定)

スケジュールの関連付け設定を進めていきます。

関連付け設定
スケジュールを選択します。 スケジュールを選択(Runbookへのスケジュールの関連付け)
スケジュールを選択して保存(Runbookへのスケジュールの関連付け)
パラメーターと実行設定を選択します。
Runbookで使用するパラメーターを指定します。
パラメーターと実行設定を選択(Runbookへのスケジュールの関連付け)
Runbookで使用するパラメーターの値を設定して保存(Runbookへのスケジュールの関連付け)
Runbookのスケジュール設定を保存します。 Runbookへのスケジュール関連付け設定を保存(Runbookへのスケジュールの関連付け)
Runbookのスケジュール設定が保存されている事が確認できます。 Runbookに関連付けされているスケジュールを確認(Runbookへのスケジュールの関連付け)
Runbookに関連付けされているスケジュール設定内容を確認(Runbookへのスケジュールの関連付け)

Runbookのスケジュール実行結果を確認

Runbookのスケジュール実行結果を確認します。

スケジュール実行結果
状態が完了となっています。
作成日時が9時30分となっており、設定したスケジュール通りRunbookが実行された事が確認できます。
Runbookのスケジュール実行結果

最後に

Azure Automationアカウントのスケジュール設定について確認してみました。
スケジュールが細かく設定できてとても便利かと思いました。
スケジュール設定時にパラメーターも一緒に設定できる事も確認できました。
色々応用した設定ができそうです。

引き続き色々試してみたいと思います。

Automationアカウントの作成やRunbookの作成手順についてはこちらで紹介しています。

Azure AutomationアカウントのRunbook内で実行時間を制限する方法についてこちらで記載しております。
Azureのサービス障害の影響で想定したスケジュールから遅れて実行された場合などに使えます。
実行時間の制限はPowerShell内で実施しています。 

Logic Appsのスケジュール設定に関してはこちらで紹介しています。

スポンサーリンク