SchedulerX を使用すると、セルフマネージドホストまたは ECS インスタンスで特定のスクリプトを実行できます。このトピックでは、エージェントをホストにデプロイし、そのホストを SchedulerX アプリケーションに関連付け、ホスト上でシェルスクリプトを定期的に実行するための cron ジョブを作成する方法について説明します。
前提条件
-
利用可能な Elastic Compute Service (ECS) インスタンスまたはホストがあること。詳細については、「ECS クイックスタート」をご参照ください。
ECS インスタンスまたはホストに、エージェントの起動をサポートする Java Development Kit (JDK) 環境がインストールされていること。
-
SchedulerX が有効化されていること。詳細については、「SchedulerX の有効化」をご参照ください。
ホストまたは ECS インスタンスと SchedulerX が同じリージョンにあることを確認してください。
背景情報
この例では、エージェントを使用してホストを SchedulerX に関連付け、cron ジョブとして実行するシェルスクリプトを作成する方法を示します。以下の方法でも SchedulerX に接続できます:
概要
エージェントを使用して SchedulerX に素早く接続し、単発タスクを実行するには、次の 4 つのステップを実行します:
-
ホストと SchedulerX の関連付け:SchedulerX コンソールでアプリケーションを作成し、ターゲットホストをアプリケーションに関連付けます。
-
ホストのタスク作成:コンソールでタスクを作成し、作成したアプリケーションに関連付けます。
-
タスクの実行:コンソールで適切なインスタンスを選択し、タスクを実行します。
-
結果の表示:コンソールでタスクの実行ログを確認します。
ステップ 1: ホストと SchedulerX の関連付け
1.1 アプリケーションの作成
-
SchedulerX コンソールにログインします。左側メニューで、Application Management を選択します。Namespace ドロップダウンリストから [default namespace] を選択し、Create Application をクリックします。[Application Name] と Application ID を入力します。[Application Type] を general app に、Version を Professional Edition に設定します。必要に応じて Version を設定し、Next をクリックします。
重要正しいリージョンと名前空間を選択していることを確認してください。
-
Notification Configuration ウィザードページで、必要な情報を入力し、[通知チャネル] を選択して Alert Contacts を指定し、アプリケーションを作成します。
1.2 エージェントの手動デプロイ
エージェントをダウンロードしてデプロイします。詳細については、「エージェントの手動デプロイ」をご参照ください。
ランタイム環境には JDK バージョン 1.8 から 14 が必要です。JDK 14 以降のバージョンを使用する場合は、エージェントのインストールディレクトリにある schedulerxAgent/bin/start.sh ファイルから -XX:+UseConcMarkSweepGC オプションを削除してください。
ステップ 2: ホストのタスク作成
2.1 タスクの作成
-
左側メニューで、[Task Management] を選択し、Create Task をクリックします。
-
Basic Configuration ウィザードページで、Name と Application ID を入力します。Job Type で script task を選択します。[Script Language] で shell を選択します。[Execution Command] に
echo Agent connects to SchedulerXと入力します。ファイル形式で unix を選択します。実行モードで スタンドアロン実行 を選択します。必要に応じて Advanced Configuration を設定します。詳細については、「基本設定パラメーター」をご参照ください。 -
Schedule Configuration ウィザードページで、Time Type を cron に設定します。組み込みツールを使用して Cron Expression を生成します。たとえば、式 0 ? は 1 分に 1 回タスクを実行します。必要に応じて Advanced Configuration を設定します。パラメーターの詳細については、「タイミングパラメーターの説明」をご参照ください。
-
Notification Configuration ウィザードページで、必要な情報を入力し、[通知チャネル] を選択して Alert Contacts を指定し、タスクを作成します。パラメーターの詳細については、「通知チャネルと連絡先の説明」をご参照ください。
2.2 検証
[Task Management] > [タスクインスタンス一覧] に移動します。作成したタスクが一覧に表示されます。
ステップ 3: タスクの実行
[Task Management] で作成したタスクを見つけ、有効にしてから Run Once をクリックします。
ステップ 4: 結果の表示
-
Execution List > [タスクインスタンス一覧] に移動します。該当のタスクインスタンスを見つけて [Log] をクリックします。
-
ログに出力された
Agent connects to SchedulerXは、シェルスクリプトタスクが正常に実行されたことを示します。
関連ドキュメント
-
SchedulerX 固有の用語の定義については、「用語集」をご参照ください。
-
SchedulerX でアプリケーションを作成する詳細な手順については、「アプリケーション管理」をご参照ください。
-
エージェントを使用して SchedulerX に接続する詳細な手順については、「エージェント接続 (スクリプトまたは HTTP タスク用)」をご参照ください。
-
SchedulerX でタスクを作成する詳細な手順については、「タスク管理」をご参照ください。
よくある質問
-
リモート ECS インスタンスにログインできない場合は、セキュリティグループルールを追加する必要がある場合があります。詳細については、「VPC 内のインスタンスに接続する際のインバウンドタブでのセキュリティグループルールの追加」をご参照ください。
-
ECS インスタンスで wget コマンドを使用してエージェントをダウンロードする際に接続がタイムアウトする場合は、インスタンスのパブリック IP アドレスを有効にするか、「ファイルのアップロードまたはダウンロード (Linux)」をご参照ください。
-
一般的な問題の概要については、「SchedulerX よくある質問」をご参照ください。