ConnectPeerArgs

data class ConnectPeerArgs(val bgpAsn: Output<String>? = null, val insideCidrBlocks: Output<List<String>>? = null, val peerAddress: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val transitGatewayAddress: Output<String>? = null, val transitGatewayAttachmentId: Output<String>? = null) : ConvertibleToJava<ConnectPeerArgs>

Manages an EC2 Transit Gateway Connect Peer.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.ec2transitgateway.Connect("example", {
transportAttachmentId: exampleAwsEc2TransitGatewayVpcAttachment.id,
transitGatewayId: exampleAwsEc2TransitGateway.id,
});
const exampleConnectPeer = new aws.ec2transitgateway.ConnectPeer("example", {
peerAddress: "10.1.2.3",
insideCidrBlocks: ["169&#46;254&#46;100&#46;0/29"],
transitGatewayAttachmentId: example.id,
});
import pulumi
import pulumi_aws as aws
example = aws.ec2transitgateway.Connect("example",
transport_attachment_id=example_aws_ec2_transit_gateway_vpc_attachment["id"],
transit_gateway_id=example_aws_ec2_transit_gateway["id"])
example_connect_peer = aws.ec2transitgateway.ConnectPeer("example",
peer_address="10.1.2.3",
inside_cidr_blocks=["169&#46;254&#46;100&#46;0/29"],
transit_gateway_attachment_id=example.id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Ec2TransitGateway.Connect("example", new()
{
TransportAttachmentId = exampleAwsEc2TransitGatewayVpcAttachment.Id,
TransitGatewayId = exampleAwsEc2TransitGateway.Id,
});
var exampleConnectPeer = new Aws.Ec2TransitGateway.ConnectPeer("example", new()
{
PeerAddress = "10.1.2.3",
InsideCidrBlocks = new[]
{
"169.254.100.0/29",
},
TransitGatewayAttachmentId = example.Id,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := ec2transitgateway.NewConnect(ctx, "example", &ec2transitgateway.ConnectArgs{
TransportAttachmentId: pulumi.Any(exampleAwsEc2TransitGatewayVpcAttachment.Id),
TransitGatewayId: pulumi.Any(exampleAwsEc2TransitGateway.Id),
})
if err != nil {
return err
}
_, err = ec2transitgateway.NewConnectPeer(ctx, "example", &ec2transitgateway.ConnectPeerArgs{
PeerAddress: pulumi.String("10.1.2.3"),
InsideCidrBlocks: pulumi.StringArray{
pulumi.String("169.254.100.0/29"),
},
TransitGatewayAttachmentId: example.ID(),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2transitgateway.Connect;
import com.pulumi.aws.ec2transitgateway.ConnectArgs;
import com.pulumi.aws.ec2transitgateway.ConnectPeer;
import com.pulumi.aws.ec2transitgateway.ConnectPeerArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Connect("example", ConnectArgs.builder()
.transportAttachmentId(exampleAwsEc2TransitGatewayVpcAttachment.id())
.transitGatewayId(exampleAwsEc2TransitGateway.id())
.build());
var exampleConnectPeer = new ConnectPeer("exampleConnectPeer", ConnectPeerArgs.builder()
.peerAddress("10.1.2.3")
.insideCidrBlocks("169.254.100.0/29")
.transitGatewayAttachmentId(example.id())
.build());
}
}
resources:
example:
type: aws:ec2transitgateway:Connect
properties:
transportAttachmentId: ${exampleAwsEc2TransitGatewayVpcAttachment.id}
transitGatewayId: ${exampleAwsEc2TransitGateway.id}
exampleConnectPeer:
type: aws:ec2transitgateway:ConnectPeer
name: example
properties:
peerAddress: 10.1.2.3
insideCidrBlocks:
- 169.254.100.0/29
transitGatewayAttachmentId: ${example.id}

Import

Using pulumi import, import aws_ec2_transit_gateway_connect_peer using the EC2 Transit Gateway Connect Peer identifier. For example:

$ pulumi import aws:ec2transitgateway/connectPeer:ConnectPeer example tgw-connect-peer-12345678

Constructors

Link copied to clipboard
constructor(bgpAsn: Output<String>? = null, insideCidrBlocks: Output<List<String>>? = null, peerAddress: Output<String>? = null, tags: Output<Map<String, String>>? = null, transitGatewayAddress: Output<String>? = null, transitGatewayAttachmentId: Output<String>? = null)

Properties

Link copied to clipboard
val bgpAsn: Output<String>? = null

The BGP ASN number assigned customer device. If not provided, it will use the same BGP ASN as is associated with Transit Gateway.

Link copied to clipboard
val insideCidrBlocks: Output<List<String>>? = null

The CIDR block that will be used for addressing within the tunnel. It must contain exactly one IPv4 CIDR block and up to one IPv6 CIDR block. The IPv4 CIDR block must be /29 size and must be within 169.254.0.0/16 range, with exception of: 169.254.0.0/29, 169.254.1.0/29, 169.254.2.0/29, 169.254.3.0/29, 169.254.4.0/29, 169.254.5.0/29, 169.254.169.248/29. The IPv6 CIDR block must be /125 size and must be within fd00::/8. The first IP from each CIDR block is assigned for customer gateway, the second and third is for Transit Gateway (An example: from range 169.254.100.0/29, .1 is assigned to customer gateway and .2 and .3 are assigned to Transit Gateway)

Link copied to clipboard
val peerAddress: Output<String>? = null

The IP addressed assigned to customer device, which will be used as tunnel endpoint. It can be IPv4 or IPv6 address, but must be the same address family as transit_gateway_address

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Key-value tags for the EC2 Transit Gateway Connect Peer. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val transitGatewayAddress: Output<String>? = null

The IP address assigned to Transit Gateway, which will be used as tunnel endpoint. This address must be from associated Transit Gateway CIDR block. The address must be from the same address family as peer_address. If not set explicitly, it will be selected from associated Transit Gateway CIDR blocks

Link copied to clipboard
val transitGatewayAttachmentId: Output<String>? = null

The Transit Gateway Connect

Functions

Link copied to clipboard
open override fun toJava(): ConnectPeerArgs