O que vamos cobrir?
Neste guia, exploraremos a implantação de um aplicativo AWS SAM.
O que é aws sam?
AWS SAM é um serviço baseado em nuvem da Amazon para desenvolver aplicativos sem servidor. Sam, assim como a Sam CLI, são projetos de código aberto. Sam define os recursos usados em aplicativos com base na arquitetura sem servidor. Possui sintaxes curtas para denotar APIs, funções, bancos de dados e mapeamentos de fontes de evento. As sintaxias SAM são transformadas e expandidas em sintaxes da AWS CloudFormation. As aplicações podem ser modeladas usando YAML. Dessa forma, aplicativos sem servidor podem ser construídos rapidamente.
O “Sam implantar” Comando
Por padrão, o Sam implantar O comando assume o diretório atual como o diretório raiz do projeto. Primeiro, o AWS Sam Cli procura um arquivo de modelo de modelo denominado modelo.yaml dentro do subdiretório “.AWS-SAM”Foi criado executando o Sam Build comando.
Em seguida, ele procura o mesmo arquivo (qualquer modelo.yaml ou modelo.yml) no diretório atual. Quando um "-modelo”. Em seguida, ele implantará apenas o modelo SAM especificado e os recursos locais.
O Sam implantar O comando também fornece um modo interativo guiado com o “-guiado”Opção. Nesse modo, o usuário é solicitado a diferentes parâmetros necessários para implantação.
Comandos importantes da CLI da SAM
sam-init: A ferramenta SAM CLI pode inicializar aplicativos sem servidor usando os modelos de infraestrutura da AWS. Isso é feito usando o “sam-init”Comando.
Sam-Build: Da mesma maneira, o “Sam-Build”O comando é usado para compilar, construir e embalar funções lambda com o tempo de execução fornecido.
Sam-local: Com os contêineres do Docker, os comandos "sam local" podem testar localmente o aplicativo SAM executando -o.
SAM SYNC: O "SAM SYNC”O comando fornece um recurso para sincronizar e verificar as modificações feitas no ambiente da nuvem.
Sam-desployer: Finalmente, execute o “Sam implantar”Comando para implantar seu aplicativo SAM.
Implantando um aplicativo Helloworld
Vamos dar um exemplo de AWS Sam implantar usando um aplicativo Helloworld de amostra. Neste exemplo, o aplicativo Helloworld usa um back -end básico da API. Consulte o diagrama a seguir para os componentes usados neste aplicativo:
A função Lambda é invocada quando uma solicitação GET é recebida no terminal da API Gateway. Em resposta, uma mensagem do Hello World é devolvida pela função Lambda.
Agora, siga estas etapas para implantar este aplicativo:
Baixando o aplicativo de amostra
Primeiro, execute o seguinte comando:
Sam Init
Uma série de avisos aparecerá na tela. Para o tipo de modelo, estamos mantendo a opção AWS Quick Start Modelos, seguida pelo modelo Hello World:
Estamos selecionando a opção padrão: Python Runtime e tipo de pacote zip. Além disso, mantenha o nome do projeto para ser o padrão: “SAM-APP”.
Depois de executar as configurações anteriores, você verá o resumo básico do aplicativo:
Esse sam-init O comando fará com que um diretório seja criado com o mesmo nome escolhido para o nome do projeto. Além disso, observe que o seguinte diretório contém muitos subdiretos e arquivos:
$ TREE SAM-APP
Estes são os três arquivos mais importantes:
Construindo a aplicação
Antes de construir o aplicativo, navegue pelo diretório do projeto que contém o modelo.arquivo yaml e depois execute o comando de compilação. Aqui está como fazer isso em um passo:
$ CD SAM-APP && SAM Build
Observação: Por favor, use a versão necessária do Python. Caso contrário, o comando de construção pode falhar.
Implantando o aplicativo
Finalmente, para implantar o aplicativo com um assistente interativo, execute o seguinte comando:
$ sam implantar -guiado
Reconheça uma pergunta digitando “y” e pressione Enter para escolher uma opção padrão.
Quando solicitado a implantar as alterações, digite "Y":
Após algum processamento, você deve ver uma mensagem bem -sucedida:
Testando o aplicativo
Use o "Sam local”Comando para testar o aplicativo Hello World com contêineres do Docker:
$ SAM Local Start-Api
Outra maneira de testar o aplicativo é chamar a função Lambda com:
$ sam Local Invoke "HelloworldFunction" -e Events/Event.JSON
Conclusão
Neste guia, abordamos como construir e implantar um aplicativo AWS SAM usando uma amostra AWS SAM modelo. Em seguida, você pode tentar desenvolver e implantar seu próprio aplicativo AWS SAM. Esperamos que você tenha achado este artigo útil. Verifique outros artigos de dica do Linux para obter mais dicas e tutoriais.