AWS::ImageBuilder::InfrastructureConfiguration - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::ImageBuilder::InfrastructureConfiguration

基础设施配置允许您指定在其中构建和测试映像的基础设施。在基础设施配置中,您可以指定要与您的实例关联的实例类型、子网和安全组。还可以将 Amazon EC2 密钥对与用于构建映像的实例相关联。这允许您登录到您的实例,以便在构建失败并将 terminateInstanceOnFailure 设置为 false 时进行故障排除。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::ImageBuilder::InfrastructureConfiguration", "Properties" : { "Description" : String, "InstanceProfileName" : String, "InstanceTypes" : [ String, ... ], "KeyPair" : String, "Logging" : Logging, "Name" : String, "ResourceTags" : {Key : Value, ...}, "SecurityGroupIds" : [ String, ... ], "SnsTopicArn" : String, "SubnetId" : String, "Tags" : {Key : Value, ...}, "TerminateInstanceOnFailure" : Boolean } }

YAML

Type: AWS::ImageBuilder::InfrastructureConfiguration Properties: Description: String InstanceProfileName: String InstanceTypes: - String KeyPair: String Logging: Logging Name: String ResourceTags: Key : Value SecurityGroupIds: - String SnsTopicArn: String SubnetId: String Tags: Key : Value TerminateInstanceOnFailure: Boolean

属性

Description

基础设施配置的描述。

必需:否

类型:字符串

最低1

最高1024

Update requires: No interruption

InstanceProfileName

基础设施配置的实例配置文件。

必需:是

类型:字符串

最低1

最高1024

Update requires: No interruption

InstanceTypes

基础设施配置的实例类型。

必需:否

类型:字符串列表

Update requires: No interruption

KeyPair

基础设施配置的 EC2 密钥对。

必需:否

类型:字符串

最低1

最高1024

Update requires: No interruption

Logging

基础设施配置的日志记录配置。

必需:否

类型日志记录

Update requires: No interruption

Name

基础设施配置的名称。

必需:是

类型:字符串

模式^[-_A-Za-z-0-9][-_A-Za-z0-9 ]{1,126}[-_A-Za-z-0-9]$

Update requires: Replacement

ResourceTags

附加到映像生成器创建的资源的标签。

必需:否

类型:字符串的映射

Update requires: No interruption

SecurityGroupIds

基础设施配置的安全组 ID。

必需:否

类型:字符串列表

Update requires: No interruption

SnsTopicArn

基础设施配置的 SNS 主题的 Amazon 资源名称 (ARN)。

必需:否

类型:字符串

最低1

最高1024

Update requires: No interruption

SubnetId

基础设施配置的子网 ID。

必需:否

类型:字符串

最低1

最高1024

Update requires: No interruption

Tags

基础设施配置的标签。

必需:否

类型:字符串的映射

Update requires: No interruption

TerminateInstanceOnFailure

基础设施配置发生配置故障时的终止实例。

必需:否

类型:布尔值

Update requires: No interruption

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 资源 ARN,如 arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure

For more information about using the Ref function, see Ref.

Fn::GetAtt

Fn::GetAtt 内部函数返回此类型的一个指定属性的值。以下为可用属性和示例返回值。

有关使用 Fn::GetAtt 内部函数的更多信息,请参阅 Fn::GetAtt

Arn

返回基础设施配置的 Amazon 资源名称 (ARN)。应用以下模式:^arn:aws[^:]*:imagebuilder:[^:]+:(?:\d{12}|aws):(?:image-recipe|infrastructure-configuration|distribution-configuration|component|image|image-pipeline)/[a-z0-9-_]+(?:/(?:(?:x|\d+)\.(?:x|\d+)\.(?:x|\d+))(?:/\d+)?)?$

示例

创建基础设施配置

以下示例同时以 YAML 和 JSON 格式显示 InfrastructureConfiguration 资源文档的所有参数的架构。

YAML

Resources: InfrastructureConfigurationAll: Type: 'AWS::ImageBuilder::InfrastructureConfiguration' Properties: Name: 'infrastructure-configuration-name' InstanceProfileName: 'instance-profile-name' Description: 'description' InstanceTypes: - 'm4.large' - 'm5.large' KeyPair: 'key-pair' Logging: S3Logs: S3BucketName: 'imagebuilder-logging-bucket' S3KeyPrefix: 'imagebuilder-bucket-prefix' SnsTopicArn: !Ref SnsTopicArn TerminateInstanceOnFailure: true SecurityGroupIds: - 'security-group-id-1' - 'security-group-id-2' SubnetId: 'subnet-id' Tags: CustomerInfraConfigTagKey1: 'CustomerInfraConfigTagValue1' CustomerInfraConfigTagKey2: 'CustomerInfraConfigTagValue2'

JSON

{ "Resources": { "InfrastructureConfigurationAll": { "Type": "AWS::ImageBuilder::InfrastructureConfiguration", "Properties": { "Name": "infrastructure-configuration-name", "InstanceProfileName": "instance-profile-name", "Description": "description", "InstanceTypes": [ "m4.large", "m5.large" ], "KeyPair": "key-pair", "Logging": { "S3Logs": { "S3BucketName": "imagebuilder-logging-bucket", "S3KeyPrefix": "imagebuilder-bucket-prefix" } }, "SnsTopicArn": { "Ref": "SnsTopicArn" }, "TerminateInstanceOnFailure": true, "SecurityGroupIds": [ "security-group-id-1", "security-group-id-2" ], "SubnetId": "subnet-id", "Tags": { "CustomerInfraConfigTagKey1": "CustomerInfraConfigTagValue1", "CustomerInfraConfigTagKey2": "CustomerInfraConfigTagValue2" } } } } }