ALIYUN::ECS::NetworkInterface類型用于創建一個彈性網卡(ENI)。
語法
{
"Type": "ALIYUN::ECS::NetworkInterface",
"Properties": {
"Description": String,
"SecurityGroupId": String,
"PrimaryIpAddress": String,
"ResourceGroupId": String,
"VSwitchId": String,
"NetworkInterfaceName": String,
"Tags": List,
"SecurityGroupIds": List,
"PrivateIpAddresses": List,
"SecondaryPrivateIpAddressCount": Integer,
"Ipv6Addresses": List,
"QueueNumber": Integer,
"NetworkInterfaceTrafficMode": String,
"Ipv6AddressCount": Integer,
"Ipv6Prefixes": List,
"Ipv4Prefixes": List,
"Ipv4PrefixCount": Integer,
"TxQueueSize": Integer,
"DeleteOnRelease": Boolean,
"Ipv6PrefixCount": Integer,
"RxQueueSize": Integer
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ResourceGroupId | String | 否 | 是 | 資源組ID。 | 您可以調用ListResourceGroups查詢資源組ID。 |
SecurityGroupId | String | 否 | 是 | 安全組ID。 | 安全組和彈性網卡必須在同一個專有網絡中。 說明 不支持同時指定SecurityGroupId和SecurityGroupIds。 |
VSwitchId | String | 是 | 否 | 交換機ID。 | 無 |
Description | String | 否 | 是 | 彈性網卡的描述信息。 | 長度為2~256個字符,不能以 |
NetworkInterfaceName | String | 否 | 是 | 彈性網卡的名稱。 | 長度為2~128個字符。必須以英文字母或漢字開頭,不能以 |
PrimaryIpAddress | String | 否 | 否 | 彈性網卡的主私有IP地址。 | 指定IP地址必須是所屬交換機地址段內的空閑地址,不指定則默認隨機分配該交換機中的空閑地址。 |
SecondaryPrivateIpAddressCount | Integer | 否 | 否 | 輔助私有IP地址數量。 | 無 |
Tags | List | 否 | 是 | 標簽。 | 最多支持添加20個標簽。 更多信息,請參見Tags屬性。 |
SecurityGroupIds | List | 否 | 是 | 一個或多個安全組ID。 | 安全組和彈性網卡必須在同一個專有網絡中。 說明 不支持同時指定SecurityGroupId和SecurityGroupIds。 |
PrivateIpAddresses | List | 否 | 否 | 從彈性網卡所屬交換機的空閑IP地址中選擇一個或多個輔助私有IP地址。 | 可以綁定的IP地址數量的取值范圍:
|
Ipv6Addresses | List | 否 | 否 | 為彈性網卡指定一個或多個IPv6地址。 | 支持設置最多10個IPv6地址。 說明 如果您需要為彈性網卡設置IPv6地址,則必須設置 |
QueueNumber | Integer | 否 | 否 | 彈性網卡隊列數。 | 取值范圍:1~2048 附加彈性網卡時,該值必須少于實例規格支持單塊網卡的最大隊列數。實例規格的單塊網卡最大隊列數可以通過DescribeInstanceTypes接口查詢 默認值:空。在附加時會采用實例規格的彈性網卡默認隊列數,實例規格的彈性網卡默認隊列數可以通過DescribeInstanceTypes接口查詢 |
NetworkInterfaceTrafficMode | String | 否 | 否 | 彈性網卡的通訊模式。 | 取值:
|
Ipv6AddressCount | Integer | 否 | 否 | 為彈性網卡指定隨機生成的IPv6地址數量。 | 取值范圍:1~10。 說明 如果您需要為彈性網卡設置IPv6地址,則必須設置 |
Ipv6Prefixes | List | 否 | 否 | IPv6地址前綴。 | 無 |
Ipv4Prefixes | List | 否 | 否 | IPv4 IP地址前綴。 | 無 |
Ipv4PrefixCount | Integer | 否 | 否 | 為彈性網卡指定一個或多個IPv4前綴。 | 取值范圍:1~10。 說明 如果您需要為彈性網卡設置 IPv4 前綴,則必須設置 Ipv4Prefixes 或者 Ipv4PrefixCount 的其中一個,但不能同時設置這兩個參數。 |
TxQueueSize | Integer | 否 | 是 | 彈性網卡出方向隊列深度。 | 您需要注意:
|
DeleteOnRelease | Boolean | 否 | 是 | 釋放實例時是否保留網卡。 | 取值范圍:
|
Ipv6PrefixCount | Integer | 否 | 否 | 為彈性網卡指定一個或多個 IPv6 前綴。 | 取值范圍:1~10。 說明 如果您需要為彈性網卡設置IPv6前綴,則必須設置Ipv6Prefixes或者Ipv6PrefixCount的其中一個,但不能同時設置這兩個參數。 |
RxQueueSize | Integer | 否 | 是 | 彈性網卡入方向隊列深度。 | 您需要注意:
|
Tags語法
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標簽鍵。 | 長度為1~128個字符,不能以 |
Value | String | 否 | 否 | 標簽值。 | 長度為0~128個字符,不能以 |
返回值
Fn::GetAtt
NetworkInterfaceId:彈性網卡ID。
MacAddress:彈性網卡的MAC地址。
PrivateIpAddress:彈性網卡的私有IP地址。
SecondaryPrivateIpAddresses:彈性網卡的輔助私有IP地址。
示例
YAML
格式
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
Label:
zh-cn: 安全組ID
en: Security Group ID
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
Type: String
Label:
zh-cn: 網絡交換機ID
en: VSwitch ID
Resources:
EniInstance:
Type: ALIYUN::ECS::NetworkInterface
Properties:
SecurityGroupId:
Ref: SecurityGroupId
VSwitchId:
Ref: VSwitchId
NetworkInterfaceName: TestNetworkInterface
Outputs:
PrivateIpAddress:
Description: The primary private ip address of your Network Interface.
Value:
Fn::GetAtt:
- EniInstance
- PrivateIpAddress
SecondaryPrivateIpAddresses:
Description: The secondary private IP addresses of your Network Interface.
Value:
Fn::GetAtt:
- EniInstance
- SecondaryPrivateIpAddresses
MacAddress:
Description: The MAC address of your Network Interface.
Value:
Fn::GetAtt:
- EniInstance
- MacAddress
NetworkInterfaceId:
Description: ID of your Network Interface.
Value:
Fn::GetAtt:
- EniInstance
- NetworkInterfaceId
JSON
格式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"Label": {
"zh-cn": "安全組ID",
"en": "Security Group ID"
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"Type": "String",
"Label": {
"zh-cn": "網絡交換機ID",
"en": "VSwitch ID"
}
}
},
"Resources": {
"EniInstance": {
"Type": "ALIYUN::ECS::NetworkInterface",
"Properties": {
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"NetworkInterfaceName": "TestNetworkInterface"
}
}
},
"Outputs": {
"PrivateIpAddress": {
"Description": "The primary private ip address of your Network Interface.",
"Value": {
"Fn::GetAtt": [
"EniInstance",
"PrivateIpAddress"
]
}
},
"SecondaryPrivateIpAddresses": {
"Description": "The secondary private IP addresses of your Network Interface.",
"Value": {
"Fn::GetAtt": [
"EniInstance",
"SecondaryPrivateIpAddresses"
]
}
},
"MacAddress": {
"Description": "The MAC address of your Network Interface.",
"Value": {
"Fn::GetAtt": [
"EniInstance",
"MacAddress"
]
}
},
"NetworkInterfaceId": {
"Description": "ID of your Network Interface.",
"Value": {
"Fn::GetAtt": [
"EniInstance",
"NetworkInterfaceId"
]
}
}
}
}