nat

package
v0.1.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 26, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.5

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type Gateway

type Gateway struct {
	pulumi.CustomResourceState

	// EIP IP address set bound to the gateway. The value of at least 1 and at most 10.
	AssignedEipSets pulumi.StringArrayOutput `pulumi:"assignedEipSets"`
	// The maximum public network output bandwidth of NAT gateway (unit: Mbps). Valid values: `20`, `50`, `100`, `200`, `500`, `1000`, `2000`, `5000`. Default is 100.
	Bandwidth pulumi.IntPtrOutput `pulumi:"bandwidth"`
	// Create time of the NAT gateway.
	CreatedTime pulumi.StringOutput `pulumi:"createdTime"`
	// The upper limit of concurrent connection of NAT gateway. Valid values: `1000000`, `3000000`, `10000000`. Default is `1000000`.
	MaxConcurrent pulumi.IntPtrOutput `pulumi:"maxConcurrent"`
	// Name of the NAT gateway.
	Name pulumi.StringOutput `pulumi:"name"`
	// 1: traditional NAT, 2: standard NAT, default value is 1.
	NatProductVersion pulumi.IntOutput `pulumi:"natProductVersion"`
	// Subnet of NAT.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// The available tags within this NAT gateway.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// ID of the vpc.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The availability zone, such as `ap-guangzhou-3`.
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Provides a resource to create a NAT gateway.

## Example Usage ### Create a traditional NAT gateway.

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Eip"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := Vpc.NewInstance(ctx, "vpc", &Vpc.InstanceArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		eipExample1, err := Eip.NewInstance(ctx, "eipExample1", nil)
		if err != nil {
			return err
		}
		eipExample2, err := Eip.NewInstance(ctx, "eipExample2", nil)
		if err != nil {
			return err
		}
		_, err = Nat.NewGateway(ctx, "example", &Nat.GatewayArgs{
			VpcId:         vpc.ID(),
			Bandwidth:     pulumi.Int(100),
			MaxConcurrent: pulumi.Int(1000000),
			AssignedEipSets: pulumi.StringArray{
				eipExample1.PublicIp,
				eipExample2.PublicIp,
			},
			Tags: pulumi.AnyMap{
				"tf_tag_key": pulumi.Any("tf_tag_value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create a standard NAT gateway.

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Eip"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := Vpc.NewInstance(ctx, "vpc", &Vpc.InstanceArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		eipExample1, err := Eip.NewInstance(ctx, "eipExample1", nil)
		if err != nil {
			return err
		}
		eipExample2, err := Eip.NewInstance(ctx, "eipExample2", nil)
		if err != nil {
			return err
		}
		_, err = Nat.NewGateway(ctx, "example", &Nat.GatewayArgs{
			VpcId: vpc.ID(),
			AssignedEipSets: pulumi.StringArray{
				eipExample1.PublicIp,
				eipExample2.PublicIp,
			},
			NatProductVersion: pulumi.Int(2),
			Tags: pulumi.AnyMap{
				"tf_tag_key": pulumi.Any("tf_tag_value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

NAT gateway can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Nat/gateway:Gateway foo nat-1asg3t63

```

func GetGateway

func GetGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GatewayState, opts ...pulumi.ResourceOption) (*Gateway, error)

GetGateway gets an existing Gateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGateway

func NewGateway(ctx *pulumi.Context,
	name string, args *GatewayArgs, opts ...pulumi.ResourceOption) (*Gateway, error)

NewGateway registers a new resource with the given unique name, arguments, and options.

func (*Gateway) ElementType

func (*Gateway) ElementType() reflect.Type

func (*Gateway) ToGatewayOutput

func (i *Gateway) ToGatewayOutput() GatewayOutput

func (*Gateway) ToGatewayOutputWithContext

func (i *Gateway) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

type GatewayArgs

type GatewayArgs struct {
	// EIP IP address set bound to the gateway. The value of at least 1 and at most 10.
	AssignedEipSets pulumi.StringArrayInput
	// The maximum public network output bandwidth of NAT gateway (unit: Mbps). Valid values: `20`, `50`, `100`, `200`, `500`, `1000`, `2000`, `5000`. Default is 100.
	Bandwidth pulumi.IntPtrInput
	// The upper limit of concurrent connection of NAT gateway. Valid values: `1000000`, `3000000`, `10000000`. Default is `1000000`.
	MaxConcurrent pulumi.IntPtrInput
	// Name of the NAT gateway.
	Name pulumi.StringPtrInput
	// 1: traditional NAT, 2: standard NAT, default value is 1.
	NatProductVersion pulumi.IntPtrInput
	// Subnet of NAT.
	SubnetId pulumi.StringPtrInput
	// The available tags within this NAT gateway.
	Tags pulumi.MapInput
	// ID of the vpc.
	VpcId pulumi.StringInput
	// The availability zone, such as `ap-guangzhou-3`.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a Gateway resource.

func (GatewayArgs) ElementType

func (GatewayArgs) ElementType() reflect.Type

type GatewayArray

type GatewayArray []GatewayInput

func (GatewayArray) ElementType

func (GatewayArray) ElementType() reflect.Type

func (GatewayArray) ToGatewayArrayOutput

func (i GatewayArray) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArray) ToGatewayArrayOutputWithContext

func (i GatewayArray) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayArrayInput

type GatewayArrayInput interface {
	pulumi.Input

	ToGatewayArrayOutput() GatewayArrayOutput
	ToGatewayArrayOutputWithContext(context.Context) GatewayArrayOutput
}

GatewayArrayInput is an input type that accepts GatewayArray and GatewayArrayOutput values. You can construct a concrete instance of `GatewayArrayInput` via:

GatewayArray{ GatewayArgs{...} }

type GatewayArrayOutput

type GatewayArrayOutput struct{ *pulumi.OutputState }

func (GatewayArrayOutput) ElementType

func (GatewayArrayOutput) ElementType() reflect.Type

func (GatewayArrayOutput) Index

func (GatewayArrayOutput) ToGatewayArrayOutput

func (o GatewayArrayOutput) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArrayOutput) ToGatewayArrayOutputWithContext

func (o GatewayArrayOutput) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayInput

type GatewayInput interface {
	pulumi.Input

	ToGatewayOutput() GatewayOutput
	ToGatewayOutputWithContext(ctx context.Context) GatewayOutput
}

type GatewayMap

type GatewayMap map[string]GatewayInput

func (GatewayMap) ElementType

func (GatewayMap) ElementType() reflect.Type

func (GatewayMap) ToGatewayMapOutput

func (i GatewayMap) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMap) ToGatewayMapOutputWithContext

func (i GatewayMap) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayMapInput

type GatewayMapInput interface {
	pulumi.Input

	ToGatewayMapOutput() GatewayMapOutput
	ToGatewayMapOutputWithContext(context.Context) GatewayMapOutput
}

GatewayMapInput is an input type that accepts GatewayMap and GatewayMapOutput values. You can construct a concrete instance of `GatewayMapInput` via:

GatewayMap{ "key": GatewayArgs{...} }

type GatewayMapOutput

type GatewayMapOutput struct{ *pulumi.OutputState }

func (GatewayMapOutput) ElementType

func (GatewayMapOutput) ElementType() reflect.Type

func (GatewayMapOutput) MapIndex

func (GatewayMapOutput) ToGatewayMapOutput

func (o GatewayMapOutput) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMapOutput) ToGatewayMapOutputWithContext

func (o GatewayMapOutput) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayOutput

type GatewayOutput struct{ *pulumi.OutputState }

func (GatewayOutput) AssignedEipSets

func (o GatewayOutput) AssignedEipSets() pulumi.StringArrayOutput

EIP IP address set bound to the gateway. The value of at least 1 and at most 10.

func (GatewayOutput) Bandwidth

func (o GatewayOutput) Bandwidth() pulumi.IntPtrOutput

The maximum public network output bandwidth of NAT gateway (unit: Mbps). Valid values: `20`, `50`, `100`, `200`, `500`, `1000`, `2000`, `5000`. Default is 100.

func (GatewayOutput) CreatedTime

func (o GatewayOutput) CreatedTime() pulumi.StringOutput

Create time of the NAT gateway.

func (GatewayOutput) ElementType

func (GatewayOutput) ElementType() reflect.Type

func (GatewayOutput) MaxConcurrent

func (o GatewayOutput) MaxConcurrent() pulumi.IntPtrOutput

The upper limit of concurrent connection of NAT gateway. Valid values: `1000000`, `3000000`, `10000000`. Default is `1000000`.

func (GatewayOutput) Name

Name of the NAT gateway.

func (GatewayOutput) NatProductVersion added in v0.1.8

func (o GatewayOutput) NatProductVersion() pulumi.IntOutput

1: traditional NAT, 2: standard NAT, default value is 1.

func (GatewayOutput) SubnetId added in v0.1.8

func (o GatewayOutput) SubnetId() pulumi.StringOutput

Subnet of NAT.

func (GatewayOutput) Tags

func (o GatewayOutput) Tags() pulumi.MapOutput

The available tags within this NAT gateway.

func (GatewayOutput) ToGatewayOutput

func (o GatewayOutput) ToGatewayOutput() GatewayOutput

func (GatewayOutput) ToGatewayOutputWithContext

func (o GatewayOutput) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

func (GatewayOutput) VpcId

func (o GatewayOutput) VpcId() pulumi.StringOutput

ID of the vpc.

func (GatewayOutput) Zone added in v0.1.5

The availability zone, such as `ap-guangzhou-3`.

type GatewaySnat

type GatewaySnat struct {
	pulumi.CustomResourceState

	// Create time.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Description.
	Description pulumi.StringOutput `pulumi:"description"`
	// Instance ID, required when `resourceType` is NETWORKINTERFACE.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Private IPs of the instance's primary ENI, required when `resourceType` is NETWORKINTERFACE.
	InstancePrivateIpAddr pulumi.StringPtrOutput `pulumi:"instancePrivateIpAddr"`
	// NAT gateway ID.
	NatGatewayId pulumi.StringOutput `pulumi:"natGatewayId"`
	// Elastic IP address pool.
	PublicIpAddrs pulumi.StringArrayOutput `pulumi:"publicIpAddrs"`
	// Resource type. Valid values: SUBNET, NETWORKINTERFACE.
	ResourceType pulumi.StringOutput `pulumi:"resourceType"`
	// SNAT rule ID.
	SnatId pulumi.StringOutput `pulumi:"snatId"`
	// The IPv4 CIDR of the subnet, required when `resourceType` is SUBNET.
	SubnetCidrBlock pulumi.StringPtrOutput `pulumi:"subnetCidrBlock"`
	// Subnet instance ID, required when `resourceType` is SUBNET.
	SubnetId pulumi.StringPtrOutput `pulumi:"subnetId"`
}

Provides a resource to create a NAT Gateway SNat rule.

## Import

VPN gateway route can be imported using the id, the id format must be '{nat_gateway_id}#{resource_id}', resource_id range `subnet_id`, `instance_id`, e.g. SUBNET SNat

```sh

$ pulumi import tencentcloud:Nat/gatewaySnat:GatewaySnat my_snat nat-r4ip1cwt#subnet-2ap74y35

```

NETWORKINTERFACT SNat

```sh

$ pulumi import tencentcloud:Nat/gatewaySnat:GatewaySnat my_snat nat-r4ip1cwt#ins-da412f5a

```

func GetGatewaySnat

func GetGatewaySnat(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GatewaySnatState, opts ...pulumi.ResourceOption) (*GatewaySnat, error)

GetGatewaySnat gets an existing GatewaySnat resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGatewaySnat

func NewGatewaySnat(ctx *pulumi.Context,
	name string, args *GatewaySnatArgs, opts ...pulumi.ResourceOption) (*GatewaySnat, error)

NewGatewaySnat registers a new resource with the given unique name, arguments, and options.

func (*GatewaySnat) ElementType

func (*GatewaySnat) ElementType() reflect.Type

func (*GatewaySnat) ToGatewaySnatOutput

func (i *GatewaySnat) ToGatewaySnatOutput() GatewaySnatOutput

func (*GatewaySnat) ToGatewaySnatOutputWithContext

func (i *GatewaySnat) ToGatewaySnatOutputWithContext(ctx context.Context) GatewaySnatOutput

type GatewaySnatArgs

type GatewaySnatArgs struct {
	// Description.
	Description pulumi.StringInput
	// Instance ID, required when `resourceType` is NETWORKINTERFACE.
	InstanceId pulumi.StringPtrInput
	// Private IPs of the instance's primary ENI, required when `resourceType` is NETWORKINTERFACE.
	InstancePrivateIpAddr pulumi.StringPtrInput
	// NAT gateway ID.
	NatGatewayId pulumi.StringInput
	// Elastic IP address pool.
	PublicIpAddrs pulumi.StringArrayInput
	// Resource type. Valid values: SUBNET, NETWORKINTERFACE.
	ResourceType pulumi.StringInput
	// The IPv4 CIDR of the subnet, required when `resourceType` is SUBNET.
	SubnetCidrBlock pulumi.StringPtrInput
	// Subnet instance ID, required when `resourceType` is SUBNET.
	SubnetId pulumi.StringPtrInput
}

The set of arguments for constructing a GatewaySnat resource.

func (GatewaySnatArgs) ElementType

func (GatewaySnatArgs) ElementType() reflect.Type

type GatewaySnatArray

type GatewaySnatArray []GatewaySnatInput

func (GatewaySnatArray) ElementType

func (GatewaySnatArray) ElementType() reflect.Type

func (GatewaySnatArray) ToGatewaySnatArrayOutput

func (i GatewaySnatArray) ToGatewaySnatArrayOutput() GatewaySnatArrayOutput

func (GatewaySnatArray) ToGatewaySnatArrayOutputWithContext

func (i GatewaySnatArray) ToGatewaySnatArrayOutputWithContext(ctx context.Context) GatewaySnatArrayOutput

type GatewaySnatArrayInput

type GatewaySnatArrayInput interface {
	pulumi.Input

	ToGatewaySnatArrayOutput() GatewaySnatArrayOutput
	ToGatewaySnatArrayOutputWithContext(context.Context) GatewaySnatArrayOutput
}

GatewaySnatArrayInput is an input type that accepts GatewaySnatArray and GatewaySnatArrayOutput values. You can construct a concrete instance of `GatewaySnatArrayInput` via:

GatewaySnatArray{ GatewaySnatArgs{...} }

type GatewaySnatArrayOutput

type GatewaySnatArrayOutput struct{ *pulumi.OutputState }

func (GatewaySnatArrayOutput) ElementType

func (GatewaySnatArrayOutput) ElementType() reflect.Type

func (GatewaySnatArrayOutput) Index

func (GatewaySnatArrayOutput) ToGatewaySnatArrayOutput

func (o GatewaySnatArrayOutput) ToGatewaySnatArrayOutput() GatewaySnatArrayOutput

func (GatewaySnatArrayOutput) ToGatewaySnatArrayOutputWithContext

func (o GatewaySnatArrayOutput) ToGatewaySnatArrayOutputWithContext(ctx context.Context) GatewaySnatArrayOutput

type GatewaySnatInput

type GatewaySnatInput interface {
	pulumi.Input

	ToGatewaySnatOutput() GatewaySnatOutput
	ToGatewaySnatOutputWithContext(ctx context.Context) GatewaySnatOutput
}

type GatewaySnatMap

type GatewaySnatMap map[string]GatewaySnatInput

func (GatewaySnatMap) ElementType

func (GatewaySnatMap) ElementType() reflect.Type

func (GatewaySnatMap) ToGatewaySnatMapOutput

func (i GatewaySnatMap) ToGatewaySnatMapOutput() GatewaySnatMapOutput

func (GatewaySnatMap) ToGatewaySnatMapOutputWithContext

func (i GatewaySnatMap) ToGatewaySnatMapOutputWithContext(ctx context.Context) GatewaySnatMapOutput

type GatewaySnatMapInput

type GatewaySnatMapInput interface {
	pulumi.Input

	ToGatewaySnatMapOutput() GatewaySnatMapOutput
	ToGatewaySnatMapOutputWithContext(context.Context) GatewaySnatMapOutput
}

GatewaySnatMapInput is an input type that accepts GatewaySnatMap and GatewaySnatMapOutput values. You can construct a concrete instance of `GatewaySnatMapInput` via:

GatewaySnatMap{ "key": GatewaySnatArgs{...} }

type GatewaySnatMapOutput

type GatewaySnatMapOutput struct{ *pulumi.OutputState }

func (GatewaySnatMapOutput) ElementType

func (GatewaySnatMapOutput) ElementType() reflect.Type

func (GatewaySnatMapOutput) MapIndex

func (GatewaySnatMapOutput) ToGatewaySnatMapOutput

func (o GatewaySnatMapOutput) ToGatewaySnatMapOutput() GatewaySnatMapOutput

func (GatewaySnatMapOutput) ToGatewaySnatMapOutputWithContext

func (o GatewaySnatMapOutput) ToGatewaySnatMapOutputWithContext(ctx context.Context) GatewaySnatMapOutput

type GatewaySnatOutput

type GatewaySnatOutput struct{ *pulumi.OutputState }

func (GatewaySnatOutput) CreateTime

func (o GatewaySnatOutput) CreateTime() pulumi.StringOutput

Create time.

func (GatewaySnatOutput) Description

func (o GatewaySnatOutput) Description() pulumi.StringOutput

Description.

func (GatewaySnatOutput) ElementType

func (GatewaySnatOutput) ElementType() reflect.Type

func (GatewaySnatOutput) InstanceId

func (o GatewaySnatOutput) InstanceId() pulumi.StringPtrOutput

Instance ID, required when `resourceType` is NETWORKINTERFACE.

func (GatewaySnatOutput) InstancePrivateIpAddr

func (o GatewaySnatOutput) InstancePrivateIpAddr() pulumi.StringPtrOutput

Private IPs of the instance's primary ENI, required when `resourceType` is NETWORKINTERFACE.

func (GatewaySnatOutput) NatGatewayId

func (o GatewaySnatOutput) NatGatewayId() pulumi.StringOutput

NAT gateway ID.

func (GatewaySnatOutput) PublicIpAddrs

func (o GatewaySnatOutput) PublicIpAddrs() pulumi.StringArrayOutput

Elastic IP address pool.

func (GatewaySnatOutput) ResourceType

func (o GatewaySnatOutput) ResourceType() pulumi.StringOutput

Resource type. Valid values: SUBNET, NETWORKINTERFACE.

func (GatewaySnatOutput) SnatId

SNAT rule ID.

func (GatewaySnatOutput) SubnetCidrBlock

func (o GatewaySnatOutput) SubnetCidrBlock() pulumi.StringPtrOutput

The IPv4 CIDR of the subnet, required when `resourceType` is SUBNET.

func (GatewaySnatOutput) SubnetId

Subnet instance ID, required when `resourceType` is SUBNET.

func (GatewaySnatOutput) ToGatewaySnatOutput

func (o GatewaySnatOutput) ToGatewaySnatOutput() GatewaySnatOutput

func (GatewaySnatOutput) ToGatewaySnatOutputWithContext

func (o GatewaySnatOutput) ToGatewaySnatOutputWithContext(ctx context.Context) GatewaySnatOutput

type GatewaySnatState

type GatewaySnatState struct {
	// Create time.
	CreateTime pulumi.StringPtrInput
	// Description.
	Description pulumi.StringPtrInput
	// Instance ID, required when `resourceType` is NETWORKINTERFACE.
	InstanceId pulumi.StringPtrInput
	// Private IPs of the instance's primary ENI, required when `resourceType` is NETWORKINTERFACE.
	InstancePrivateIpAddr pulumi.StringPtrInput
	// NAT gateway ID.
	NatGatewayId pulumi.StringPtrInput
	// Elastic IP address pool.
	PublicIpAddrs pulumi.StringArrayInput
	// Resource type. Valid values: SUBNET, NETWORKINTERFACE.
	ResourceType pulumi.StringPtrInput
	// SNAT rule ID.
	SnatId pulumi.StringPtrInput
	// The IPv4 CIDR of the subnet, required when `resourceType` is SUBNET.
	SubnetCidrBlock pulumi.StringPtrInput
	// Subnet instance ID, required when `resourceType` is SUBNET.
	SubnetId pulumi.StringPtrInput
}

func (GatewaySnatState) ElementType

func (GatewaySnatState) ElementType() reflect.Type

type GatewayState

type GatewayState struct {
	// EIP IP address set bound to the gateway. The value of at least 1 and at most 10.
	AssignedEipSets pulumi.StringArrayInput
	// The maximum public network output bandwidth of NAT gateway (unit: Mbps). Valid values: `20`, `50`, `100`, `200`, `500`, `1000`, `2000`, `5000`. Default is 100.
	Bandwidth pulumi.IntPtrInput
	// Create time of the NAT gateway.
	CreatedTime pulumi.StringPtrInput
	// The upper limit of concurrent connection of NAT gateway. Valid values: `1000000`, `3000000`, `10000000`. Default is `1000000`.
	MaxConcurrent pulumi.IntPtrInput
	// Name of the NAT gateway.
	Name pulumi.StringPtrInput
	// 1: traditional NAT, 2: standard NAT, default value is 1.
	NatProductVersion pulumi.IntPtrInput
	// Subnet of NAT.
	SubnetId pulumi.StringPtrInput
	// The available tags within this NAT gateway.
	Tags pulumi.MapInput
	// ID of the vpc.
	VpcId pulumi.StringPtrInput
	// The availability zone, such as `ap-guangzhou-3`.
	Zone pulumi.StringPtrInput
}

func (GatewayState) ElementType

func (GatewayState) ElementType() reflect.Type

type GetDcRouteArgs added in v0.1.5

type GetDcRouteArgs struct {
	// Unique identifier of Nat Gateway.
	NatGatewayId string `pulumi:"natGatewayId"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Unique identifier of Vpc.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getDcRoute.

type GetDcRouteNatDirectConnectGatewayRouteSet added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSet struct {
	// Create time of route.
	CreateTime string `pulumi:"createTime"`
	// IPv4 CIDR of subnet.
	DestinationCidrBlock string `pulumi:"destinationCidrBlock"`
	// Id of next-hop gateway.
	GatewayId string `pulumi:"gatewayId"`
	// Type of next-hop gateway, valid values: DIRECTCONNECT.
	GatewayType string `pulumi:"gatewayType"`
	// Update time of route.
	UpdateTime string `pulumi:"updateTime"`
}

type GetDcRouteNatDirectConnectGatewayRouteSetArgs added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetArgs struct {
	// Create time of route.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// IPv4 CIDR of subnet.
	DestinationCidrBlock pulumi.StringInput `pulumi:"destinationCidrBlock"`
	// Id of next-hop gateway.
	GatewayId pulumi.StringInput `pulumi:"gatewayId"`
	// Type of next-hop gateway, valid values: DIRECTCONNECT.
	GatewayType pulumi.StringInput `pulumi:"gatewayType"`
	// Update time of route.
	UpdateTime pulumi.StringInput `pulumi:"updateTime"`
}

func (GetDcRouteNatDirectConnectGatewayRouteSetArgs) ElementType added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetArgs) ToGetDcRouteNatDirectConnectGatewayRouteSetOutput added in v0.1.5

func (i GetDcRouteNatDirectConnectGatewayRouteSetArgs) ToGetDcRouteNatDirectConnectGatewayRouteSetOutput() GetDcRouteNatDirectConnectGatewayRouteSetOutput

func (GetDcRouteNatDirectConnectGatewayRouteSetArgs) ToGetDcRouteNatDirectConnectGatewayRouteSetOutputWithContext added in v0.1.5

func (i GetDcRouteNatDirectConnectGatewayRouteSetArgs) ToGetDcRouteNatDirectConnectGatewayRouteSetOutputWithContext(ctx context.Context) GetDcRouteNatDirectConnectGatewayRouteSetOutput

type GetDcRouteNatDirectConnectGatewayRouteSetArray added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetArray []GetDcRouteNatDirectConnectGatewayRouteSetInput

func (GetDcRouteNatDirectConnectGatewayRouteSetArray) ElementType added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetArray) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutput added in v0.1.5

func (i GetDcRouteNatDirectConnectGatewayRouteSetArray) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutput() GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput

func (GetDcRouteNatDirectConnectGatewayRouteSetArray) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutputWithContext added in v0.1.5

func (i GetDcRouteNatDirectConnectGatewayRouteSetArray) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutputWithContext(ctx context.Context) GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput

type GetDcRouteNatDirectConnectGatewayRouteSetArrayInput added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetArrayInput interface {
	pulumi.Input

	ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutput() GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput
	ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutputWithContext(context.Context) GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput
}

GetDcRouteNatDirectConnectGatewayRouteSetArrayInput is an input type that accepts GetDcRouteNatDirectConnectGatewayRouteSetArray and GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput values. You can construct a concrete instance of `GetDcRouteNatDirectConnectGatewayRouteSetArrayInput` via:

GetDcRouteNatDirectConnectGatewayRouteSetArray{ GetDcRouteNatDirectConnectGatewayRouteSetArgs{...} }

type GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput struct{ *pulumi.OutputState }

func (GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput) ElementType added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput) Index added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutput added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutputWithContext added in v0.1.5

func (o GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetArrayOutputWithContext(ctx context.Context) GetDcRouteNatDirectConnectGatewayRouteSetArrayOutput

type GetDcRouteNatDirectConnectGatewayRouteSetInput added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetInput interface {
	pulumi.Input

	ToGetDcRouteNatDirectConnectGatewayRouteSetOutput() GetDcRouteNatDirectConnectGatewayRouteSetOutput
	ToGetDcRouteNatDirectConnectGatewayRouteSetOutputWithContext(context.Context) GetDcRouteNatDirectConnectGatewayRouteSetOutput
}

GetDcRouteNatDirectConnectGatewayRouteSetInput is an input type that accepts GetDcRouteNatDirectConnectGatewayRouteSetArgs and GetDcRouteNatDirectConnectGatewayRouteSetOutput values. You can construct a concrete instance of `GetDcRouteNatDirectConnectGatewayRouteSetInput` via:

GetDcRouteNatDirectConnectGatewayRouteSetArgs{...}

type GetDcRouteNatDirectConnectGatewayRouteSetOutput added in v0.1.5

type GetDcRouteNatDirectConnectGatewayRouteSetOutput struct{ *pulumi.OutputState }

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) CreateTime added in v0.1.5

Create time of route.

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) DestinationCidrBlock added in v0.1.5

IPv4 CIDR of subnet.

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) ElementType added in v0.1.5

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) GatewayId added in v0.1.5

Id of next-hop gateway.

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) GatewayType added in v0.1.5

Type of next-hop gateway, valid values: DIRECTCONNECT.

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetOutput added in v0.1.5

func (o GetDcRouteNatDirectConnectGatewayRouteSetOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetOutput() GetDcRouteNatDirectConnectGatewayRouteSetOutput

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetOutputWithContext added in v0.1.5

func (o GetDcRouteNatDirectConnectGatewayRouteSetOutput) ToGetDcRouteNatDirectConnectGatewayRouteSetOutputWithContext(ctx context.Context) GetDcRouteNatDirectConnectGatewayRouteSetOutput

func (GetDcRouteNatDirectConnectGatewayRouteSetOutput) UpdateTime added in v0.1.5

Update time of route.

type GetDcRouteOutputArgs added in v0.1.5

type GetDcRouteOutputArgs struct {
	// Unique identifier of Nat Gateway.
	NatGatewayId pulumi.StringInput `pulumi:"natGatewayId"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Unique identifier of Vpc.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getDcRoute.

func (GetDcRouteOutputArgs) ElementType added in v0.1.5

func (GetDcRouteOutputArgs) ElementType() reflect.Type

type GetDcRouteResult added in v0.1.5

type GetDcRouteResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Data of route.
	NatDirectConnectGatewayRouteSets []GetDcRouteNatDirectConnectGatewayRouteSet `pulumi:"natDirectConnectGatewayRouteSets"`
	NatGatewayId                     string                                      `pulumi:"natGatewayId"`
	ResultOutputFile                 *string                                     `pulumi:"resultOutputFile"`
	VpcId                            string                                      `pulumi:"vpcId"`
}

A collection of values returned by getDcRoute.

func GetDcRoute added in v0.1.5

func GetDcRoute(ctx *pulumi.Context, args *GetDcRouteArgs, opts ...pulumi.InvokeOption) (*GetDcRouteResult, error)

Use this data source to query detailed information of vpc natDcRoute

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Nat.GetDcRoute(ctx, &nat.GetDcRouteArgs{
			NatGatewayId: "nat-gnxkey2e",
			VpcId:        "vpc-pyyv5k3v",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetDcRouteResultOutput added in v0.1.5

type GetDcRouteResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDcRoute.

func GetDcRouteOutput added in v0.1.5

func GetDcRouteOutput(ctx *pulumi.Context, args GetDcRouteOutputArgs, opts ...pulumi.InvokeOption) GetDcRouteResultOutput

func (GetDcRouteResultOutput) ElementType added in v0.1.5

func (GetDcRouteResultOutput) ElementType() reflect.Type

func (GetDcRouteResultOutput) Id added in v0.1.5

The provider-assigned unique ID for this managed resource.

func (GetDcRouteResultOutput) NatDirectConnectGatewayRouteSets added in v0.1.5

Data of route.

func (GetDcRouteResultOutput) NatGatewayId added in v0.1.5

func (o GetDcRouteResultOutput) NatGatewayId() pulumi.StringOutput

func (GetDcRouteResultOutput) ResultOutputFile added in v0.1.5

func (o GetDcRouteResultOutput) ResultOutputFile() pulumi.StringPtrOutput

func (GetDcRouteResultOutput) ToGetDcRouteResultOutput added in v0.1.5

func (o GetDcRouteResultOutput) ToGetDcRouteResultOutput() GetDcRouteResultOutput

func (GetDcRouteResultOutput) ToGetDcRouteResultOutputWithContext added in v0.1.5

func (o GetDcRouteResultOutput) ToGetDcRouteResultOutputWithContext(ctx context.Context) GetDcRouteResultOutput

func (GetDcRouteResultOutput) VpcId added in v0.1.5

type GetGatewaySnatsArgs

type GetGatewaySnatsArgs struct {
	// Description.
	Description *string `pulumi:"description"`
	// Instance ID.
	InstanceId *string `pulumi:"instanceId"`
	// NAT gateway ID.
	NatGatewayId string `pulumi:"natGatewayId"`
	// Elastic IP address pool.
	PublicIpAddrs []string `pulumi:"publicIpAddrs"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Subnet instance ID.
	SubnetId *string `pulumi:"subnetId"`
}

A collection of arguments for invoking getGatewaySnats.

type GetGatewaySnatsOutputArgs

type GetGatewaySnatsOutputArgs struct {
	// Description.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Instance ID.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// NAT gateway ID.
	NatGatewayId pulumi.StringInput `pulumi:"natGatewayId"`
	// Elastic IP address pool.
	PublicIpAddrs pulumi.StringArrayInput `pulumi:"publicIpAddrs"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Subnet instance ID.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

A collection of arguments for invoking getGatewaySnats.

func (GetGatewaySnatsOutputArgs) ElementType

func (GetGatewaySnatsOutputArgs) ElementType() reflect.Type

type GetGatewaySnatsResult

type GetGatewaySnatsResult struct {
	Description *string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id               string   `pulumi:"id"`
	InstanceId       *string  `pulumi:"instanceId"`
	NatGatewayId     string   `pulumi:"natGatewayId"`
	PublicIpAddrs    []string `pulumi:"publicIpAddrs"`
	ResultOutputFile *string  `pulumi:"resultOutputFile"`
	// Information list of the nat gateway snat.
	SnatLists []GetGatewaySnatsSnatList `pulumi:"snatLists"`
	SubnetId  *string                   `pulumi:"subnetId"`
}

A collection of values returned by getGatewaySnats.

func GetGatewaySnats

func GetGatewaySnats(ctx *pulumi.Context, args *GetGatewaySnatsArgs, opts ...pulumi.InvokeOption) (*GetGatewaySnatsResult, error)

Use this data source to query detailed information of VPN gateways.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Nat.GetGatewaySnats(ctx, &nat.GetGatewaySnatsArgs{
			NatGatewayId: tencentcloud_nat_gateway.My_nat.Id,
			SubnetId:     pulumi.StringRef(tencentcloud_nat_gateway_snat.My_subnet.Id),
			PublicIpAddrs: []string{
				"50.29.23.234",
			},
			Description:      pulumi.StringRef("snat demo"),
			ResultOutputFile: pulumi.StringRef("./snat.txt"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetGatewaySnatsResultOutput

type GetGatewaySnatsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGatewaySnats.

func (GetGatewaySnatsResultOutput) Description

func (GetGatewaySnatsResultOutput) ElementType

func (GetGatewaySnatsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetGatewaySnatsResultOutput) InstanceId

func (GetGatewaySnatsResultOutput) NatGatewayId

func (GetGatewaySnatsResultOutput) PublicIpAddrs

func (GetGatewaySnatsResultOutput) ResultOutputFile

func (o GetGatewaySnatsResultOutput) ResultOutputFile() pulumi.StringPtrOutput

func (GetGatewaySnatsResultOutput) SnatLists

Information list of the nat gateway snat.

func (GetGatewaySnatsResultOutput) SubnetId

func (GetGatewaySnatsResultOutput) ToGetGatewaySnatsResultOutput

func (o GetGatewaySnatsResultOutput) ToGetGatewaySnatsResultOutput() GetGatewaySnatsResultOutput

func (GetGatewaySnatsResultOutput) ToGetGatewaySnatsResultOutputWithContext

func (o GetGatewaySnatsResultOutput) ToGetGatewaySnatsResultOutputWithContext(ctx context.Context) GetGatewaySnatsResultOutput

type GetGatewaySnatsSnatList

type GetGatewaySnatsSnatList struct {
	// Create time.
	CreateTime string `pulumi:"createTime"`
	// Description.
	Description string `pulumi:"description"`
	// Instance ID.
	InstanceId            *string `pulumi:"instanceId"`
	InstancePrivateIpAddr *string `pulumi:"instancePrivateIpAddr"`
	// NAT gateway ID.
	NatGatewayId string `pulumi:"natGatewayId"`
	// Elastic IP address pool.
	PublicIpAddrs []string `pulumi:"publicIpAddrs"`
	ResourceType  string   `pulumi:"resourceType"`
	// SNAT rule ID.
	SnatId          string  `pulumi:"snatId"`
	SubnetCidrBlock *string `pulumi:"subnetCidrBlock"`
	// Subnet instance ID.
	SubnetId *string `pulumi:"subnetId"`
}

type GetGatewaySnatsSnatListArgs

type GetGatewaySnatsSnatListArgs struct {
	// Create time.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Description.
	Description pulumi.StringInput `pulumi:"description"`
	// Instance ID.
	InstanceId            pulumi.StringPtrInput `pulumi:"instanceId"`
	InstancePrivateIpAddr pulumi.StringPtrInput `pulumi:"instancePrivateIpAddr"`
	// NAT gateway ID.
	NatGatewayId pulumi.StringInput `pulumi:"natGatewayId"`
	// Elastic IP address pool.
	PublicIpAddrs pulumi.StringArrayInput `pulumi:"publicIpAddrs"`
	ResourceType  pulumi.StringInput      `pulumi:"resourceType"`
	// SNAT rule ID.
	SnatId          pulumi.StringInput    `pulumi:"snatId"`
	SubnetCidrBlock pulumi.StringPtrInput `pulumi:"subnetCidrBlock"`
	// Subnet instance ID.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (GetGatewaySnatsSnatListArgs) ElementType

func (GetGatewaySnatsSnatListArgs) ToGetGatewaySnatsSnatListOutput

func (i GetGatewaySnatsSnatListArgs) ToGetGatewaySnatsSnatListOutput() GetGatewaySnatsSnatListOutput

func (GetGatewaySnatsSnatListArgs) ToGetGatewaySnatsSnatListOutputWithContext

func (i GetGatewaySnatsSnatListArgs) ToGetGatewaySnatsSnatListOutputWithContext(ctx context.Context) GetGatewaySnatsSnatListOutput

type GetGatewaySnatsSnatListArray

type GetGatewaySnatsSnatListArray []GetGatewaySnatsSnatListInput

func (GetGatewaySnatsSnatListArray) ElementType

func (GetGatewaySnatsSnatListArray) ToGetGatewaySnatsSnatListArrayOutput

func (i GetGatewaySnatsSnatListArray) ToGetGatewaySnatsSnatListArrayOutput() GetGatewaySnatsSnatListArrayOutput

func (GetGatewaySnatsSnatListArray) ToGetGatewaySnatsSnatListArrayOutputWithContext

func (i GetGatewaySnatsSnatListArray) ToGetGatewaySnatsSnatListArrayOutputWithContext(ctx context.Context) GetGatewaySnatsSnatListArrayOutput

type GetGatewaySnatsSnatListArrayInput

type GetGatewaySnatsSnatListArrayInput interface {
	pulumi.Input

	ToGetGatewaySnatsSnatListArrayOutput() GetGatewaySnatsSnatListArrayOutput
	ToGetGatewaySnatsSnatListArrayOutputWithContext(context.Context) GetGatewaySnatsSnatListArrayOutput
}

GetGatewaySnatsSnatListArrayInput is an input type that accepts GetGatewaySnatsSnatListArray and GetGatewaySnatsSnatListArrayOutput values. You can construct a concrete instance of `GetGatewaySnatsSnatListArrayInput` via:

GetGatewaySnatsSnatListArray{ GetGatewaySnatsSnatListArgs{...} }

type GetGatewaySnatsSnatListArrayOutput

type GetGatewaySnatsSnatListArrayOutput struct{ *pulumi.OutputState }

func (GetGatewaySnatsSnatListArrayOutput) ElementType

func (GetGatewaySnatsSnatListArrayOutput) Index

func (GetGatewaySnatsSnatListArrayOutput) ToGetGatewaySnatsSnatListArrayOutput

func (o GetGatewaySnatsSnatListArrayOutput) ToGetGatewaySnatsSnatListArrayOutput() GetGatewaySnatsSnatListArrayOutput

func (GetGatewaySnatsSnatListArrayOutput) ToGetGatewaySnatsSnatListArrayOutputWithContext

func (o GetGatewaySnatsSnatListArrayOutput) ToGetGatewaySnatsSnatListArrayOutputWithContext(ctx context.Context) GetGatewaySnatsSnatListArrayOutput

type GetGatewaySnatsSnatListInput

type GetGatewaySnatsSnatListInput interface {
	pulumi.Input

	ToGetGatewaySnatsSnatListOutput() GetGatewaySnatsSnatListOutput
	ToGetGatewaySnatsSnatListOutputWithContext(context.Context) GetGatewaySnatsSnatListOutput
}

GetGatewaySnatsSnatListInput is an input type that accepts GetGatewaySnatsSnatListArgs and GetGatewaySnatsSnatListOutput values. You can construct a concrete instance of `GetGatewaySnatsSnatListInput` via:

GetGatewaySnatsSnatListArgs{...}

type GetGatewaySnatsSnatListOutput

type GetGatewaySnatsSnatListOutput struct{ *pulumi.OutputState }

func (GetGatewaySnatsSnatListOutput) CreateTime

Create time.

func (GetGatewaySnatsSnatListOutput) Description

Description.

func (GetGatewaySnatsSnatListOutput) ElementType

func (GetGatewaySnatsSnatListOutput) InstanceId

Instance ID.

func (GetGatewaySnatsSnatListOutput) InstancePrivateIpAddr

func (o GetGatewaySnatsSnatListOutput) InstancePrivateIpAddr() pulumi.StringPtrOutput

func (GetGatewaySnatsSnatListOutput) NatGatewayId

NAT gateway ID.

func (GetGatewaySnatsSnatListOutput) PublicIpAddrs

Elastic IP address pool.

func (GetGatewaySnatsSnatListOutput) ResourceType

func (GetGatewaySnatsSnatListOutput) SnatId

SNAT rule ID.

func (GetGatewaySnatsSnatListOutput) SubnetCidrBlock

func (GetGatewaySnatsSnatListOutput) SubnetId

Subnet instance ID.

func (GetGatewaySnatsSnatListOutput) ToGetGatewaySnatsSnatListOutput

func (o GetGatewaySnatsSnatListOutput) ToGetGatewaySnatsSnatListOutput() GetGatewaySnatsSnatListOutput

func (GetGatewaySnatsSnatListOutput) ToGetGatewaySnatsSnatListOutputWithContext

func (o GetGatewaySnatsSnatListOutput) ToGetGatewaySnatsSnatListOutputWithContext(ctx context.Context) GetGatewaySnatsSnatListOutput

type GetGatewaysArgs

type GetGatewaysArgs struct {
	// ID of the NAT gateway.
	Id *string `pulumi:"id"`
	// Name of the NAT gateway.
	Name *string `pulumi:"name"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getGateways.

type GetGatewaysNat

type GetGatewaysNat struct {
	// EIP IP address set bound to the gateway. The value of at least 1.
	AssignedEipSets []string `pulumi:"assignedEipSets"`
	// The maximum public network output bandwidth of NAT gateway (unit: Mbps), the available values include: 20,50,100,200,500,1000,2000,5000. Default is 100.
	Bandwidth int `pulumi:"bandwidth"`
	// Create time of the NAT gateway.
	CreateTime string `pulumi:"createTime"`
	// ID of the NAT gateway.
	Id string `pulumi:"id"`
	// The upper limit of concurrent connection of NAT gateway, the available values include: 1000000,3000000,10000000. Default is 1000000.
	MaxConcurrent int `pulumi:"maxConcurrent"`
	// Name of the NAT gateway.
	Name string `pulumi:"name"`
	// State of the NAT gateway.
	State string `pulumi:"state"`
	// The available tags within this NAT gateway.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId string `pulumi:"vpcId"`
}

type GetGatewaysNatArgs

type GetGatewaysNatArgs struct {
	// EIP IP address set bound to the gateway. The value of at least 1.
	AssignedEipSets pulumi.StringArrayInput `pulumi:"assignedEipSets"`
	// The maximum public network output bandwidth of NAT gateway (unit: Mbps), the available values include: 20,50,100,200,500,1000,2000,5000. Default is 100.
	Bandwidth pulumi.IntInput `pulumi:"bandwidth"`
	// Create time of the NAT gateway.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// ID of the NAT gateway.
	Id pulumi.StringInput `pulumi:"id"`
	// The upper limit of concurrent connection of NAT gateway, the available values include: 1000000,3000000,10000000. Default is 1000000.
	MaxConcurrent pulumi.IntInput `pulumi:"maxConcurrent"`
	// Name of the NAT gateway.
	Name pulumi.StringInput `pulumi:"name"`
	// State of the NAT gateway.
	State pulumi.StringInput `pulumi:"state"`
	// The available tags within this NAT gateway.
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetGatewaysNatArgs) ElementType

func (GetGatewaysNatArgs) ElementType() reflect.Type

func (GetGatewaysNatArgs) ToGetGatewaysNatOutput

func (i GetGatewaysNatArgs) ToGetGatewaysNatOutput() GetGatewaysNatOutput

func (GetGatewaysNatArgs) ToGetGatewaysNatOutputWithContext

func (i GetGatewaysNatArgs) ToGetGatewaysNatOutputWithContext(ctx context.Context) GetGatewaysNatOutput

type GetGatewaysNatArray

type GetGatewaysNatArray []GetGatewaysNatInput

func (GetGatewaysNatArray) ElementType

func (GetGatewaysNatArray) ElementType() reflect.Type

func (GetGatewaysNatArray) ToGetGatewaysNatArrayOutput

func (i GetGatewaysNatArray) ToGetGatewaysNatArrayOutput() GetGatewaysNatArrayOutput

func (GetGatewaysNatArray) ToGetGatewaysNatArrayOutputWithContext

func (i GetGatewaysNatArray) ToGetGatewaysNatArrayOutputWithContext(ctx context.Context) GetGatewaysNatArrayOutput

type GetGatewaysNatArrayInput

type GetGatewaysNatArrayInput interface {
	pulumi.Input

	ToGetGatewaysNatArrayOutput() GetGatewaysNatArrayOutput
	ToGetGatewaysNatArrayOutputWithContext(context.Context) GetGatewaysNatArrayOutput
}

GetGatewaysNatArrayInput is an input type that accepts GetGatewaysNatArray and GetGatewaysNatArrayOutput values. You can construct a concrete instance of `GetGatewaysNatArrayInput` via:

GetGatewaysNatArray{ GetGatewaysNatArgs{...} }

type GetGatewaysNatArrayOutput

type GetGatewaysNatArrayOutput struct{ *pulumi.OutputState }

func (GetGatewaysNatArrayOutput) ElementType

func (GetGatewaysNatArrayOutput) ElementType() reflect.Type

func (GetGatewaysNatArrayOutput) Index

func (GetGatewaysNatArrayOutput) ToGetGatewaysNatArrayOutput

func (o GetGatewaysNatArrayOutput) ToGetGatewaysNatArrayOutput() GetGatewaysNatArrayOutput

func (GetGatewaysNatArrayOutput) ToGetGatewaysNatArrayOutputWithContext

func (o GetGatewaysNatArrayOutput) ToGetGatewaysNatArrayOutputWithContext(ctx context.Context) GetGatewaysNatArrayOutput

type GetGatewaysNatInput

type GetGatewaysNatInput interface {
	pulumi.Input

	ToGetGatewaysNatOutput() GetGatewaysNatOutput
	ToGetGatewaysNatOutputWithContext(context.Context) GetGatewaysNatOutput
}

GetGatewaysNatInput is an input type that accepts GetGatewaysNatArgs and GetGatewaysNatOutput values. You can construct a concrete instance of `GetGatewaysNatInput` via:

GetGatewaysNatArgs{...}

type GetGatewaysNatOutput

type GetGatewaysNatOutput struct{ *pulumi.OutputState }

func (GetGatewaysNatOutput) AssignedEipSets

func (o GetGatewaysNatOutput) AssignedEipSets() pulumi.StringArrayOutput

EIP IP address set bound to the gateway. The value of at least 1.

func (GetGatewaysNatOutput) Bandwidth

func (o GetGatewaysNatOutput) Bandwidth() pulumi.IntOutput

The maximum public network output bandwidth of NAT gateway (unit: Mbps), the available values include: 20,50,100,200,500,1000,2000,5000. Default is 100.

func (GetGatewaysNatOutput) CreateTime

func (o GetGatewaysNatOutput) CreateTime() pulumi.StringOutput

Create time of the NAT gateway.

func (GetGatewaysNatOutput) ElementType

func (GetGatewaysNatOutput) ElementType() reflect.Type

func (GetGatewaysNatOutput) Id

ID of the NAT gateway.

func (GetGatewaysNatOutput) MaxConcurrent

func (o GetGatewaysNatOutput) MaxConcurrent() pulumi.IntOutput

The upper limit of concurrent connection of NAT gateway, the available values include: 1000000,3000000,10000000. Default is 1000000.

func (GetGatewaysNatOutput) Name

Name of the NAT gateway.

func (GetGatewaysNatOutput) State

State of the NAT gateway.

func (GetGatewaysNatOutput) Tags

The available tags within this NAT gateway.

func (GetGatewaysNatOutput) ToGetGatewaysNatOutput

func (o GetGatewaysNatOutput) ToGetGatewaysNatOutput() GetGatewaysNatOutput

func (GetGatewaysNatOutput) ToGetGatewaysNatOutputWithContext

func (o GetGatewaysNatOutput) ToGetGatewaysNatOutputWithContext(ctx context.Context) GetGatewaysNatOutput

func (GetGatewaysNatOutput) VpcId

ID of the VPC.

type GetGatewaysOutputArgs

type GetGatewaysOutputArgs struct {
	// ID of the NAT gateway.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Name of the NAT gateway.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// ID of the VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getGateways.

func (GetGatewaysOutputArgs) ElementType

func (GetGatewaysOutputArgs) ElementType() reflect.Type

type GetGatewaysResult

type GetGatewaysResult struct {
	// ID of the NAT gateway.
	Id *string `pulumi:"id"`
	// Name of the NAT gateway.
	Name *string `pulumi:"name"`
	// Information list of the dedicated NATs.
	Nats             []GetGatewaysNat `pulumi:"nats"`
	ResultOutputFile *string          `pulumi:"resultOutputFile"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
}

A collection of values returned by getGateways.

func GetGateways

func GetGateways(ctx *pulumi.Context, args *GetGatewaysArgs, opts ...pulumi.InvokeOption) (*GetGatewaysResult, error)

Use this data source to query detailed information of NAT gateways.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Nat.GetGateways(ctx, &nat.GetGatewaysArgs{
			Id:    pulumi.StringRef("nat-xfaq1"),
			Name:  pulumi.StringRef("main"),
			VpcId: pulumi.StringRef("vpc-xfqag"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetGatewaysResultOutput

type GetGatewaysResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGateways.

func (GetGatewaysResultOutput) ElementType

func (GetGatewaysResultOutput) ElementType() reflect.Type

func (GetGatewaysResultOutput) Id

ID of the NAT gateway.

func (GetGatewaysResultOutput) Name

Name of the NAT gateway.

func (GetGatewaysResultOutput) Nats

Information list of the dedicated NATs.

func (GetGatewaysResultOutput) ResultOutputFile

func (o GetGatewaysResultOutput) ResultOutputFile() pulumi.StringPtrOutput

func (GetGatewaysResultOutput) ToGetGatewaysResultOutput

func (o GetGatewaysResultOutput) ToGetGatewaysResultOutput() GetGatewaysResultOutput

func (GetGatewaysResultOutput) ToGetGatewaysResultOutputWithContext

func (o GetGatewaysResultOutput) ToGetGatewaysResultOutputWithContext(ctx context.Context) GetGatewaysResultOutput

func (GetGatewaysResultOutput) VpcId

ID of the VPC.

type RefreshNatDcRoute added in v0.1.5

type RefreshNatDcRoute struct {
	pulumi.CustomResourceState

	// Whether to pre-refresh, valid values: True:yes, False:no.
	DryRun pulumi.BoolOutput `pulumi:"dryRun"`
	// Unique identifier of Nat Gateway.
	NatGatewayId pulumi.StringOutput `pulumi:"natGatewayId"`
	// Unique identifier of Vpc.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to create a vpc refreshNatDcRoute

## Example Usage ### is True

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Eip"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := Vpc.NewInstance(ctx, "vpc", &Vpc.InstanceArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		eipExample, err := Eip.NewInstance(ctx, "eipExample", nil)
		if err != nil {
			return err
		}
		nat, err := Nat.NewGateway(ctx, "nat", &Nat.GatewayArgs{
			VpcId:         vpc.ID(),
			MaxConcurrent: pulumi.Int(3000000),
			Bandwidth:     pulumi.Int(500),
			AssignedEipSets: pulumi.StringArray{
				eipExample.PublicIp,
			},
		})
		if err != nil {
			return err
		}
		_, err = Nat.NewRefreshNatDcRoute(ctx, "refreshNatDcRoute", &Nat.RefreshNatDcRouteArgs{
			NatGatewayId: nat.ID(),
			VpcId:        vpc.ID(),
			DryRun:       pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### is False

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Nat"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Nat.NewRefreshNatDcRoute(ctx, "refreshNatDcRoute", &Nat.RefreshNatDcRouteArgs{
			NatGatewayId: pulumi.Any(tencentcloud_nat_gateway.Nat.Id),
			VpcId:        pulumi.Any(tencentcloud_vpc.Vpc.Id),
			DryRun:       pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

vpc refresh_nat_dc_route can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Nat/refreshNatDcRoute:RefreshNatDcRoute refresh_nat_dc_route vpc_id#nat_gateway_id

```

func GetRefreshNatDcRoute added in v0.1.5

func GetRefreshNatDcRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RefreshNatDcRouteState, opts ...pulumi.ResourceOption) (*RefreshNatDcRoute, error)

GetRefreshNatDcRoute gets an existing RefreshNatDcRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRefreshNatDcRoute added in v0.1.5

func NewRefreshNatDcRoute(ctx *pulumi.Context,
	name string, args *RefreshNatDcRouteArgs, opts ...pulumi.ResourceOption) (*RefreshNatDcRoute, error)

NewRefreshNatDcRoute registers a new resource with the given unique name, arguments, and options.

func (*RefreshNatDcRoute) ElementType added in v0.1.5

func (*RefreshNatDcRoute) ElementType() reflect.Type

func (*RefreshNatDcRoute) ToRefreshNatDcRouteOutput added in v0.1.5

func (i *RefreshNatDcRoute) ToRefreshNatDcRouteOutput() RefreshNatDcRouteOutput

func (*RefreshNatDcRoute) ToRefreshNatDcRouteOutputWithContext added in v0.1.5

func (i *RefreshNatDcRoute) ToRefreshNatDcRouteOutputWithContext(ctx context.Context) RefreshNatDcRouteOutput

type RefreshNatDcRouteArgs added in v0.1.5

type RefreshNatDcRouteArgs struct {
	// Whether to pre-refresh, valid values: True:yes, False:no.
	DryRun pulumi.BoolInput
	// Unique identifier of Nat Gateway.
	NatGatewayId pulumi.StringInput
	// Unique identifier of Vpc.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a RefreshNatDcRoute resource.

func (RefreshNatDcRouteArgs) ElementType added in v0.1.5

func (RefreshNatDcRouteArgs) ElementType() reflect.Type

type RefreshNatDcRouteArray added in v0.1.5

type RefreshNatDcRouteArray []RefreshNatDcRouteInput

func (RefreshNatDcRouteArray) ElementType added in v0.1.5

func (RefreshNatDcRouteArray) ElementType() reflect.Type

func (RefreshNatDcRouteArray) ToRefreshNatDcRouteArrayOutput added in v0.1.5

func (i RefreshNatDcRouteArray) ToRefreshNatDcRouteArrayOutput() RefreshNatDcRouteArrayOutput

func (RefreshNatDcRouteArray) ToRefreshNatDcRouteArrayOutputWithContext added in v0.1.5

func (i RefreshNatDcRouteArray) ToRefreshNatDcRouteArrayOutputWithContext(ctx context.Context) RefreshNatDcRouteArrayOutput

type RefreshNatDcRouteArrayInput added in v0.1.5

type RefreshNatDcRouteArrayInput interface {
	pulumi.Input

	ToRefreshNatDcRouteArrayOutput() RefreshNatDcRouteArrayOutput
	ToRefreshNatDcRouteArrayOutputWithContext(context.Context) RefreshNatDcRouteArrayOutput
}

RefreshNatDcRouteArrayInput is an input type that accepts RefreshNatDcRouteArray and RefreshNatDcRouteArrayOutput values. You can construct a concrete instance of `RefreshNatDcRouteArrayInput` via:

RefreshNatDcRouteArray{ RefreshNatDcRouteArgs{...} }

type RefreshNatDcRouteArrayOutput added in v0.1.5

type RefreshNatDcRouteArrayOutput struct{ *pulumi.OutputState }

func (RefreshNatDcRouteArrayOutput) ElementType added in v0.1.5

func (RefreshNatDcRouteArrayOutput) Index added in v0.1.5

func (RefreshNatDcRouteArrayOutput) ToRefreshNatDcRouteArrayOutput added in v0.1.5

func (o RefreshNatDcRouteArrayOutput) ToRefreshNatDcRouteArrayOutput() RefreshNatDcRouteArrayOutput

func (RefreshNatDcRouteArrayOutput) ToRefreshNatDcRouteArrayOutputWithContext added in v0.1.5

func (o RefreshNatDcRouteArrayOutput) ToRefreshNatDcRouteArrayOutputWithContext(ctx context.Context) RefreshNatDcRouteArrayOutput

type RefreshNatDcRouteInput added in v0.1.5

type RefreshNatDcRouteInput interface {
	pulumi.Input

	ToRefreshNatDcRouteOutput() RefreshNatDcRouteOutput
	ToRefreshNatDcRouteOutputWithContext(ctx context.Context) RefreshNatDcRouteOutput
}

type RefreshNatDcRouteMap added in v0.1.5

type RefreshNatDcRouteMap map[string]RefreshNatDcRouteInput

func (RefreshNatDcRouteMap) ElementType added in v0.1.5

func (RefreshNatDcRouteMap) ElementType() reflect.Type

func (RefreshNatDcRouteMap) ToRefreshNatDcRouteMapOutput added in v0.1.5

func (i RefreshNatDcRouteMap) ToRefreshNatDcRouteMapOutput() RefreshNatDcRouteMapOutput

func (RefreshNatDcRouteMap) ToRefreshNatDcRouteMapOutputWithContext added in v0.1.5

func (i RefreshNatDcRouteMap) ToRefreshNatDcRouteMapOutputWithContext(ctx context.Context) RefreshNatDcRouteMapOutput

type RefreshNatDcRouteMapInput added in v0.1.5

type RefreshNatDcRouteMapInput interface {
	pulumi.Input

	ToRefreshNatDcRouteMapOutput() RefreshNatDcRouteMapOutput
	ToRefreshNatDcRouteMapOutputWithContext(context.Context) RefreshNatDcRouteMapOutput
}

RefreshNatDcRouteMapInput is an input type that accepts RefreshNatDcRouteMap and RefreshNatDcRouteMapOutput values. You can construct a concrete instance of `RefreshNatDcRouteMapInput` via:

RefreshNatDcRouteMap{ "key": RefreshNatDcRouteArgs{...} }

type RefreshNatDcRouteMapOutput added in v0.1.5

type RefreshNatDcRouteMapOutput struct{ *pulumi.OutputState }

func (RefreshNatDcRouteMapOutput) ElementType added in v0.1.5

func (RefreshNatDcRouteMapOutput) ElementType() reflect.Type

func (RefreshNatDcRouteMapOutput) MapIndex added in v0.1.5

func (RefreshNatDcRouteMapOutput) ToRefreshNatDcRouteMapOutput added in v0.1.5

func (o RefreshNatDcRouteMapOutput) ToRefreshNatDcRouteMapOutput() RefreshNatDcRouteMapOutput

func (RefreshNatDcRouteMapOutput) ToRefreshNatDcRouteMapOutputWithContext added in v0.1.5

func (o RefreshNatDcRouteMapOutput) ToRefreshNatDcRouteMapOutputWithContext(ctx context.Context) RefreshNatDcRouteMapOutput

type RefreshNatDcRouteOutput added in v0.1.5

type RefreshNatDcRouteOutput struct{ *pulumi.OutputState }

func (RefreshNatDcRouteOutput) DryRun added in v0.1.5

Whether to pre-refresh, valid values: True:yes, False:no.

func (RefreshNatDcRouteOutput) ElementType added in v0.1.5

func (RefreshNatDcRouteOutput) ElementType() reflect.Type

func (RefreshNatDcRouteOutput) NatGatewayId added in v0.1.5

func (o RefreshNatDcRouteOutput) NatGatewayId() pulumi.StringOutput

Unique identifier of Nat Gateway.

func (RefreshNatDcRouteOutput) ToRefreshNatDcRouteOutput added in v0.1.5

func (o RefreshNatDcRouteOutput) ToRefreshNatDcRouteOutput() RefreshNatDcRouteOutput

func (RefreshNatDcRouteOutput) ToRefreshNatDcRouteOutputWithContext added in v0.1.5

func (o RefreshNatDcRouteOutput) ToRefreshNatDcRouteOutputWithContext(ctx context.Context) RefreshNatDcRouteOutput

func (RefreshNatDcRouteOutput) VpcId added in v0.1.5

Unique identifier of Vpc.

type RefreshNatDcRouteState added in v0.1.5

type RefreshNatDcRouteState struct {
	// Whether to pre-refresh, valid values: True:yes, False:no.
	DryRun pulumi.BoolPtrInput
	// Unique identifier of Nat Gateway.
	NatGatewayId pulumi.StringPtrInput
	// Unique identifier of Vpc.
	VpcId pulumi.StringPtrInput
}

func (RefreshNatDcRouteState) ElementType added in v0.1.5

func (RefreshNatDcRouteState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL