O que é AWS Serverless Application Model (AWS SAM)? - AWS Serverless Application Model

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

O que é AWS Serverless Application Model (AWS SAM)?

AWS Serverless Application Model (AWS SAM) é uma estrutura de código aberto para criar aplicativos sem servidor usando infraestrutura como código (IaC). Com AWS SAM a sintaxe abreviada, os desenvolvedores declaram AWS CloudFormationrecursos e recursos especializados sem servidor que são transformados em infraestrutura durante a implantação. Ao trabalhar com AWS SAM, você interagirá com:

  1. AWS SAM CLI- Uma ferramenta de linha de comando que ajuda você a desenvolver, testar e implantar localmente seus aplicativos sem servidor.

  2. AWS SAM Modelo - Uma extensão AWS CloudFormation que fornece uma sintaxe simplificada para definir recursos sem servidor.

Quando você usa o sam init comando, ele cria um diretório de projeto, que chamaremos de AWS SAM projeto, que normalmente inclui seu AWS SAM modelo, código do aplicativo e outros arquivos de configuração.

Quando usar AWS SAM

AWS SAM é uma solução IaC ideal para cenários em que você deseja um desenvolvimento simplificado sem servidor com todo o poder do. AWS CloudFormation Por exemplo, você pode usar o SAM para:

  • Aplicativos sem servidor: você pode usar o SAM para definir rapidamente AWS Lambda funções, Amazon API Gateway APIs, tabelas do Amazon DynamoDB e outros recursos sem servidor com o mínimo de código.

  • AWS CloudFormation aprimoramento: você pode combinar o SAM com CloudFormation modelos existentes para adicionar componentes sem servidor à infraestrutura tradicional. Os recursos do SAM funcionam junto com CloudFormation os recursos padrão no mesmo modelo.

  • Desenvolvimento e testes locais: você pode usar o SAM CLI para testar as funções do Lambda localmente, simular endpoints do API Gateway e depurar aplicativos sem servidor em sua máquina de desenvolvimento antes de implantá-la. AWS

  • CI/CD para ambientes sem servidor: você pode criar pipelines de implantação usando modelos de SAM que geram automaticamente a CloudFormation infraestrutura necessária para ambientes de preparação e produção.

  • Migração de recursos criados pelo console: você pode converter funções Lambda e recursos do API Gateway criados no AWS Management Console em infraestrutura como código usando modelos SAM.

Comparando AWS SAM com outras ferramentas de IaC

  • Use o SAM em vez de CloudFormation simplificar as definições de recursos sem servidor, mantendo a compatibilidade do modelo.

  • Use o SAM em vez de AWS CDK se você preferir uma abordagem declarativa para descrever sua infraestrutura em vez de uma abordagem programática.

  • Combine o SAM AWS CDK usando os recursos de teste locais do SAM CLI para aprimorar seus aplicativos de CDK.

Atributos principais

AWS SAM oferece uma variedade de benefícios que melhoram a experiência do desenvolvedor, permitindo que você:

Defina seu código de infraestrutura de aplicativos rapidamente, usando menos código

Crie AWS SAM modelos para definir seu código de infraestrutura de aplicativos sem servidor. Implante seus modelos diretamente AWS CloudFormation para provisionar seus recursos.

Gerencie seus aplicativos sem servidor durante todo o ciclo de vida de desenvolvimento

Use o AWS SAMCLI para gerenciar seu aplicativo sem servidor por meio das fases de criação, compilação, implantação, teste e monitoramento do seu ciclo de vida de desenvolvimento. Para obter mais informações, consulte AWS SAM CLI.

Provisione rapidamente permissões entre recursos com AWS SAM conectores

Use AWS SAM conectores em seus AWS SAM modelos para definir permissões entre seus AWS recursos. AWS SAM transforma seu código nas permissões do IAM necessárias para facilitar sua intenção. Para obter mais informações, consulte Gerenciando permissões de recursos com conectores AWS SAM.

Sincronize as alterações locais com a nuvem à medida que você se desenvolve

Use o AWS SAMCLI sam sync comando para sincronizar automaticamente as alterações locais na nuvem, acelerando seus fluxos de trabalho de desenvolvimento e teste na nuvem. Para obter mais informações, consulte Introdução ao uso sam sync para sincronizar com Nuvem AWS.

Gerencie seus aplicativos Terraform sem servidor

Use o AWS SAMCLI para realizar a depuração e o teste locais de suas camadas e funções do Lambda. Para obter mais informações, consulte Suporte AWS SAM CLI Terraform.

Informações relacionadas