ソフトウェアデリバリーの課題 - AWS での継続的インテグレーションと継続的デリバリーの実践

ソフトウェアデリバリーの課題

今日のエンタープライズは、急激に変化する競争環境、進化し続けるセキュリティ要件、およびパフォーマンスとスケーラビリティの確保という課題に直面しています。エンタープライズは、オペレーションの安定性と迅速な機能開発のギャップを埋める必要があります。継続的インテグレーションと継続的デリバリー (CI/CD) は、システムの安定性とセキュリティを維持しながら、迅速なソフトウェアの変更を可能にするプラクティスです。

Amazon は、Amazon.com のリテールの顧客、Amazon の子会社、アマゾン ウェブ サービス (AWS) が新しく革新的なソフトウェアのデリバリー方法を必要とするであろう、機能のデリバリーに関するビジネスの要求について、早い時期に認識しました。Amazon のような規模では、迅速、安全かつ確実に、さらに機能停止を許容せずにソフトウェアをデリバリーするために、何千もの独立したソフトウェアチームが並行して作業しなければなりません。

ソフトウェアを高いスピードでデリバリーする方法を学ぶことによって、Amazon やその他の先進的な組織は DevOps の先駆者となりました。DevOps は、組織が迅速にアプリケーションとサービスを提供する能力を高める、文化的な考え方、プラクティス、およびツールの組み合わせです。DevOps の原則を使用することで、組織は、従来型のソフトウェア開発およびインフラストラクチャ管理のプロセスを使用する組織よりも速いペースで製品を進化させ、改善することができます。組織はこの迅速さのために顧客をより良く支え、市場での競合に勝ち抜くことができます。

「2 枚のピザ」チームやマイクロサービス/サービス指向アーキテクチャ (SOA) などの DevOps の原則のいくつかは、このホワイトペーパーでは取り扱っていません。このホワイトペーパーでは、Amazon が築き上げ、継続的に改善している CI/CD の機能について説明します。CI/CD は、ソフトウェア機能を迅速かつ期待通りにデリバリーするための鍵です。

現在 AWS は、AWS CodeStarAWS CodeCommitAWS CodePipelineAWS CodeBuildAWS CodeDeployAWS CodeArtifact などの CI/CD 機能を一連のデベロッパー向けサービスとして提供しています。DevOps を実践するデベロッパーや IT 運用のプロフェッショナルは、これらのサービスを使用して迅速、安全かつ確実にソフトウェアをデリバリーできます。これらを組み合わせることで、アプリケーションのソースコードの安全な保存とバージョン管理を行うことができます。AWS CodeStar を使用することで、これらのサービスを利用してエンドツーエンドのソフトウェアのリリースワークフローを迅速にオーケストレートすることができます。既存の環境に対しては、AWS CodePipeline が既存のツールによる独立したサービスを統合できる柔軟性を持ちます。これらは、他の AWS のサービスと同様に、AWS Management Console、AWS アプリケーションプログラミングインターフェイス (API)、AWS ソフトウェア開発ツールキット (SDK) を通じてアクセスできる、可用性が高く、簡単に統合できるサービスです。