[ aws . directconnect ]

create-lag

Description

Creates a link aggregation group (LAG) with the specified number of bundled physical connections between the customer network and a specific AWS Direct Connect location. A LAG is a logical interface that uses the Link Aggregation Control Protocol (LACP) to aggregate multiple interfaces, enabling you to treat them as a single interface.

All connections in a LAG must use the same bandwidth and must terminate at the same AWS Direct Connect endpoint.

You can have up to 10 connections per LAG. Regardless of this limit, if you request more connections for the LAG than AWS Direct Connect can allocate on a single endpoint, no LAG is created.

You can specify an existing physical connection or interconnect to include in the LAG (which counts towards the total number of connections). Doing so interrupts the current physical connection or hosted connections, and re-establishes them as a member of the LAG. The LAG will be created on the same AWS Direct Connect endpoint to which the connection terminates. Any virtual interfaces associated with the connection are automatically disassociated and re-associated with the LAG. The connection ID does not change.

If the AWS account used to create a LAG is a registered AWS Direct Connect Partner, the LAG is automatically enabled to host sub-connections. For a LAG owned by a partner, any associated virtual interfaces cannot be directly configured.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-lag
--number-of-connections <value>
--location <value>
--connections-bandwidth <value>
--lag-name <value>
[--connection-id <value>]
[--tags <value>]
[--child-connection-tags <value>]
[--provider-name <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]

Options

--number-of-connections (integer)

The number of physical connections initially provisioned and bundled by the LAG.

--location (string)

The location for the LAG.

--connections-bandwidth (string)

The bandwidth of the individual physical connections bundled by the LAG. The possible values are 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps, and 10Gbps.

--lag-name (string)

The name of the LAG.

--connection-id (string)

The ID of an existing connection to migrate to the LAG.

--tags (list)

The tags to associate with the LAG.

(structure)

Information about a tag.

key -> (string)

The key.

value -> (string)

The value.

Shorthand Syntax:

key=string,value=string ...

JSON Syntax:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--child-connection-tags (list)

The tags to associate with the automtically created LAGs.

(structure)

Information about a tag.

key -> (string)

The key.

value -> (string)

The value.

Shorthand Syntax:

key=string,value=string ...

JSON Syntax:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--provider-name (string)

The name of the service provider associated with the LAG.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.

Examples

To create a LAG with new connections

The following example creates a LAG and requests two new AWS Direct Connect connections for the LAG with a bandwidth of 1 Gbps.

Command:

aws directconnect create-lag --location CSVA1 --number-of-connections 2 --connections-bandwidth 1Gbps --lag-name 1GBLag

Output:

{
  "awsDevice": "CSVA1-23u8tlpaz8iks",
  "numberOfConnections": 2,
  "lagState": "pending",
  "ownerAccount": "123456789012",
  "lagName": "1GBLag",
  "connections": [
      {
          "ownerAccount": "123456789012",
          "connectionId": "dxcon-ffqr6x5q",
          "lagId": "dxlag-ffjhj9lx",
          "connectionState": "requested",
          "bandwidth": "1Gbps",
          "location": "CSVA1",
          "connectionName": "Requested Connection 1 for Lag dxlag-ffjhj9lx",
          "region": "us-east-1"
      },
      {
          "ownerAccount": "123456789012",
          "connectionId": "dxcon-fflqyj95",
          "lagId": "dxlag-ffjhj9lx",
          "connectionState": "requested",
          "bandwidth": "1Gbps",
          "location": "CSVA1",
          "connectionName": "Requested Connection 2 for Lag dxlag-ffjhj9lx",
          "region": "us-east-1"
      }
  ],
  "lagId": "dxlag-ffjhj9lx",
  "minimumLinks": 0,
  "connectionsBandwidth": "1Gbps",
  "region": "us-east-1",
  "location": "CSVA1"
}

To create a LAG using an existing connection

The following example creates a LAG from an existing connection in your account, and requests a second new connection for the LAG with the same bandwidth and location as the existing connection.

Command:

aws directconnect create-lag --location EqDC2 --number-of-connections 2 --connections-bandwidth 1Gbps --lag-name 2ConnLAG --connection-id dxcon-fgk145dr

Output:

