View a markdown version of this page

Lambda 受管執行個體的 Lambda 運算子角色 - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Lambda 受管執行個體的 Lambda 運算子角色

當您使用 Lambda 受管執行個體時,Lambda 需要許可才能管理您帳戶中的運算容量。運算子角色透過 IAM 政策提供這些許可,允許 Lambda 管理容量提供者中的 EC2 執行個體。

Lambda 在執行這些管理操作時擔任 運算子角色,類似於 Lambda 如何在 Lambda 事件函數執行時擔任 執行角色。

建立運算子角色

您可以在 IAM 主控台或使用 CLI AWS 建立運算子角色。角色必須包含:

  • 許可政策 – 授予管理容量提供者和相關資源的許可

  • 信任政策 – 允許 Lambda 服務 (lambda.amazonaws.com) 擔任該角色

許可政策

運算子角色需要管理容量提供者和基礎運算資源的許可。該角色至少需要 AWSLambdaManagedEC2ResourceOperator 受管政策中的許可,目前為:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags", "ec2:AttachNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*:*:volume/*" ], "Condition": { "StringEquals": { "ec2:ManagedResourceOperator": "scaler.lambda.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeAvailabilityZones", "ec2:DescribeCapacityReservations", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeInstanceTypes", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEncryptionControls" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Effect": "Allow", "Action": [ "ec2:RunInstances" ], "Resource": [ "arn:aws:ec2:*:*:image/*" ], "Condition": { "StringEquals": { "ec2:Owner": "amazon" } } }, { "Effect": "Allow", "Action": [ "logs:CreateLogGroup" ], "Resource": "arn:aws:logs:*:*:log-group:*" }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:*:log-stream:*" } ] }

信任政策

信任政策允許 Lambda 擔任運算子角色:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Lambda 受管執行個體的服務連結角色

為了以負責的方式管理 Lambda 受管執行個體的生命週期,Lambda 需要持續存取才能終止您帳戶中的受管執行個體。Lambda 使用 AWS Identity and Access Management (IAM) 服務連結角色 (SLR) 來執行這些操作。

自動建立:服務連結角色會在您第一次建立容量提供者時自動建立。建立第一個容量提供者的使用者必須擁有lambda.amazonaws.com主體的 iam:CreateServiceLinkedRole 許可。

許可:服務連結角色授予 Lambda 受管執行個體的下列許可:

  • ec2:TerminateInstances – 在執行個體生命週期結束時終止執行個體

  • ec2:DescribeInstances – 列舉受管執行個體

刪除:只有在刪除帳戶中的所有 Lambda 受管執行個體容量提供者之後,才能刪除此服務連結角色。

如需服務連結角色的詳細資訊,請參閱使用 Lambda 的服務連結角色。