AWS OpsWorks - AWS での DevOps の概要

AWS OpsWorks

AWS OpsWorks では、AWS Elastic Beanstalk よりもさらに DevOps の原則が取り入れられています。これは、単なるアプリケーションコンテナではなく、アプリケーション管理サービスであると考えることができます。AWS OpsWorks では、設定管理ソフトウェア (Chef) との統合やアプリケーションライフサイクル管理などの追加機能により、さらに多様なレベルのオートメーションが可能になります。アプリケーションライフサイクル管理を使用すると、リソースのセットアップ、設定、デプロイ、アンデプロイ、またはシャットダウンのタイミングを定義できます。

AWS OpsWorks では、設定可能なスタックで独自にアプリケーションを定義でき、さらに高い柔軟性を実現しています。定義済みのアプリケーションスタックを選択することもできます。アプリケーションスタックには、アプリケーションサーバー、ウェブサーバー、データベース、ロードバランサーなど、アプリケーションに必要な AWS リソースのプロビジョニングがすべて含まれています。

図 2

図 2 - DevOps の機能とアーキテクチャを示す AWS OpsWorks

アプリケーションスタックは、スタックを個別に管理できるように、アーキテクチャレイヤーnoに編成されます。レイヤーの例としては、ウェブ層、アプリケーション層、データベース層などがあります。AWS OpsWorks を使用すると、追加設定なしで、Auto Scaling グループと Elastic Load Balancing ロードバランサーのセットアップを簡素化できます。これは、DevOps 原則としてのオートメーションをよく表しています。AWS Elastic Beanstalk と同様に、AWS OpsWorks ではアプリケーションのバージョニング、継続的デプロイ、インフラストラクチャ設定管理がサポートされます。

AWS OpsWorks では、モニタリングとロギングの DevOps プラクティスもサポートされています (次のセクションで説明します)。モニタリングのサポートは Amazon CloudWatch によって提供されます。すべてのライフサイクルイベントがログに記録され、実行された Chef レシピと発生したあらゆる例外が、独立した Chef ログに記録されます。