Webhook後処理:複数のジョブを連続実行する(EC2インスタンスのスケールアップ)

現在、「ジョブワークフロー」という機能があり、簡単に複数のジョブを連続実行させることが可能になっております。詳しくはこちらをご覧ください
ジョブワークフローとは

概要

あるジョブが実行された後に他のジョブを実行させる、といった複数のジョブを連続実行させる方法について、Amazon SQSによる方法を記載しましたが、本項では2017年10月にリリースされた「Webhook後処理」で代用する方法について記載します。

 

ジョブ実行の流れ

  1. インスタンスを停止
  2. インスタンスタイプを変更
  3. インスタンスを起動

上記3つのジョブを連続実行させる流れを下に示します。

webhook_job.png

2つ目以降のジョブは、HTTPトリガー ジョブとして登録することで、前段のジョブから「Webhook後処理」で呼び出すことが可能になります。

 

設定例

Note:
連続するジョブを作成する際は、最後のジョブから登録していくと手間が少なくて済みます。(2018年1月現在)

 

STEP1: インスタンス起動ジョブを作成

  1. インスタンス起動ジョブを作成

    No 設定項目 設定値
    1 グループ 任意のグループを指定
    2 トリガー HTTPトリガー
    3 アクション EC2:インスタンスを起動
    4 AWSアカウント ※CloudAutomatorに登録しているAWSアカウントを指定
    5 アクションパラメーターの指定方法

    「ジョブ作成時にパラメーターを指定する」を選択

    6 インスタンス 該当のインスタンスを指定(タグの指定でもOK)
    7 ジョブ実行後のリソースの状態までチェックする 必要に応じてチェック
  2. HTTPトリガーの情報をメモする

    作成したジョブのジョブの詳細画面から、以下の情報をメモします。

    http_____2.png


 

STEP2: インスタンスタイプ変更ジョブの登録

  1. インスタンスタイプ変更ジョブの登録

    No 設定項目 設定値
    1 グループ 任意のグループを指定
    2 トリガー HTTPトリガー
    3 アクション EC2:インスタンスタイプを変更
    4 AWSアカウント ※CloudAutomatorに登録しているAWSアカウントを指定
    5 インスタンス 該当のインスタンスを指定(タグの指定でもOK)
    6 インスタンスタイプ ※変更したいタイプを指定
    7 後処理 ※新規に後処理を作成して指定(後述)
  2. 後処理の新規作成

    後処理の指定箇所で、「後処理の新規作成」ボタンを押して、作成画面を開きます。

    http_____3.png

    ここで、サービスには Webhook を選択し、先ほどメモしておいた「インスタンス起動ジョブ」の、 HTTPトリガーのURLHTTPヘッダーのAuth情報 を入力し、判別しやすい後処理名を入力して登録します。

    http_____4.png

  3. 後処理の指定

    後処理作成後、今作成した後処理を「成功時」の後処理に指定します。

    http_____5.png

  4. HTTPトリガー情報をメモする

    STEP1と同様に、作成したジョブの詳細画面を開き、 HTTPトリガーのURLHTTPヘッダーのAuth情報 を再度メモします。


 

STEP3: インスタンス停止ジョブの作成

  1. インスタンス停止ジョブの作成

    これで最後です。STEP2と同様に、ジョブの作成画面で次のように登録します。

    No 設定項目 設定値
    1 グループ 任意のグループを指定
    2 トリガー ※利用したいトリガーを指定
    3 アクション EC2:インスタンスを停止
    4 AWSアカウント ※CloudAutomatorに登録しているAWSアカウントを指定
    5 インスタンス 該当のインスタンスを指定(タグの指定でもOK)
    6 ジョブ実行後のリソースの状態までチェックする ※ここは必ずチェックしてください
    7 後処理 ※新規に後処理を作成して指定(後述)
  2. 後処理の作成と指定

    STEP2と同様に、新規に後処理を作成します。
    サービスには Webhook を選択し、先ほどメモしておいた「インスタンスタイプ変更ジョブ」の、 HTTPトリガーのURLHTTPヘッダーのAuth情報 を入力し、判別しやすい後処理名を入力して登録し、ジョブ作成画面上「成功時」の後処理に、作成した後処理を指定してジョブを作成し、作成した後処理を「成功時」の後処理に指定します。

 

関連

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
他にご質問がございましたら、リクエストを送信してください