{
  "awsDevice": "EqDC2-4h6ce2r1bes6",
  "numberOfConnections": 2,
  "lagState": "pending",
  "ownerAccount": "123456789012",
  "lagName": "2ConnLAG",
  "connections": [
      {
          "ownerAccount": "123456789012",
          "connectionId": "dxcon-fh6ljcvo",
          "lagId": "dxlag-fhccu14t",
          "connectionState": "requested",
          "bandwidth": "1Gbps",
          "location": "EqDC2",
          "connectionName": "Requested Connection 1 for Lag dxlag-fhccu14t",
          "region": "us-east-1"
      },
      {
          "ownerAccount": "123456789012",
          "connectionId": "dxcon-fgk145dr",
          "lagId": "dxlag-fhccu14t",
          "connectionState": "down",
          "bandwidth": "1Gbps",
          "location": "EqDC2",
          "connectionName": "VAConn1",
          "region": "us-east-1"
      }
  ],
  "lagId": "dxlag-fhccu14t",
  "minimumLinks": 0,
  "connectionsBandwidth": "1Gbps",
  "region": "us-east-1",
  "location": "EqDC2"
}

Output

connectionsBandwidth -> (string)

The individual bandwidth of the physical connections bundled by the LAG. The possible values are 1Gbps and 10Gbps.

numberOfConnections -> (integer)

The number of physical connections bundled by the LAG, up to a maximum of 10.

lagId -> (string)

The ID of the LAG.

ownerAccount -> (string)

The ID of the AWS account that owns the LAG.

lagName -> (string)

The name of the LAG.

lagState -> (string)

The state of the LAG. The following are the possible values:

  • requested : The initial state of a LAG. The LAG stays in the requested state until the Letter of Authorization (LOA) is available.

  • pending : The LAG has been approved and is being initialized.

  • available : The network link is established and the LAG is ready for use.

  • down : The network link is down.

  • deleting : The LAG is being deleted.

  • deleted : The LAG is deleted.

  • unknown : The state of the LAG is not available.

location -> (string)

The location of the LAG.

region -> (string)

The AWS Region where the connection is located.

minimumLinks -> (integer)

The minimum number of physical connections that must be operational for the LAG itself to be operational.

awsDevice -> (string)

The AWS Direct Connect endpoint that hosts the LAG.

awsDeviceV2 -> (string)

The AWS Direct Connect endpoint that hosts the LAG.

connections -> (list)

The connections bundled by the LAG.

(structure)

Information about an AWS Direct Connect connection.

ownerAccount -> (string)

The ID of the AWS account that owns the connection.

connectionId -> (string)

The ID of the connection.

connectionName -> (string)

The name of the connection.

connectionState -> (string)

The state of the connection. The following are the possible values:

  • ordering : The initial state of a hosted connection provisioned on an interconnect. The connection stays in the ordering state until the owner of the hosted connection confirms or declines the connection order.

  • requested : The initial state of a standard connection. The connection stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.

  • pending : The connection has been approved and is being initialized.

  • available : The network link is up and the connection is ready for use.

  • down : The network link is down.

  • deleting : The connection is being deleted.

  • deleted : The connection has been deleted.

  • rejected : A hosted connection in the ordering state enters the rejected state if it is deleted by the customer.

  • unknown : The state of the connection is not available.

region -> (string)

The AWS Region where the connection is located.

location -> (string)

The location of the connection.

bandwidth -> (string)

The bandwidth of the connection.

vlan -> (integer)

The ID of the VLAN.

partnerName -> (string)

The name of the AWS Direct Connect service provider associated with the connection.

loaIssueTime -> (timestamp)

The time of the most recent call to DescribeLoa for this connection.

lagId -> (string)

The ID of the LAG.

awsDevice -> (string)

The Direct Connect endpoint on which the physical connection terminates.

jumboFrameCapable -> (boolean)

Indicates whether jumbo frames (9001 MTU) are supported.

awsDeviceV2 -> (string)

The Direct Connect endpoint on which the physical connection terminates.

hasLogicalRedundancy -> (string)

Indicates whether the connection supports a secondary BGP peer in the same address family (IPv4/IPv6).

tags -> (list)

The tags associated with the connection.

(structure)

Information about a tag.

key -> (string)

The key.

value -> (string)

The value.

providerName -> (string)

The name of the service provider associated with the connection.

allowsHostedConnections -> (boolean)

Indicates whether the LAG can host other connections.

jumboFrameCapable -> (boolean)

Indicates whether jumbo frames (9001 MTU) are supported.

hasLogicalRedundancy -> (string)

Indicates whether the LAG supports a secondary BGP peer in the same address family (IPv4/IPv6).

tags -> (list)

The tags associated with the LAG.

(structure)

Information about a tag.

key -> (string)

The key.

value -> (string)

The value.

providerName -> (string)

The name of the service provider associated with the LAG.