他の AWS サービスとの統合 - AWS CodeDeploy

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

他の AWS サービスとの統合

CodeDeploy は、以下の AWS サービスと統合されています。

Amazon CloudWatch

Amazon CloudWatch は、 AWS クラウドリソースと で実行するアプリケーションのモニタリングサービスです AWS。Amazon を使用して、メトリクス CloudWatch の収集と追跡、ログファイルの収集とモニタリング、アラームの設定を行うことができます。 は、以下の CloudWatch ツール CodeDeploy をサポートしています。

  • CloudWatch 指定したモニタリングメトリクスがアラームルールで指定したしきい値を上回ったり下回ったりしたときに、デプロイをモニタリングし、停止するための CloudWatch アラーム。アラームモニタリングを使用するには、まず でアラームを設定し CloudWatch、次にそのアラーム CodeDeploy をアプリケーションまたはデプロイグループに追加して、アラームがアクティブ化されたときにデプロイを停止する必要があります。

    詳細はこちら:

  • CodeDeploy オペレーション内のインスタンスまたはデプロイの状態の変化を検出して対応するための Amazon CloudWatch Events。次に、作成したルールに基づいて、デプロイまたはインスタンスがルールで指定した状態になると、 CloudWatch Events は 1 つ以上のターゲットアクションを呼び出します。

    詳細はこちら:

  • Amazon CloudWatch Logs は、インスタンスに一度に 1 つずつサインインしなくても、 CodeDeploy エージェントによって作成された 3 種類のログをモニタリングできます。

    詳細はこちら:

Amazon EC2 Auto Scaling

CodeDeploy は Amazon EC2 Auto Scaling をサポートします。この AWS サービスは、指定した条件に基づいて Amazon EC2インスタンスを自動的に起動できます。例:

  • 指定されたCPU使用率の制限を超えました。

  • ディスクの読み書き。

  • 指定された期間のインバウンドまたはアウトバウンドのネットワークトラフィック。

Amazon EC2インスタンスのグループは、必要に応じてスケールアウトし、 CodeDeploy を使用してアプリケーションリビジョンを自動的にデプロイできます。Amazon EC2 Auto Scaling は、不要になった Amazon EC2インスタンスを終了します。

詳細はこちら:

Amazon Elastic Container Service

CodeDeploy を使用して、Amazon ECSコンテナ化されたアプリケーションをタスクセットとしてデプロイできます。 は、アプリケーションの更新されたバージョンを新しい置き換えタスクセットとしてインストールすることで、ブルー/グリーンデプロイ CodeDeploy を実行します。 CodeDeploy は、元のアプリケーションタスクセットから置き換えタスクセットに本番トラフィックをルーティングします。デプロイが正常に完了すると、元のタスクセットは削除されます。Amazon の詳細についてはECS、「Amazon Elastic Container Service」を参照してください。

Canary、Linear、または all-at-once 設定を選択することで、デプロイ中に更新されたタスクセットにトラフィックを移行する方法を管理できます。Amazon ECSデプロイの詳細については、「Amazon ECSコンピューティングプラットフォームでのデプロイ」を参照してください。

AWS CloudTrail

CodeDeploy は と統合されていますAWS CloudTrail。このサービスは、 アカウント CodeDeploy で によって、または に代わって行われたAPI呼び出しを AWS キャプチャし、指定した Amazon S3 バケットにログファイルを配信します。 CloudTrail は、 CodeDeploy コンソール、 CodeDeploy コマンドから 、 AWS CLIまたは から直接API呼び出しをキャプチャします CodeDeploy APIs。によって収集された情報を使用して CloudTrail、以下を判断できます。

  • に対して行われたリクエスト CodeDeploy。

  • リクエストが行われたソース IP アドレス。

  • 誰がリクエストを行ったか。

  • 行われた時刻。

詳細はこちら:

AWS Cloud9

AWS Cloud9 は、インターネットに接続されたマシンのブラウザのみを使用してコードを記述、実行、デバッグ、デプロイするために使用できるオンラインのクラウドベースの統合開発環境 (IDE) です。 AWS Cloud9 には、コードエディタ、デバッガー、ターミナル、および AWS CLI や Git などの必須ツールが含まれています。

  • を使用して AWS Cloud9 IDE、 GitHub リポジトリ内のコードを実行、デバッグ、構築できます。IDE 環境ウィンドウとエディタタブを使用して、コードを表示、変更、保存できます。準備ができたら、 AWS Cloud9 ターミナルセッションで Git を使用してコード変更を GitHub リポジトリにプッシュし、 を使用して更新 AWS CodeDeploy をデプロイできます。 AWS Cloud9 で を使用する方法の詳細については GitHub、「 GitHub のサンプル AWS Cloud9」を参照してください。

  • を使用して AWS Cloud9 IDE AWS Lambda 関数を更新できます。その後、 AWS CodeDeploy を使用して、トラフィックを AWS Lambda 関数の新しいバージョンに移行するデプロイを作成できます。詳細については、AWS Cloud9 「統合開発環境の AWS Lambda 関数の使用 (IDE)」を参照してください。

の詳細については AWS Cloud9、「 とは AWS Cloud9」および「 の開始方法 AWS Cloud9」を参照してください。

AWS CodePipeline

AWS CodePipeline は、継続的な配信プロセスでソフトウェアをリリースするために必要な手順のモデル化、可視化、および自動化に使用できる継続的な配信サービスです。 AWS CodePipeline を使用して、コード変更のたびにサービスが構築、テスト、デプロイを行うよう独自のプロセスを定義できます。例えば、ベータ、ガンマ、本番の 3 つのアプリケーションのデプロイグループがあるとします。ソースコードが変更されるたびに、各デプロイグループに 1 つずつ更新をデプロイするようにパイプラインを設定できます。

を使用して CodeDeploy デプロイ AWS CodePipeline するように を設定できます。

  • Amazon EC2インスタンス、オンプレミスインスタンス、またはその両方へのコード。

  • サーバーレス AWS Lambda 関数のバージョン。

パイプラインを作成する前、またはパイプラインの作成ウィザードで、ステージのデプロイアクションで使用する CodeDeploy アプリケーション、デプロイ、デプロイグループを作成できます。

詳細はこちら:

AWS サーバーレスアプリケーションモデル

AWS サーバーレスアプリケーションモデル (AWS SAM) は、サーバーレスアプリケーションを定義するモデルです。サーバーレスアプリケーションに必要な関数、Amazon API Gateway APIs、および Amazon DynamoDB テーブルを簡単に定義 AWS CloudFormation AWS Lambda できるように拡張されています。既に を使用している場合は AWS SAM、デプロイ設定を追加して、 AWS Lambda アプリケーションのデプロイ中にトラフィックを移行する方法を管理する CodeDeploy ために の使用を開始できます。

詳細については、「AWS サーバーレスアプリケーションモデル」を参照してください。

Elastic Load Balancing

CodeDeploy は、受信アプリケーショントラフィックを複数の Amazon Elastic Load Balancing をサポートします。 EC2

CodeDeploy デプロイの場合、ロードバランサーは、準備が整っていない、現在デプロイされている、または環境の一部として不要になったときに、トラフィックがインスタンスにルーティングされるのを防ぎます。

詳細はこちら: