Azure Spring Apps Enterprise プランでのジョブの管理と使用
Note
Basic、Standard、Enterprise プランは、2025 年 3 月中旬以降非推奨になり、廃止期間は 3 年間です。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の廃止のお知らせ」を参照してください。
Standard 従量課金と専用プランは、2024 年 9 月 30 日以降に非推奨になり、6 か月後に完全にシャットダウンされます。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の Standard 従量課金および専用プランを Azure Container Apps に移行する」を参照してください。
この記事の適用対象: ❎Basic/Stanadard ✅ Enterprise
この記事では、ジョブのライフサイクルを管理し、Azure Spring Apps Enterprise プランで実行する方法について説明します。
前提条件
- Azure Spring Apps Enterprise プランのインスタンスが既にプロビジョニングされている。 詳細については、「クイック スタート: Enterprise プランを使用してアプリをビルドし Azure Spring Apps にデプロイする」をご覧ください。
ジョブの作成とデプロイ
ジョブを作成してデプロイするには、次のコマンドを使用します。
az spring job create --name <job-name>
az spring job deploy \
--name <job-name> \
--artifact-path <artifact-path>
パブリック プレビュー段階では、サービス インスタンスごとに最大 10 個のジョブを作成できます。
ジョブ実行の開始と取り消し
ジョブ実行を開始するには、次のコマンドを使用します。
az spring job start --name <job-name>
コマンドが正常に実行されると、ジョブ実行の名前が返されます。 --wait-until-finished true
パラメーターを指定すると、ジョブ実行が完了するまでコマンドは戻りません。
ジョブ実行の状態を照会するには、次のコマンドを使用します。 <execution-name>
を start コマンドから返された名前に置き換えます。
az spring job execution show \
--job <job-name> \
--name <execution-name>
実行中のジョブ実行を取り消すには、次のコマンドを使用します。
az spring job execution cancel \
--job <job-name> \
--name <execution-name>
ジョブ実行履歴を照会する
実行履歴を表示するには、次のコマンドを使用します。
az spring job execution list --job <job-name>
パブリック プレビューの場合、ジョブごとに完了または失敗した最新の 10 件のジョブ実行レコードが履歴に保持されます。
ジョブの実行ログのクエリを実行する
Azure portal でジョブ実行の履歴を取得するには、次の Log Analytics クエリを使用します。
AppPlatformLogsforSpring
| where AppName == '<job-name>' and InstanceName startswith '<execution-name>'
| order by TimeGenerated asc
詳細については、「クイックスタート: Log Analytics ワークスペースを設定する」を参照してください。
リアル タイム ログの場合は、コマンド ラインで次のコマンドを使用します。
az spring job logs \
--name <job-name> \
--execution <execution-name>
ジョブ実行に複数のインスタンスがある場合、1 つのインスタンスのみのログを表示するには、--instance <instance-name>
を指定します。
ジョブ実行を再実行する
次のコマンドを使用して、新しいジョブ実行をトリガーします。
az spring job start \
--name <job-name> \
--args <argument-value> \
--envs <key=value>
マネージド コンポーネントと統合する
パブリック プレビューでし、構成管理を効率的にするには Spring Cloud Config Server と、サービス検出には Tanzu Service Registry とジョブをシームレスに統合できます。
Spring Cloud Config Server と統合する
Spring Cloud Config Server を使用すると、ジョブに必要な構成やプロパティを Git リポジトリで管理し、それらをジョブに読み込むことができます。 Spring Cloud Config Server の Git リポジトリ構成を設定した後、ジョブをサーバーにバインドする必要があります。
ジョブの作成時にジョブを Spring Cloud Config Server にバインドするには、次のコマンドを使用します。
az spring job create \
--name <job-name> \
--bind-config-server true
既存のジョブの場合は、次のコマンドを使用して Spring Cloud Config Server にバインドします。
az spring config-server bind --job <job-name>
ジョブに Spring Cloud Config Server が必要なくなった場合は、バインド解除できます。 この変更は、新しいジョブ実行で有効になります。
ジョブをバインド解除するには、次のコマンドを使用します。
az spring config-server unbind --job <job-name>
Tanzu Service レジストリと統合する
共同作業で実行時間が長いアプリから API を呼び出すジョブの場合、情報や通知などを照会するのが一般的です。 同じ Azure Spring Apps サービスで実行されているアプリをジョブで検出できるようにするには、アプリとジョブの両方を管理サービス レジストリにバインドできます。 次のセクションでは、ジョブを Tanzu Service Registry にバインドする方法について説明します。
ジョブの作成時にジョブを Tanzu Service Registry にバインドするには、次のコマンドを使用します。
az spring job create --bind-service-registry true
既存のジョブの場合は、次のコマンドを使用して Tanzu Service Registry にバインドします。
az spring service-registry bind --job <job-name>
ジョブ実行を実行すると、サービス レジストリを通じて登録済みアプリのエンドポイントにアクセスできます。
ジョブのサービス レジストリが不要になった場合は、バインド解除できます。 この変更は、新しいジョブ実行で有効になります。
ジョブをバインド解除するには、次のコマンドを使用します。
az spring service-registry unbind --job <job-name>