AWSとのリアルタイムの同期を構成する

早期アクセスリリース

リアルタイムの同期により、Advanced Server AccessはAWSで生成されたインスタンスイベントのコンピューティングをサブスクライブできます。通常、サーバー検出は毎日行われますが、この機能ではAdvanced Server Accessが通知を受信した直後にサーバーを追加または削除できます。リアルタイムの同期は、特定プロジェクト内の指定したクラウドアカウントに関連付けられているエンドポイントに対し、AWS ExentBridgeによるwebhookイベントの送信を有効にすることで機能します。

イベントは通常コンピューティングインスタンスが開始または終了した際に生成されます。開始イベントの場合、Advanced Server Accessは関連プロジェクトに対して自動的にサーバーを追加します。ユーザーが接続可能になる前に、検出済みのサーバーにAdvanced Server Accessサーバーエージェントをインストールする必要があります。終了イベントの場合、Advanced Server Accessはプロジェクトのインベントリからサーバーを自動的に削除します。

  1. プロジェクトの詳細情報を確認します。
    1. Advanced Server Access Admin Consoleに移動します。
    2. プロジェクト([Projects)]ページに移動してプロジェクトを選択します。
    3. 登録([Enrollment)]タブに移動してAWSアカウントを選択します。
    4. インスタンスライフサイクル監視で、クライアントIDとシークレットを作成する(Create Client ID & Secret)をクリックします。
    5. 作成したクライアントシークレット(Client Secret Created)ウィンドウでクライアントIDとシークレットを保存します。注:ウィンドウを閉じた後にこの情報を取得することはできません。この情報をなくした場合、新しいクライアントIDとシークレットを生成する必要があります。
    6. OKをクリックします。
    7. 後で使用するためにWebhook URLを記録します。
  2. 接続を作成します。
    1. Amazon EventBridgeコンソールに移動します。
    2. API送信先(API destinations)ページに移動します。
    3. 接続([Connections)]タブに移動して接続を作成する(Create Connection)(Create connection)をクリックします。
    4. 接続を作成する([Create Connection)]ウィンドウで名前と説明を入力します。
    5. 認証タイプには[OAuth Client Credentials(OAuthクライアントの資格情報)]を選択します。
    6. 資格情報を構成します。
      フィールド アクション
      認証エンドポイント https://app.scaleft.com/v1/oauth_tokenを入力します。
      HTTPメソッド ポスト(Post)を選択します。

      OAuth HTTPパラメーター

      1. パラメーター([Parameter)]で本文フィールド(Body field)を選択します。
      2. キー([Key)]にgrant_typeと入力します。
      3. 値([Value)]にclient_credentialsと入力します。
      クライアントID(Client ID) Advanced Server Accessコンソールで、記録したクライアントIDを入力します。
      クライアントシークレット Advanced Server Accessコンソールで、記録したクライアントシークレットを入力します。
    7. 作成(Create)をクリックします。
  3. ターゲットを作成します。詳細については、AWSドキュメントを参照してください。

    1. API送信先([API destinations)]ページに移動してAPI送信先を作成する(Create API destinations)]をクリックします。
    2. API送信先を作成する([Create API destinations)]ウィンドウで名前と説明を入力します。
    3. API送信先エンドポイントについては、Advanced Server Accessコンソールで記録したWebhook URLを入力します。
    4. HTTPについては、ポスト(Post)を選択します。
    5. 既存の接続を使用する(Use an existing connection)をクリックして以前作成した接続を選択します。
    6. 作成(Create)をクリックします。
  4. ルールを作成します。詳細については、AWSドキュメントを参照してください。
    1. ルール([Rules)]ページに移動してルールを作成(Create Rule)(Create rule)をクリックします。
    2. ルールの名前を入力します。
    3. パターンを定義する([Define pattern)]でイベントパターン(Event pattern)を選択してから、カスタムパターン(Custom pattern)を選択します。
    4. イベントパターン([Event pattern)]の隣にある編集(Edit)をクリックします。
    5. 以下のJSONパターンを入力します。
      パターン 説明
      { "source": ["aws.ec2"], "detail-type": ["EC2 Instance State-change Notification"], "detail": { "state": ["pending", "terminated"] } } EC2インスタンスがpendingまたはterminatedステータスに変わったら通知を送信します。
    6. ターゲット([Target)]には、以前作成したターゲットAPI送信先を選択します。
    7. 作成(Create)をクリックします。

ルールを作成すると、一致するイベントが生じたときにAWSはAdvanced Server Accessに通知を送信します。Advanced Server Accessは、これらの通知を使用して関連プロジェクト内のサーバーインベントリを更新します。