SchedulerX を使用すると、自己管理型またはクラウドベースのホスト上でスクリプトを実行できます。このトピックでは、ホストにエージェントをデプロイし、ホストを SchedulerX アプリケーションに関連付けて、ホスト上でスケジュールされたシェルスクリプトを実行するタスクを作成する方法について説明します。
前提条件
-
利用可能な ECS インスタンスまたはホスト。詳細については、「ECS クイックスタート」をご参照ください。
エージェントを起動するには、ECS インスタンスまたはホストに Java Development Kit (JDK) がインストールされている必要があります。
-
分散タスクスケジューリングサービスがアクティブ化されます。詳細については、「分散タスクスケジューリングをアクティブ化する」をご参照ください。
ホストと SchedulerX プラットフォームが同じリージョンにあることを確認してください。
背景情報
この例では、エージェントを使用してホストを SchedulerX に関連付け、SchedulerX プラットフォームでスケジュールされたシェルスクリプトタスクを作成します。SchedulerX には、以下の方法でも接続できます。
概要
エージェントを使用してホストを SchedulerX に接続するには、次の 4 つのステップが必要です。
-
ホストを SchedulerX に関連付ける:SchedulerX で新しいアプリケーションを作成し、ホストをそのアプリケーションにリンクします。
-
ホストのタスクを作成する:コンソールでタスクを作成し、アプリケーションに関連付けます。
-
タスクを実行する:コンソールで対応するインスタンスを選択し、タスクを実行します。
-
結果を確認する:コンソールでタスクの実行ログをクエリおよび分析できます。
ステップ 1:ホストを SchedulerX に関連付ける
1.1 アプリケーションの作成
-
MSE SchedulerX コンソールにログインします。 左側のナビゲーションペインで、Application Management をクリックします。 Namespaces ドロップダウンリストからデフォルトの名前空間を選択し、次に Create Application をクリックします。 Application Name と Application ID を入力します。 Application Type を 一般アプリケーション に、Version を Professional Edition に設定します。 必要に応じて詳細設定を構成し、Next をクリックします。
[ログサービス] スイッチをオンにします。
重要リージョンと名前空間が正しく選択されていることを確認してください。これにより、作成されるリソースが正確になります。
-
Notification Configuration ウィザードで、必要な情報を入力し、Notification Channels を選択し、Notification Contacts を設定してアプリケーションの作成を完了します。
1.2 エージェントの手動デプロイ
エージェントをダウンロードしてデプロイします。詳細については、「手動でエージェントをデプロイする」をご参照ください。
ランタイム環境には JDK 1.8 から 14 が必要です。JDK 14 より新しいバージョンを使用する場合は、エージェントのインストールディレクトリ内の schedulerxAgent/bin/start.sh ファイルから -XX:+UseConcMarkSweepGC パラメータを削除する必要があります。
JAVA_OPTS="-Dproject.name=schedulerxAgent -XX:+UseConcMarkSweepGC"
if [ -n "${SCHEDULERX_STARTER_MODE}" ]; then
JAVA_OPTS="${JAVA_OPTS} -Dschedulerx.starter.mode=${SCHEDULERX_STARTER_MODE}"
fi
ステップ 2:ホストのタスクを作成する
2.1 タスクの作成
-
左側のナビゲーションペインでをクリックし、Add Taskをクリックします。
-
Basic configuration ウィザードページで、Name と Application ID を入力します。Task Type を スクリプトタスク に、Scripting Language を shell に、Execute Command を
echo Agent connects to SchedulerXに設定します。ファイル形式には unix を選択し、実行モードには 1 回実行 を選択します。必要に応じて Advanced Configuration を設定します。詳細については、「基本設定パラメーター」をご参照ください。 -
Timing configuration ウィザードで、Time type を cron に設定します。ジェネレーターを使用して cron expression を作成します。式の例は 0 * * * * ? で、タスクを 1 分に 1 回実行します。必要に応じて Advanced Configuration を設定します。パラメーターの詳細については、「時間ベースのスケジューリングパラメーター」をご参照ください。
-
Notification Configuration ウィザードで、必要な情報を入力し、Notification Channels を選択し、Notification Contacts を設定してタスクの作成を完了します。パラメーターの詳細については、「通知チャネルと連絡先」をご参照ください。
2.2 確認
左側のナビゲーションペインで、 を選択します。テーブルで作成したタスクを見つけることができます。
ステップ 3:タスクを実行する
左側のナビゲーションペインで、 をクリックします。 作成したタスクを見つけて有効にし、Run once をクリックします。
ステップ 4:結果を確認する
-
左側のナビゲーションペインで、 を選択します。実行したタスクを見つけ、[操作] 列の ログ をクリックします。
-
ログに
Agent connects to SchedulerXという結果が表示されていれば、シェルスクリプトタスクが正常にスケジュールされ、実行されたことを示しています。
関連ドキュメント
-
SchedulerX でのアプリケーション作成の詳細については、「アプリケーション管理」をご参照ください。
-
エージェントを使用した SchedulerX への接続の詳細については、「エージェントを使用して接続する (スクリプトタスクまたは HTTP タスク用)」をご参照ください。
-
SchedulerX でのタスクの作成の詳細については、「ジョブ管理」をご参照ください。
よくある質問
-
リモート ECS インスタンスへのログインに失敗した場合は、「Workbench を使用して Linux インスタンスにログインする」をご参照ください。
-
エージェントをダウンロードするときに ECS インスタンスで wget コマンドがタイムアウトする場合、インスタンスにパブリック IP アドレスを割り当てるか、「Linux インスタンスでファイルをアップロードまたはダウンロードする」をご参照ください。
-
よくある質問の概要については、「索引」をご参照ください。