AWS Proton でプラットフォームエンジニアリングを実現 - インフラテンプレートのセルフサービス提供
Proton によるインフラテンプレートの管理、環境とサービスの分離、開発者セルフサービスの設計を解説します。
Proton の概要
Proton はプラットフォームチームがインフラテンプレートを管理し、開発者にセルフサービスデプロイを提供するサービスです。プラットフォームチームがセキュリティとコンプライアンスを満たすテンプレートを作成し、開発者はテンプレートを選択するだけでインフラを構築します。
この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
テンプレートとセルフサービス
環境テンプレートは VPC、ECS クラスター、RDS インスタンスなどの共有インフラを定義します。サービステンプレートは ECS サービス、Lambda 関数、API Gateway などのアプリケーションデプロイ構成を定義します。開発者は Proton コンソールから環境とサービステンプレートを選択し、パラメータ (インスタンスサイズ、環境名) を入力するだけでデプロイが完了します。テンプレートのメジャーバージョン更新時は、既存サービスに更新推奨の通知が表示され、開発者が任意のタイミングで更新を適用します。
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。
まとめ
Proton はプラットフォームチームと開発者の責務を分離し、インフラのセルフサービスプロビジョニングを実現するサービスです。テンプレートのバージョン管理で組織全体のインフラ標準を維持します。
AWS の優位点
- プラットフォームチームがインフラテンプレート (環境テンプレート、サービステンプレート) を作成・管理する
- 開発者はテンプレートを選択するだけでインフラをプロビジョニングし、CloudFormation や Terraform の知識が不要
- 環境テンプレートで VPC、クラスター、共有リソースを定義し、サービステンプレートでアプリケーションのデプロイ構成を定義する
- テンプレートのバージョン管理で更新を段階的にロールアウトし、全サービスを最新バージョンに追従させる
- CodePipeline 統合でソースコードの変更からインフラのプロビジョニングまでを自動化する
同じテーマの記事
自動デプロイメント戦略 - AWS CodeDeploy と CodePipeline で実現する継続的デリバリー
AWS CodeDeploy と CodePipeline を活用した自動デプロイメントの構築方法を解説します。EC2、Lambda、ECS への多様なデプロイ戦略と、パイプラインによる継続的デリバリーの実践手法を紹介します。
カオスエンジニアリング実践 - AWS Fault Injection Simulator で耐障害性を検証する
AWS Fault Injection Simulator (FIS) を使ったカオスエンジニアリングの実践を解説。障害注入シナリオの設計、EC2・ECS・RDS への障害注入、安全な実験の進め方を紹介します。
CI/CD パイプライン自動化 - AWS CodePipeline で実現する継続的デリバリー
AWS CodePipeline と CodeBuild を活用した CI/CD パイプラインの自動化を解説します。
AWS CodeDeploy のデプロイ戦略 - EC2・ECS・Lambda へのブルーグリーンデプロイ
CodeDeploy による EC2、ECS、Lambda へのデプロイ戦略、ブルーグリーンデプロイの設計、自動ロールバックの設定を解説します。
AWS CodeDeploy の EC2/オンプレミスデプロイ - AppSpec とライフサイクルフックの設計
CodeDeploy の EC2/オンプレミスデプロイにおける AppSpec ファイルの設計、ライフサイクルフックの活用、デプロイグループの管理を解説します。
AWS CodePipeline で構築する CI/CD パイプライン - ソースからデプロイまでの自動化
CodePipeline によるマルチステージパイプラインの構築、承認アクション、クロスアカウントデプロイを解説します。
Elastic Beanstalk で始めるアプリケーションデプロイ自動化 - 環境構築からローリングデプロイまで
Elastic Beanstalk によるアプリケーションデプロイの自動化を解説。環境構築、デプロイポリシーの選定、.ebextensions によるカスタマイズ手法を紹介します。
Elastic Beanstalk の Docker マルチコンテナ環境 - ECS 連携と本番運用のベストプラクティス
Elastic Beanstalk の Docker プラットフォームによるマルチコンテナ構成、ECS との連携、ヘルスチェックとログ管理を解説します。