AWS の他のサービスとの統合
CodeDeploy は、以下の AWS のサービスと統合されています。
| Amazon CloudWatch () |
Amazon CloudWatch は、AWS クラウドリソースと、AWS で実行するアプリケーションのモニタリングサービスです。Amazon CloudWatch を使用してメトリクスの収集と追跡、ログファイルの収集とモニタリング、アラームの設定ができます。CodeDeploy は、次の CloudWatch ツールをサポートしています。
|
| Amazon EC2 Auto Scaling |
CodeDeploy は、Amazon EC2 Auto Scaling (Amazon EC2 オートスケーリング)
必要に応じて Amazon EC2 インスタンスグループをスケールアウトできます。さらに CodeDeploy を使用してアプリケーションリビジョンを自動的にデプロイできます。Amazon EC2 Auto Scaling は、Amazon EC2 インスタンスが不要になったときに、それを終了します。 詳細はこちら: |
| Amazon Elastic Container Service |
CodeDeploy を使用して、Amazon ECSにコンテナ化されたアプリケーションをタスクセットとしてデプロイできます。CodeDeploy は、アプリケーションの更新バージョンを新しい置き換えタスクセットとしてインストールすることで、Blue/Green のデプロイを実行します。CodeDeploy は、元のアプリケーションタスクセットからの本稼働トラフィックを置き換えタスクセットに再ルーティングします。デプロイが正常に完了すると、元のタスクセットは終了します。Amazon ECS の詳細については、「Amazon Elastic Container Service Canary 設定、線形設定、または一度にすべての設定を選択して、デプロイ時に更新済みタスクセットにトラフィックを移行する方法を管理できます。Amazon ECS デプロイの詳細については、「Amazon ECS コンピューティングプラットフォームでのデプロイ」を参照してください。 |
| AWS CloudTrail |
CodeDeploy は AWS CloudTrail と統合します。このサービスでは、AWS アカウントで CodeDeploy によって、または CodeDeploy の代わりに行われた API コールをキャプチャし、指定した Amazon S3 バケットにログファイルを配信します。CloudTrail は、CodeDeploy コンソール、AWS CLI を通した CodeDeploy コマンド、または CodeDeploy API からの API 呼び出しを直接キャプチャします。CloudTrail によって収集されたデータを使用して、以下の情報を判断できます。
詳細はこちら: |
| AWS Cloud9 |
AWS Cloud9 は、インターネットに接続したマシンからブラウザを使用するだけで、コードの記述、実行、デバッグ、デプロイを実行できるクラウドベースの統合開発環境 (IDE) です。AWS Cloud9 には、コードエディタ、デバッガー、ターミナル、および AWS CLI や Git などの主要ツールが含まれています。
AWS Cloud9 の詳細については「AWS Cloud9 とは」と「AWS Cloud9 の開始方法」をご覧ください。 |
| AWS CodePipeline |
AWS CodePipeline は、継続的な配信プロセスでソフトウェアをリリースするために必要な手順のモデル化、可視化、および自動化に使用できる継続的な配信サービスです。AWS CodePipeline を使用して、コード変更のたびにサービスが構築、テスト、デプロイを行うよう独自のプロセスを定義できます。例えば、ベータ、ガンマ、本番の 3 つのアプリケーションのデプロイグループがあるとします。ソースコードが変更されるたびに、各デプロイグループに 1 つずつ更新をデプロイするようにパイプラインを設定できます。 CodeDeploy を使用して以下をデプロイするように AWS CodePipeline を設定できます。
パイプラインを作成する前または [パイプラインの作成] ウィザードの段階のデプロイアクションで使用できるように、CodeDeploy アプリケーション、デプロイおよびデプロイグループを作成できます。 詳細はこちら:
|
| AWS サーバーレスアプリケーションモデル |
AWS サーバーレスアプリケーションモデル (AWS SAM) はサーバーレスアプリケーションを定義するモデルです。CloudFormation を拡張し、サーバーレスアプリケーションに必要な AWS Lambda 関数、Amazon API Gateway API、および Amazon DynamoDB テーブルを定義するための簡略化された方法を提供します。すでに AWS SAM を使用している場合、デプロイの設定を追加して CodeDeploy の使用を開始し、AWS Lambda アプリケーションのデプロイでトラフィックを移行する方法を管理できます。 詳細については、「AWS サーバーレスアプリケーションモデル |
| エラスティックロードバランシング |
CodeDeploy は、Elastic Load Balancing をサポートしています。このサービスでは、着信アプリケーションを複数の Amazon EC2 インスタンス間に分散します。 また、CodeDeploy のデプロイ中、インスタンスが準備完了ではない、現在デプロイ中、または環境の一部として不要になった場合は、ロードバランサーはそのインスタンスへのインターネットトラフィックのルーティングを防止します。 詳細はこちら: |