ALIYUN::ECS::NetworkInterfaceAttachment is used to bind an elastic network interface (ENI) to an Elastic Compute Service (ECS) instance in a virtual private cloud (VPC).

Syntax

{
  "Type": "ALIYUN::ECS::NetworkInterfaceAttachment",
  "Properties": {
    "InstanceId": String,
    "NetworkInterfaceId": String,
    "TrunkNetworkInstanceId": String
  }
}

Properties

Property Type Required Editable Description Constraint
InstanceId String Yes No The ID of the instance. None
NetworkInterfaceId String Yes No The ID of the ENI. None
TrunkNetworkInstanceId String No No The ID of the trunk network interface. None

Return values

Fn::GetAtt

  • NetworkInterfaceId: the ID of the ENI.
  • TrunkNetworkInstanceId: the ID of the trunk network interface.
  • InstanceId: the ID of the instance.

Examples

  • YAML format

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      InstanceId:
        Type: String
        Description: ECS instance id
      TrunkNetworkInstanceId:
        Type: String
      NetworkInterfaceId:
        Type: String
        Description: Network interface id
    Resources:
      EniAttachment:
        Type: 'ALIYUN::ECS::NetworkInterfaceAttachment'
        Properties:
          InstanceId:
            Ref: InstanceId
          TrunkNetworkInstanceId:
            Ref: TrunkNetworkInstanceId
          NetworkInterfaceId:
            Ref: NetworkInterfaceId
    Outputs:
      TrunkNetworkInstanceId:
        Description: ID of Trunk Network Interface.
        Value:
          'Fn::GetAtt':
            - EniAttachment
            - TrunkNetworkInstanceId
      NetworkInterfaceId:
        Description: ID of your Network Interface.
        Value:
          'Fn::GetAtt':
            - EniAttachment
            - NetworkInterfaceId
  • JSON format

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "InstanceId": {
          "Type": "String",
          "Description": "ECS instance id"
        },
        "TrunkNetworkInstanceId": {
          "Type": "String"
        },
        "NetworkInterfaceId": {
          "Type": "String",
          "Description": "Network interface id"
        }
      },
      "Resources": {
        "EniAttachment": {
          "Type": "ALIYUN::ECS::NetworkInterfaceAttachment",
          "Properties": {
            "InstanceId": {
              "Ref": "InstanceId"
            },
            "TrunkNetworkInstanceId": {
              "Ref": "TrunkNetworkInstanceId"
            },
            "NetworkInterfaceId": {
              "Ref": "NetworkInterfaceId"
            }
          }
        }
      },
      "Outputs": {
        "TrunkNetworkInstanceId": {
          "Description": "ID of Trunk Network Interface.",
          "Value": {
            "Fn::GetAtt": [
              "EniAttachment",
              "TrunkNetworkInstanceId"
            ]
          }
        },
        "NetworkInterfaceId": {
          "Description": "ID of your Network Interface.",
          "Value": {
            "Fn::GetAtt": [
              "EniAttachment",
              "NetworkInterfaceId"
            ]
          }
        }
      }
    }

To view more examples, visit NetworkInterfaceAttachment.json and NetworkInterfaceAttachment.yml. In the examples, the ALIYUN::ECS::NetworkInterface, ALIYUN::ECS::NetworkInterfaceAttachment, and ALIYUN::ECS::NetworkInterfacePermission resource types are used.