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

AWS::EC2::NetworkInterface

为 AWS CloudFormation 描述 Elastic Compute Cloud (EC2) 实例的网络接口。

语法

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

JSON

{ "Type" : "AWS::EC2::NetworkInterface", "Properties" : { "Description" : String, "GroupSet" : [ String, ... ], "InterfaceType" : String, "Ipv6AddressCount" : Integer, "Ipv6Addresses" : InstanceIpv6Address, "PrivateIpAddress" : String, "PrivateIpAddresses" : [ PrivateIpAddressSpecification, ... ], "SecondaryPrivateIpAddressCount" : Integer, "SourceDestCheck" : Boolean, "SubnetId" : String, "Tags" : [ Tag, ... ] } }

YAML

Type: AWS::EC2::NetworkInterface Properties: Description: String GroupSet: - String InterfaceType: String Ipv6AddressCount: Integer Ipv6Addresses: InstanceIpv6Address PrivateIpAddress: String PrivateIpAddresses: - PrivateIpAddressSpecification SecondaryPrivateIpAddressCount: Integer SourceDestCheck: Boolean SubnetId: String Tags: - Tag

属性

Description

网络接口描述。

必需:否

类型:字符串

Update requires: No interruption

GroupSet

此网络接口相关的安全组 ID 列表。

必需:否

类型:字符串列表

Update requires: No interruption

InterfaceType

指示网络接口的类型。要创建 Elastic Fabric Adapter (EFA),请指定 efa。有关更多信息,请参阅 Amazon Elastic Compute Cloud 用户指南中的 Elastic Fabric Adapter

必需:否

类型:字符串

允许的值efa

Update requires: Replacement

Ipv6AddressCount

要分配给网络接口的 IPv6 地址数。Amazon EC2 将自动选择子网范围内的 IPv6 地址。要指定特定的 IPv6 地址,可使用 Ipv6Addresses 属性且不要指定此属性。

必需:否

类型:整数

Update requires: No interruption

Ipv6Addresses

您的子网的 IPv6 CIDR 块范围中的要与网络接口关联的一个或多个特定 IPv6 地址。如果您正在指定大量 IPv6 地址,可使用 Ipv6AddressCount 属性且不要指定此属性。

必需:否

类型InstanceIpv6Address

Update requires: No interruption

PrivateIpAddress

将单个私有 IP 地址分配给网络接口,该地址用作主要私有 IP 地址。如果您想指定多个私有 IP 地址,请使用 PrivateIpAddresses 属性。

必需:否

类型:字符串

Update requires: Replacement

PrivateIpAddresses

将一组私有 IP 地址分配给网络接口。您可以通过在 Primary 属性中将 true 属性的值设置为 PrivateIpAddressSpecification 来指定主要私有 IP 地址。如果要让 EC2 自动分配私有 IP 地址,请使用 SecondaryPrivateIpAddressCount 属性,而不要指定该属性。

必需:否

类型PrivateIpAddressSpecification 的列表

Update requires: Some interruptions

SecondaryPrivateIpAddressCount

要分配给网络接口的辅助私有 IPv4 地址数。当您指定大量辅助 IPv4 地址时,Amazon EC2 会在子网的 IPv4 CIDR 范围内选择这些 IP 地址。您不能指定此选项,并且不能使用 privateIpAddresses 指定多个私有 IP 地址。

您可以分配给网络接口的 IP 地址的数量因实例类型而异。有关更多信息,请参阅 Amazon Virtual Private Cloud 用户指南 中的每个实例类型的每个 ENI 的 IP 地址

必需:否

类型:整数

Update requires: No interruption

SourceDestCheck

指示是否验证实例的进出流量。

必需:否

类型:布尔值

Update requires: No interruption

SubnetId

要与网络接口关联的子网的 ID。

必需:是

类型:字符串

Update requires: Replacement

Tags

此网络接口的任意标签组(键值对)。

必需:否

类型Tag 的列表

Update requires: No interruption

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 资源名称。

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

Fn::GetAtt

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

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

PrimaryPrivateIpAddress

返回网络接口的主要私有 IP 地址。例如:10.0.0.192

SecondaryPrivateIpAddresses

返回网络接口的辅助私有 IP 地址。例如:["10.0.0.161", "10.0.0.162", "10.0.0.163"]

示例

提示

有关更多 NetworkInterface 模板示例,请参阅弹性网络接口 (ENI) 模板代码段

简单的独立 ENI

这是一个使用所有可用属性的简单的独立弹性网络接口 (ENI)。

JSON

"myENI" : { "Type" : "AWS::EC2::NetworkInterface", "Properties" : { "Tags": [{"Key":"foo","Value":"bar"}], "Description": "A nice description.", "SourceDestCheck": "false", "GroupSet": ["sg-75zzz219"], "SubnetId": "subnet-3z648z53", "PrivateIpAddress": "10.0.0.16" } }

YAML

myENI: Type: AWS::EC2::NetworkInterface Properties: Tags: - Key: foo Value: bar Description: A nice description. SourceDestCheck: 'false' GroupSet: - sg-75zzz219 SubnetId: subnet-3z648z53 PrivateIpAddress: 10.0.0.16

EC2 实例上的 ENI

此为 EC2 实例上的 ENI 示例。在该示例中,会将一个 ENI 添加到该实例中。如果要添加一个以上的 ENI,则可以为 NetworkInterface 属性指定一个列表。但是,只有在所有 ENI 都仅有专用 IP 地址 (没有关联的公共 IP 地址) 的情况下,才可以指定多个 ENI。如果您有带公共 IP 地址的 ENI,请将其指定,然后使用 AWS::EC2::NetworkInterfaceAttachment 资源来添加其他 ENI。

JSON

"Ec2Instance" : { "Type" : "AWS::EC2::Instance", "Properties" : { "ImageId" : { "Fn::FindInMap" : [ "RegionMap", { "Ref" : "AWS::Region" }, "AMI" ]}, "KeyName" : { "Ref" : "KeyName" }, "SecurityGroupIds" : [{ "Ref" : "WebSecurityGroup" }], "SubnetId" : { "Ref" : "SubnetId" }, "NetworkInterfaces" : [ { "NetworkInterfaceId" : {"Ref" : "controlXface"}, "DeviceIndex" : "1" } ], "Tags" : [ {"Key" : "Role", "Value" : "Test Instance"}], "UserData" : { "Fn::Base64" : { "Ref" : "WebServerPort" }} } }

YAML

Ec2Instance: Type: AWS::EC2::Instance Properties: ImageId: Fn::FindInMap: - RegionMap - Ref: AWS::Region - AMI KeyName: Ref: KeyName SecurityGroupIds: - Ref: WebSecurityGroup SubnetId: Ref: SubnetId NetworkInterfaces: - NetworkInterfaceId: Ref: controlXface DeviceIndex: '0' Tags: - Key: Role Value: Test Instance UserData: Fn::Base64: Ref: WebServerPort

另请参阅