AWS Proton Specialized2020年〜
A service where platform teams provide infrastructure templates and developers deploy via self-service
What It Does
AWS Proton lets platform engineering teams create and manage infrastructure templates (environment templates and service templates) so developers can deploy applications via self-service. It uses CloudFormation or Terraform as the backend.
Use Cases
Standardizing organizational infrastructure, providing self-service deployment environments for developers, managing infrastructure templates for microservices, and version-controlling templates with bulk updates.
Everyday Analogy
Think of an internal request system. The admin department (platform team) prepares request forms (templates), and employees (developers) just fill in the required fields to have supplies (infrastructure) automatically provisioned.
What Is Proton?
AWS Proton is a service for platform engineering. Platform teams create approved infrastructure templates, and developers simply select a template and enter parameters to deploy infrastructure. Template versioning lets you roll out security patches and best-practice updates across all services at once.
Environment and Service Templates
Environment templates define shared infrastructure like VPCs, subnets, and security groups. Service templates define application infrastructure like ECS tasks, Lambda functions, and API Gateways. Developers select an environment and create a service from a service template. When a new template version is published, you can recommend or auto-apply updates to existing services. To dive deeper into environment and service templates, specialized books on Amazon are worth a look.
Getting Started
In the Proton console, create an environment template and upload your CloudFormation or Terraform template files. Deploy the environment, then create service templates. Developers create services from the Proton console and connect code repositories to build deployment pipelines.
Things to Watch Out For
- Proton itself is free - you only pay for the deployed infrastructure resources (ECS, Lambda, etc.)
- For small teams, using CloudFormation or CDK directly may be simpler. Proton is best suited for organizations with a clear separation between developers and platform teams