すべてのプロダクト
Search
ドキュメントセンター

:Cron ジョブを使用してホスト上でシェルスクリプトを実行する

最終更新日:Jan 14, 2025

SchedulerX を使用すると、セルフマネージドホストまたは Elastic Compute Service (ECS) インスタンスで特定のスクリプトを実行できます。このトピックでは、ホストにエージェントをデプロイし、ホストを SchedulerX アプリケーションに関連付け、SchedulerX コンソールで Cron ジョブを作成して、指定されたルールに基づいてホスト上でシェルスクリプトを実行する方法について説明します。

前提条件

  • ECS インスタンスまたはホストが利用可能です。詳細については、「ECS の使用開始」をご参照ください。

    Java Development Kit (JDK) 環境が ECS インスタンスまたはホストにインストールされています。エージェントを起動するには、JDK 環境が必要です。

  • SchedulerX がアクティブ化されています。詳細については、「SchedulerX のアクティブ化」をご参照ください。

説明

サーバーと SchedulerX サービスが同じリージョンにあることを確認してください。

背景情報

この例では、エージェントを使用してホストを SchedulerX に関連付け、SchedulerX コンソールで Cron ジョブを作成してシェルスクリプトを実行します。次のいずれかの方法を使用して SchedulerX に接続することもできます。

概要

エージェントを使用して SchedulerX にすばやく接続し、ジョブをスケジュールできます。手順には、次の 4 つのステップが含まれます。

  1. ホストを SchedulerX に関連付ける: SchedulerX コンソールでアプリケーションを作成し、ホストをアプリケーションに関連付けます。

  2. ホストのジョブを作成する: SchedulerX コンソールでジョブを作成し、ジョブがアプリケーションに関連付けられていることを確認します。

  3. ジョブを実行する: SchedulerX コンソールで、管理するインスタンスを選択し、ジョブをインスタンスにスケジュールします。

  4. 結果を表示する: SchedulerX コンソールでジョブの実行ログをクエリおよび分析できます。

ステップ 1: ホストを SchedulerX に関連付ける

1.1 アプリケーションを作成する

  1. SchedulerX コンソール にログインします。左側のナビゲーションペインで、[アプリケーション管理] をクリックします。[アプリケーション管理] ページで、ページ上部の [デフォルトの名前空間] を選択し、[アプリケーションの作成] をクリックします。[アプリケーションの作成] パネルで、[アプリケーション名] パラメーターと [アプリケーション ID] パラメーターを構成し、[アプリタイプ] パラメーターを 汎用アプリ に、[リリース] を Professional Edition に設定し、[詳細設定] セクションのパラメーターをビジネス要件に基づいて構成してから、[次のステップ] をクリックします。

    image

    重要

    リソースが目的の場所にデプロイされるように、リージョンと名前空間を指定する必要があります。

  2. [通知設定] ステップで、[通知チャネル] パラメーターと [通知連絡先] パラメーターを構成します。アプリケーションが作成されます。

1.2 エージェントを手動でデプロイする

エージェントをダウンロードしてデプロイします。詳細については、「SchedulerX エージェントを使用してアプリケーションを SchedulerX に接続する (スクリプトまたは HTTP ジョブ)」トピックの エージェントを手動でデプロイする セクションをご参照ください。

説明

ランタイム環境が JDK 1.8 ~ 14 であることを確認してください。 14 以後の JDK バージョンを使用する場合は、エージェントインストールディレクトリの schedulerxAgent/bin/start.sh ファイルから -XX:+UseConcMarkSweepGC オプションを削除してください。

image

ステップ 2: ホストのジョブを作成する

2.1 ジョブを作成する

  1. 左側のナビゲーションペインで、[タスク管理] をクリックします。[タスク管理] ページで、[タスクの作成] をクリックします。

  2. [基本設定] ステップで、[タスク名] パラメーターと [アプリケーション ID] パラメーターを構成し、[タスクタイプ] パラメーターを ScriptTask に、[スクリプト]shell に、[実行コマンド]echo Agent connects to SchedulerX に、ファイル形式を unix に、実行モードを スタンドアロン操作 に設定します。[詳細設定] セクションのパラメーターをビジネス要件に基づいて構成します。詳細については、「ジョブ管理」トピックの 基本パラメーター をご参照ください。

    image

  3. [タイミング設定] ステップで、[時間タイプ] パラメーターを cron に設定し、ビルドツールを使用して [cron 式] を生成します。例: 0 * * * * ?。この式は、ジョブが毎分実行されることを指定します。[詳細設定] セクションのパラメーターをビジネス要件に基づいて構成します。詳細については、「ジョブ管理」トピックの ジョブスケジューリングのパラメーター をご参照ください。

    image

  4. [通知設定] ステップで、[通知チャネル] パラメーターと [通知連絡先] パラメーターを構成します。ジョブが作成されます。詳細については、「ジョブ管理」トピックの 通知チャネルと連絡担当者 をご参照ください。

2.2 結果を確認する

[タスク管理] ページでジョブを見つけたり、左側のナビゲーションペインで [実行リスト] をクリックし、[タスクインスタンスリスト] タブをクリックしたりできます。

ステップ 3: ジョブを実行する

[タスク管理] ページで、管理するジョブを見つけ、[操作] 列の [1 回実行] をクリックします。

ステップ 4: 結果を表示する

  1. 左側のナビゲーションペインで、[実行リスト] をクリックします。[タスクインスタンスリスト] タブで、管理するジョブを見つけ、[操作] 列の [ログ] をクリックします。

  2. ログに Agent connects to SchedulerX と表示されている場合、シェルスクリプトはジョブによって実行されています。

    image

関連情報

FAQ