Method: Aws::DirectConnect::Client#create_interconnect

Defined in:
lib/aws-sdk-directconnect/client.rb

#create_interconnect(params = {}) ⇒ Types::Interconnect

Creates an interconnect between an Direct Connect Partner’s network and a specific Direct Connect location.

An interconnect is a connection that is capable of hosting other connections. The Direct Connect Partner can use an interconnect to provide Direct Connect hosted connections to customers through their own network services. Like a standard connection, an interconnect links the partner’s network to an Direct Connect location over a standard Ethernet fiber-optic cable. One end is connected to the partner’s router, the other to an Direct Connect router.

You can automatically add the new interconnect to a link aggregation group (LAG) by specifying a LAG ID in the request. This ensures that the new interconnect is allocated on the same Direct Connect endpoint that hosts the specified LAG. If there are no available ports on the endpoint, the request fails and no interconnect is created.

For each end customer, the Direct Connect Partner provisions a connection on their interconnect by calling AllocateHostedConnection. The end customer can then connect to Amazon Web Services resources by creating a virtual interface on their connection, using the VLAN assigned to them by the Direct Connect Partner.

<note markdown=“1”> Intended for use by Direct Connect Partners only.

</note>

Examples:

Request syntax with placeholder values


resp = client.create_interconnect({
  interconnect_name: "InterconnectName", # required
  bandwidth: "Bandwidth", # required
  location: "LocationCode", # required
  lag_id: "LagId",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue",
    },
  ],
  provider_name: "ProviderName",
  request_mac_sec: false,
})

Response structure


resp.interconnect_id #=> String
resp.interconnect_name #=> String
resp.interconnect_state #=> String, one of "requested", "pending", "available", "down", "deleting", "deleted", "unknown"
resp.region #=> String
resp.location #=> String
resp.bandwidth #=> String
resp.loa_issue_time #=> Time
resp.lag_id #=> String
resp.aws_device #=> String
resp.jumbo_frame_capable #=> Boolean
resp.aws_device_v2 #=> String
resp.aws_logical_device_id #=> String
resp.has_logical_redundancy #=> String, one of "unknown", "yes", "no"
resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.provider_name #=> String
resp.mac_sec_capable #=> Boolean
resp.port_encryption_status #=> String
resp.encryption_mode #=> String
resp.mac_sec_keys #=> Array
resp.mac_sec_keys[0].secret_arn #=> String
resp.mac_sec_keys[0].ckn #=> String
resp.mac_sec_keys[0].state #=> String
resp.mac_sec_keys[0].start_on #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :interconnect_name (required, String)

    The name of the interconnect.

  • :bandwidth (required, String)

    The port bandwidth, in Gbps. The possible values are 1, 10, and 100.

  • :location (required, String)

    The location of the interconnect.

  • :lag_id (String)

    The ID of the LAG.

  • :tags (Array<Types::Tag>)

    The tags to associate with the interconnect.

  • :provider_name (String)

    The name of the service provider associated with the interconnect.

  • :request_mac_sec (Boolean)

    Indicates whether you want the interconnect to support MAC Security (MACsec).

Returns:

See Also:



2274
2275
2276
2277
# File 'lib/aws-sdk-directconnect/client.rb', line 2274

def create_interconnect(params = {}, options = {})
  req = build_request(:create_interconnect, params)
  req.send_request(options)
end