AWSTemplateFormatVersion: Đây chỉ định phiên bản của định dạng file template AWS CloudFormation được sử dụng (2010-09-09 trong trường hợp này).
Description: Đây là mô tả ngắn gọn về file template.
Resources: Phần này xác định các nguồn tài nguyên cần tạo trong CF.
LambdaRole: Đây là tài nguyên AWS::IAM::Role để xác định role cho hàm Lambda. Nó định nghĩa một role có tên “lambda-role” và xác định policy cho role đó.
LambdaFunctionDemo: Đây là tài nguyên AWS::Lambda::Function để tạo hàm Lambda. Nó đặt tên hàm là “CfnLambdaDemo” và xác định các thuộc tính khác như handler, mã nguồn, runtime, kích thước bộ nhớ, thời gian chờ, và role.
Outputs: Phần này xác định các giá trị đầu ra của CloudFormation template.
LambdaRoleArn: Đây là một giá trị đầu ra để cung cấp ARN (Amazon Resource Name) của role LambdaRole.
LambdaFunctionName: Đây là một giá trị đầu ra để cung cấp tên của hàm Lambda (LambdaFunctionDemo).
File template này tạo ra một role IAM và một hàm Lambda, và cung cấp các giá trị đầu ra để sử dụng trong các quy trình tiếp theo hoặc trong cấu hình hệ thống.
cd CloudFormation-series
cd day-1
aws cloudformation create-stack \
--stack-name cfn-lambda-demo \
--template-body file://lambda.yaml \
--capabilities CAPABILITY_NAMED_IAM