翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS::Serverless::CapacityProvider
顧客所有の Amazon Elastic Compute Cloud インスタンスで Lambda マネージドインスタンスを実行できるようにする AWS Lambda 関数のキャパシティープロバイダーを作成します。このリソースは、EC2 料金モデルを利用して大規模な Lambda ワークロードのコストを最適化する Lambda マネージドインスタンス機能の一部です。
キャパシティプロバイダーは EC2 インスタンスのライフサイクルを管理し、Lambda 関数がサーバーレスプログラミングモデルを維持しながら、顧客所有のコンピューティングリソースで実行するために必要なインフラストラクチャを提供します。
注記
にデプロイすると AWS CloudFormation、 は AWS SAM リソースを CloudFormation リソース AWS SAM に変換します。詳細については、「AWS SAM 向けに生成された CloudFormation リソース」を参照してください。
構文
AWS Serverless Application Model (AWS SAM) テンプレートでこのエンティティを宣言するには、次の構文を使用します。
YAML
Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName:StringVpcConfig:VpcConfigOperatorRole:StringTags:MapPropagateTags:BooleanInstanceRequirements:InstanceRequirementsScalingConfig:ScalingConfigKMSKeyArn:String
プロパティ
-
CapacityProviderName -
容量プロバイダーの名前。この名前は、 AWS アカウントとリージョン内で一意である必要があります。
タイプ: 文字列
必須: いいえ
CloudFormation 互換性: このプロパティは、
AWS::Lambda::CapacityProviderリソースのCapacityProviderNameプロパティに似ています。 -
VpcConfig -
キャパシティープロバイダーの VPC 設定。Amazon EC2 インスタンスを起動する VPC サブネットとセキュリティグループを指定します。
タイプ: VpcConfig
必須: はい
CloudFormation 互換性: このプロパティは、
AWS::Lambda::CapacityProviderリソースのVpcConfigプロパティに直接渡されます。 -
OperatorRole -
カスタマーアカウントで Amazon EC2 インスタンスおよび関連リソースを作成および管理するためのアクセス許可を持つ Lambda のオペレーターロールの ARN。指定しない場合、 は必要なアクセス許可を持つロール AWS SAM を自動的に生成します。
タイプ: 文字列
必須: いいえ
CloudFormation 互換性: このプロパティは、
AWS::Lambda::CapacityProviderリソースのPermissionsConfigプロパティに直接渡されます。 -
キャパシティープロバイダーとその関連リソースに適用するキーと値のペアのマップ。
タイプ: マップ
必須: いいえ
CloudFormation 互換性: このプロパティは、
AWS::Lambda::CapacityProviderリソースのTagsプロパティに直接渡されます。のTagsプロパティ AWS SAM はキーと値のペアで構成されます ( CloudFormation このプロパティは Tag オブジェクトのリストで構成されます)。また、 は、この Lambda 関数と、この関数用に生成されたデフォルトのロールにlambda:createdBy:SAMタグ AWS SAM を自動的に追加します。 -
タグプロパティから
AWS::Serverless::CapacityProvider生成されたリソースにタグを渡すかどうかを示します。これを に設定するとTrue、生成されたリソースにタグが伝播されます。型: ブール
必須: いいえ
CloudFormation 互換性: このプロパティは に固有 AWS SAM であり、 CloudFormation 同等のものはありません。
-
InstanceRequirements -
キャパシティープロバイダーが使用できるコンピューティングインスタンスのタイプに関する仕様。これには、アーキテクチャ要件や
allowedexcludedインスタンスタイプが含まれます。タイプ: InstanceRequirements
必須: いいえ
CloudFormation compatibility: はこのプロパティを に AWS SAM マッピングします
InstanceRequirements。 -
ScalingConfig -
キャパシティープロバイダーのスケーリング設定。キャパシティープロバイダーが需要に基づいて Amazon EC2 インスタンスをスケーリングする方法を定義します。
Type: ScalingConfig
必須: いいえ
CloudFormation 互換性: このプロパティは
AWS::Lambda::CapacityProviderリソースのCapacityProviderScalingConfigプロパティに直接渡されます。 -
KMSKeyArn -
キャパシティープロバイダーの保管中および転送中のデータの暗号化に使用される AWS KMS キーの ARN。
タイプ: 文字列
必須: いいえ
CloudFormation 互換性: このプロパティは、
AWS::Lambda::FunctionリソースのKmsKeyArnプロパティに直接渡されます。
戻り値
参照番号
このリソースの論理 ID がRef組み込み関数に提供されると、キャパシティープロバイダーの名前が返されます。
Ref 関数の使用方法の詳細については、「AWS CloudFormation ユーザーガイド」の「Ref」を参照してください。
Fn::GetAtt
Fn::GetAtt は、このタイプの指定された属性の値を返します。利用可能な属性とサンプル戻り値は以下のとおりです。
Fn::GetAtt の使用の詳細については、「AWS CloudFormation ユーザーガイド」の「Fn::GetAtt」を参照してください。
Arn-
キャパシティープロバイダーの ARN。
例
基本的なキャパシティープロバイダー
次の の例では、VPC 設定を使用して基本的なキャパシティープロバイダーを作成します。
MyCapacityProvider: Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName:my-capacity-providerVpcConfig: SubnetIds: -subnet-12345678-subnet-87654321SecurityGroupIds: -sg-12345678Tags: Environment: Production Team: ServerlessTeam
スケーリングを備えた高度なキャパシティープロバイダー
次の例では、カスタムインスタンス要件とスケーリング設定を使用してキャパシティープロバイダーを作成します。
AdvancedCapacityProvider: Type: AWS::Serverless::CapacityProvider Properties: CapacityProviderName:advanced-capacity-providerVpcConfig: SubnetIds: -subnet-12345678-subnet-87654321SecurityGroupIds: -sg-12345678OperatorRole: arn:aws:iam::123456789012:role/MyCapacityProviderRolePropagateTags: true InstanceRequirements: Architectures: - x86_64 ExcludedTypes: - t2.micro ScalingConfig: MaxInstanceCount: 10 ManualScalingPolicies: AverageCPUUtilization: 70.0 KMSKeyArn: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012Tags: Environment: Production CostCenter: Engineering