Une application sans serveur peut être construite à l'aide de services fournis par AWS tels que AWS Serverless Application Model (SAM). AWS fournit AWS Sam CLI pour le développement d'applications basées sur SAM. Il facilite un environnement d'exécution similaire à Lambda pour la construction, les tests et les applications de débogage fournies par les modèles SAM. De plus, en utilisant AWS SAM CLI, nous pouvons déployer l'application SAM à AWS.
Que couvrirons-nous?
Dans ce guide, nous explorerons le modèle AWS SAM.
Qu'est-ce que AWS Sam?
AWS Sam est utilisé pour développer des applications sans serveur sur AWS. Sam et Sam CLI sont sous une licence open-source. SAM définit les ressources utilisées dans les applications sans serveur. Il a de courtes syntaxes pour désigner les API, les fonctions, les bases de données et les mappages des sources d'événements. Les syntaxes SAM sont transformées et étendues en syntaxes AWS Cloudformation. Les applications peuvent être modélisées à l'aide de YAML. De cette façon, les applications sans serveur peuvent être construites rapidement.
Caractéristiques d'Aws Sam
L'AWS SAM peut être intégré à d'autres services AWS et a donc plusieurs avantages pour développer des applications sans serveur:
Regarder dans le modèle SAM
Un modèle AWS SAM est très similaire au modèle AWS Cloudformation, mais il existe des différences majeures entre les deux en termes de sections de modèle suivantes:
Les sections de modèle restantes…
À côté des sections mentionnées ci-dessus, les sections restantes accompagnent la section de fichier de modèle de forme de cloudformation avec le nom correspondant. Le modèle AWS SAM nécessite uniquement le Sections de transformation et de ressources comme un incontournable. Cependant, nous pouvons également ajouter d'autres sections. En dehors de la section ci-dessus, nous pouvons également avoir la section mentionnée ci-dessous dans le modèle AWS SAM:
Les sections de modèle discutées ci-dessus peuvent être ajoutées dans n'importe quel ordre. Cependant, il faut s'en tenir à un ordre logique. AWS SAM CLI a un fichier de configuration du format de fichier Toml. Ce fichier, nommé comme samconfig.toml, Contient des paramètres par défaut pour les commandes SAM CLI.
Pour vérifier un modèle AWS SAM, utilisez le format de commande:
SAM valider [Options]
Exemple de modèle SAM
Voici des modèles d'échantillons d'AWS SAM contenant des sections spécifiques et les invites d'échantillon correspondantes qui apparaissent avec le 'Sam Deploy -udé' commande:
Section des paramètres:
Paramètres:
Ourpar:
Type: chaîne
Par défaut: ourpalval
Exemple d'invite de sortie:
Paramètre ourpar [ourparval]:
Section des ressources:
Ressources:
Bonjour le monde:
Type: AWS :: Serverless :: Fonction
Propriétés:
Codeuri: hello_world /
Handleur: application.lambda_handler
Exécution: Python3.7
CodesigningConfigarn: ARN: AWS: Lambda: US-East-1: xxxxxxxxxxxx: Code-Signer-Config: CSC-12E12345DB1234567
Exemple d'invite de sortie:
#Found Code Signing Configurations dans vos définitions de fonction
Voulez-vous signer votre code? [O / N]:
#Pelease Fournir les détails du profil de signature pour les fonctions et couches suivantes
# Indignation des détails du profil pour la fonction 'Helloworld'
Nom de profil de signature:
ID de compte du propriétaire du profil de signature (facultatif):
#Signing Profile Détails de la couche 'mylayer', qui est utilisé par les fonctions 'Helloworld'
Nom de profil de signature:
ID de compte du propriétaire du profil de signature (facultatif):
Conclusion
Dans ce guide, nous avons exploré le modèle AWS SAM. La prochaine chose que vous pouvez essayer est de déployer une application simple Hello World Server sans serveur contenant un fichier de modèle AWS SAM.