globalaccelerator

package
v3.3.0 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Accelerator

type Accelerator struct {
	pulumi.CustomResourceState

	// The attributes of the accelerator. Fields documented below.
	Attributes AcceleratorAttributesPtrOutput `pulumi:"attributes"`
	// The DNS name of the accelerator. For example, `a5d53ff5ee6bca4ce.awsglobalaccelerator.com`.
	// * `hostedZoneId` --  The Global Accelerator Route 53 zone ID that can be used to
	//   route an [Alias Resource Record Set](https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html) to the Global Accelerator. This attribute
	//   is simply an alias for the zone ID `Z2BJ6XQ5FK7U4H`.
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// Indicates whether the accelerator is enabled. The value is true or false. The default value is true.
	Enabled      pulumi.BoolPtrOutput `pulumi:"enabled"`
	HostedZoneId pulumi.StringOutput  `pulumi:"hostedZoneId"`
	// The value for the address type must be `IPV4`.
	IpAddressType pulumi.StringPtrOutput `pulumi:"ipAddressType"`
	// IP address set associated with the accelerator.
	IpSets AcceleratorIpSetArrayOutput `pulumi:"ipSets"`
	// The name of the accelerator.
	Name pulumi.StringOutput `pulumi:"name"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Creates a Global Accelerator accelerator.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/globalaccelerator"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := globalaccelerator.NewAccelerator(ctx, "example", &globalaccelerator.AcceleratorArgs{
			Attributes: &globalaccelerator.AcceleratorAttributesArgs{
				FlowLogsEnabled:  pulumi.Bool(true),
				FlowLogsS3Bucket: pulumi.String("example-bucket"),
				FlowLogsS3Prefix: pulumi.String("flow-logs/"),
			},
			Enabled:       pulumi.Bool(true),
			IpAddressType: pulumi.String("IPV4"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAccelerator

func GetAccelerator(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AcceleratorState, opts ...pulumi.ResourceOption) (*Accelerator, error)

GetAccelerator gets an existing Accelerator 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 NewAccelerator

func NewAccelerator(ctx *pulumi.Context,
	name string, args *AcceleratorArgs, opts ...pulumi.ResourceOption) (*Accelerator, error)

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

type AcceleratorArgs

type AcceleratorArgs struct {
	// The attributes of the accelerator. Fields documented below.
	Attributes AcceleratorAttributesPtrInput
	// Indicates whether the accelerator is enabled. The value is true or false. The default value is true.
	Enabled pulumi.BoolPtrInput
	// The value for the address type must be `IPV4`.
	IpAddressType pulumi.StringPtrInput
	// The name of the accelerator.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Accelerator resource.

func (AcceleratorArgs) ElementType

func (AcceleratorArgs) ElementType() reflect.Type

type AcceleratorAttributes

type AcceleratorAttributes struct {
	// Indicates whether flow logs are enabled.
	FlowLogsEnabled *bool `pulumi:"flowLogsEnabled"`
	// The name of the Amazon S3 bucket for the flow logs.
	FlowLogsS3Bucket *string `pulumi:"flowLogsS3Bucket"`
	// The prefix for the location in the Amazon S3 bucket for the flow logs.
	FlowLogsS3Prefix *string `pulumi:"flowLogsS3Prefix"`
}

type AcceleratorAttributesArgs

type AcceleratorAttributesArgs struct {
	// Indicates whether flow logs are enabled.
	FlowLogsEnabled pulumi.BoolPtrInput `pulumi:"flowLogsEnabled"`
	// The name of the Amazon S3 bucket for the flow logs.
	FlowLogsS3Bucket pulumi.StringPtrInput `pulumi:"flowLogsS3Bucket"`
	// The prefix for the location in the Amazon S3 bucket for the flow logs.
	FlowLogsS3Prefix pulumi.StringPtrInput `pulumi:"flowLogsS3Prefix"`
}

func (AcceleratorAttributesArgs) ElementType

func (AcceleratorAttributesArgs) ElementType() reflect.Type

func (AcceleratorAttributesArgs) ToAcceleratorAttributesOutput

func (i AcceleratorAttributesArgs) ToAcceleratorAttributesOutput() AcceleratorAttributesOutput

func (AcceleratorAttributesArgs) ToAcceleratorAttributesOutputWithContext

func (i AcceleratorAttributesArgs) ToAcceleratorAttributesOutputWithContext(ctx context.Context) AcceleratorAttributesOutput

func (AcceleratorAttributesArgs) ToAcceleratorAttributesPtrOutput

func (i AcceleratorAttributesArgs) ToAcceleratorAttributesPtrOutput() AcceleratorAttributesPtrOutput

func (AcceleratorAttributesArgs) ToAcceleratorAttributesPtrOutputWithContext

func (i AcceleratorAttributesArgs) ToAcceleratorAttributesPtrOutputWithContext(ctx context.Context) AcceleratorAttributesPtrOutput

type AcceleratorAttributesInput

type AcceleratorAttributesInput interface {
	pulumi.Input

	ToAcceleratorAttributesOutput() AcceleratorAttributesOutput
	ToAcceleratorAttributesOutputWithContext(context.Context) AcceleratorAttributesOutput
}

AcceleratorAttributesInput is an input type that accepts AcceleratorAttributesArgs and AcceleratorAttributesOutput values. You can construct a concrete instance of `AcceleratorAttributesInput` via:

AcceleratorAttributesArgs{...}

type AcceleratorAttributesOutput

type AcceleratorAttributesOutput struct{ *pulumi.OutputState }

func (AcceleratorAttributesOutput) ElementType

func (AcceleratorAttributesOutput) FlowLogsEnabled

func (o AcceleratorAttributesOutput) FlowLogsEnabled() pulumi.BoolPtrOutput

Indicates whether flow logs are enabled.

func (AcceleratorAttributesOutput) FlowLogsS3Bucket

func (o AcceleratorAttributesOutput) FlowLogsS3Bucket() pulumi.StringPtrOutput

The name of the Amazon S3 bucket for the flow logs.

func (AcceleratorAttributesOutput) FlowLogsS3Prefix

func (o AcceleratorAttributesOutput) FlowLogsS3Prefix() pulumi.StringPtrOutput

The prefix for the location in the Amazon S3 bucket for the flow logs.

func (AcceleratorAttributesOutput) ToAcceleratorAttributesOutput

func (o AcceleratorAttributesOutput) ToAcceleratorAttributesOutput() AcceleratorAttributesOutput

func (AcceleratorAttributesOutput) ToAcceleratorAttributesOutputWithContext

func (o AcceleratorAttributesOutput) ToAcceleratorAttributesOutputWithContext(ctx context.Context) AcceleratorAttributesOutput

func (AcceleratorAttributesOutput) ToAcceleratorAttributesPtrOutput

func (o AcceleratorAttributesOutput) ToAcceleratorAttributesPtrOutput() AcceleratorAttributesPtrOutput

func (AcceleratorAttributesOutput) ToAcceleratorAttributesPtrOutputWithContext

func (o AcceleratorAttributesOutput) ToAcceleratorAttributesPtrOutputWithContext(ctx context.Context) AcceleratorAttributesPtrOutput

type AcceleratorAttributesPtrInput

type AcceleratorAttributesPtrInput interface {
	pulumi.Input

	ToAcceleratorAttributesPtrOutput() AcceleratorAttributesPtrOutput
	ToAcceleratorAttributesPtrOutputWithContext(context.Context) AcceleratorAttributesPtrOutput
}

AcceleratorAttributesPtrInput is an input type that accepts AcceleratorAttributesArgs, AcceleratorAttributesPtr and AcceleratorAttributesPtrOutput values. You can construct a concrete instance of `AcceleratorAttributesPtrInput` via:

        AcceleratorAttributesArgs{...}

or:

        nil

type AcceleratorAttributesPtrOutput

type AcceleratorAttributesPtrOutput struct{ *pulumi.OutputState }

func (AcceleratorAttributesPtrOutput) Elem

func (AcceleratorAttributesPtrOutput) ElementType

func (AcceleratorAttributesPtrOutput) FlowLogsEnabled

Indicates whether flow logs are enabled.

func (AcceleratorAttributesPtrOutput) FlowLogsS3Bucket

The name of the Amazon S3 bucket for the flow logs.

func (AcceleratorAttributesPtrOutput) FlowLogsS3Prefix

The prefix for the location in the Amazon S3 bucket for the flow logs.

func (AcceleratorAttributesPtrOutput) ToAcceleratorAttributesPtrOutput

func (o AcceleratorAttributesPtrOutput) ToAcceleratorAttributesPtrOutput() AcceleratorAttributesPtrOutput

func (AcceleratorAttributesPtrOutput) ToAcceleratorAttributesPtrOutputWithContext

func (o AcceleratorAttributesPtrOutput) ToAcceleratorAttributesPtrOutputWithContext(ctx context.Context) AcceleratorAttributesPtrOutput

type AcceleratorIpSet

type AcceleratorIpSet struct {
	// A list of IP addresses in the IP address set.
	IpAddresses []string `pulumi:"ipAddresses"`
	// The types of IP addresses included in this IP set.
	IpFamily *string `pulumi:"ipFamily"`
}

type AcceleratorIpSetArgs

type AcceleratorIpSetArgs struct {
	// A list of IP addresses in the IP address set.
	IpAddresses pulumi.StringArrayInput `pulumi:"ipAddresses"`
	// The types of IP addresses included in this IP set.
	IpFamily pulumi.StringPtrInput `pulumi:"ipFamily"`
}

func (AcceleratorIpSetArgs) ElementType

func (AcceleratorIpSetArgs) ElementType() reflect.Type

func (AcceleratorIpSetArgs) ToAcceleratorIpSetOutput

func (i AcceleratorIpSetArgs) ToAcceleratorIpSetOutput() AcceleratorIpSetOutput

func (AcceleratorIpSetArgs) ToAcceleratorIpSetOutputWithContext

func (i AcceleratorIpSetArgs) ToAcceleratorIpSetOutputWithContext(ctx context.Context) AcceleratorIpSetOutput

type AcceleratorIpSetArray

type AcceleratorIpSetArray []AcceleratorIpSetInput

func (AcceleratorIpSetArray) ElementType

func (AcceleratorIpSetArray) ElementType() reflect.Type

func (AcceleratorIpSetArray) ToAcceleratorIpSetArrayOutput

func (i AcceleratorIpSetArray) ToAcceleratorIpSetArrayOutput() AcceleratorIpSetArrayOutput

func (AcceleratorIpSetArray) ToAcceleratorIpSetArrayOutputWithContext

func (i AcceleratorIpSetArray) ToAcceleratorIpSetArrayOutputWithContext(ctx context.Context) AcceleratorIpSetArrayOutput

type AcceleratorIpSetArrayInput

type AcceleratorIpSetArrayInput interface {
	pulumi.Input

	ToAcceleratorIpSetArrayOutput() AcceleratorIpSetArrayOutput
	ToAcceleratorIpSetArrayOutputWithContext(context.Context) AcceleratorIpSetArrayOutput
}

AcceleratorIpSetArrayInput is an input type that accepts AcceleratorIpSetArray and AcceleratorIpSetArrayOutput values. You can construct a concrete instance of `AcceleratorIpSetArrayInput` via:

AcceleratorIpSetArray{ AcceleratorIpSetArgs{...} }

type AcceleratorIpSetArrayOutput

type AcceleratorIpSetArrayOutput struct{ *pulumi.OutputState }

func (AcceleratorIpSetArrayOutput) ElementType

func (AcceleratorIpSetArrayOutput) Index

func (AcceleratorIpSetArrayOutput) ToAcceleratorIpSetArrayOutput

func (o AcceleratorIpSetArrayOutput) ToAcceleratorIpSetArrayOutput() AcceleratorIpSetArrayOutput

func (AcceleratorIpSetArrayOutput) ToAcceleratorIpSetArrayOutputWithContext

func (o AcceleratorIpSetArrayOutput) ToAcceleratorIpSetArrayOutputWithContext(ctx context.Context) AcceleratorIpSetArrayOutput

type AcceleratorIpSetInput

type AcceleratorIpSetInput interface {
	pulumi.Input

	ToAcceleratorIpSetOutput() AcceleratorIpSetOutput
	ToAcceleratorIpSetOutputWithContext(context.Context) AcceleratorIpSetOutput
}

AcceleratorIpSetInput is an input type that accepts AcceleratorIpSetArgs and AcceleratorIpSetOutput values. You can construct a concrete instance of `AcceleratorIpSetInput` via:

AcceleratorIpSetArgs{...}

type AcceleratorIpSetOutput

type AcceleratorIpSetOutput struct{ *pulumi.OutputState }

func (AcceleratorIpSetOutput) ElementType

func (AcceleratorIpSetOutput) ElementType() reflect.Type

func (AcceleratorIpSetOutput) IpAddresses

A list of IP addresses in the IP address set.

func (AcceleratorIpSetOutput) IpFamily

The types of IP addresses included in this IP set.

func (AcceleratorIpSetOutput) ToAcceleratorIpSetOutput

func (o AcceleratorIpSetOutput) ToAcceleratorIpSetOutput() AcceleratorIpSetOutput

func (AcceleratorIpSetOutput) ToAcceleratorIpSetOutputWithContext

func (o AcceleratorIpSetOutput) ToAcceleratorIpSetOutputWithContext(ctx context.Context) AcceleratorIpSetOutput

type AcceleratorState

type AcceleratorState struct {
	// The attributes of the accelerator. Fields documented below.
	Attributes AcceleratorAttributesPtrInput
	// The DNS name of the accelerator. For example, `a5d53ff5ee6bca4ce.awsglobalaccelerator.com`.
	// * `hostedZoneId` --  The Global Accelerator Route 53 zone ID that can be used to
	//   route an [Alias Resource Record Set](https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html) to the Global Accelerator. This attribute
	//   is simply an alias for the zone ID `Z2BJ6XQ5FK7U4H`.
	DnsName pulumi.StringPtrInput
	// Indicates whether the accelerator is enabled. The value is true or false. The default value is true.
	Enabled      pulumi.BoolPtrInput
	HostedZoneId pulumi.StringPtrInput
	// The value for the address type must be `IPV4`.
	IpAddressType pulumi.StringPtrInput
	// IP address set associated with the accelerator.
	IpSets AcceleratorIpSetArrayInput
	// The name of the accelerator.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (AcceleratorState) ElementType

func (AcceleratorState) ElementType() reflect.Type

type EndpointGroup

type EndpointGroup struct {
	pulumi.CustomResourceState

	// The list of endpoint objects. Fields documented below.
	EndpointConfigurations EndpointGroupEndpointConfigurationArrayOutput `pulumi:"endpointConfigurations"`
	// The name of the AWS Region where the endpoint group is located.
	EndpointGroupRegion pulumi.StringOutput `pulumi:"endpointGroupRegion"`
	// The time—10 seconds or 30 seconds—between each health check for an endpoint. The default value is 30.
	HealthCheckIntervalSeconds pulumi.IntPtrOutput `pulumi:"healthCheckIntervalSeconds"`
	HealthCheckPath            pulumi.StringOutput `pulumi:"healthCheckPath"`
	HealthCheckPort            pulumi.IntOutput    `pulumi:"healthCheckPort"`
	// The protocol that AWS Global Accelerator uses to check the health of endpoints that are part of this endpoint group. The default value is TCP.
	HealthCheckProtocol pulumi.StringPtrOutput `pulumi:"healthCheckProtocol"`
	// The Amazon Resource Name (ARN) of the listener.
	ListenerArn pulumi.StringOutput `pulumi:"listenerArn"`
	// The number of consecutive health checks required to set the state of a healthy endpoint to unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3.
	ThresholdCount pulumi.IntPtrOutput `pulumi:"thresholdCount"`
	// The percentage of traffic to send to an AWS Region. Additional traffic is distributed to other endpoint groups for this listener. The default value is 100.
	TrafficDialPercentage pulumi.Float64PtrOutput `pulumi:"trafficDialPercentage"`
}

Provides a Global Accelerator endpoint group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/globalaccelerator"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := globalaccelerator.NewEndpointGroup(ctx, "example", &globalaccelerator.EndpointGroupArgs{
			ListenerArn: pulumi.Any(aws_globalaccelerator_listener.Example.Id),
			EndpointConfigurations: globalaccelerator.EndpointGroupEndpointConfigurationArray{
				&globalaccelerator.EndpointGroupEndpointConfigurationArgs{
					EndpointId: pulumi.Any(aws_lb.Example.Arn),
					Weight:     pulumi.Int(100),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetEndpointGroup

func GetEndpointGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointGroupState, opts ...pulumi.ResourceOption) (*EndpointGroup, error)

GetEndpointGroup gets an existing EndpointGroup 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 NewEndpointGroup

func NewEndpointGroup(ctx *pulumi.Context,
	name string, args *EndpointGroupArgs, opts ...pulumi.ResourceOption) (*EndpointGroup, error)

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

type EndpointGroupArgs

type EndpointGroupArgs struct {
	// The list of endpoint objects. Fields documented below.
	EndpointConfigurations EndpointGroupEndpointConfigurationArrayInput
	// The name of the AWS Region where the endpoint group is located.
	EndpointGroupRegion pulumi.StringPtrInput
	// The time—10 seconds or 30 seconds—between each health check for an endpoint. The default value is 30.
	HealthCheckIntervalSeconds pulumi.IntPtrInput
	HealthCheckPath            pulumi.StringPtrInput
	HealthCheckPort            pulumi.IntPtrInput
	// The protocol that AWS Global Accelerator uses to check the health of endpoints that are part of this endpoint group. The default value is TCP.
	HealthCheckProtocol pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the listener.
	ListenerArn pulumi.StringInput
	// The number of consecutive health checks required to set the state of a healthy endpoint to unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3.
	ThresholdCount pulumi.IntPtrInput
	// The percentage of traffic to send to an AWS Region. Additional traffic is distributed to other endpoint groups for this listener. The default value is 100.
	TrafficDialPercentage pulumi.Float64PtrInput
}

The set of arguments for constructing a EndpointGroup resource.

func (EndpointGroupArgs) ElementType

func (EndpointGroupArgs) ElementType() reflect.Type

type EndpointGroupEndpointConfiguration

type EndpointGroupEndpointConfiguration struct {
	ClientIpPreservationEnabled *bool `pulumi:"clientIpPreservationEnabled"`
	// An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address allocation ID.
	EndpointId *string `pulumi:"endpointId"`
	// The weight associated with the endpoint. When you add weights to endpoints, you configure AWS Global Accelerator to route traffic based on proportions that you specify.
	Weight *int `pulumi:"weight"`
}

type EndpointGroupEndpointConfigurationArgs

type EndpointGroupEndpointConfigurationArgs struct {
	ClientIpPreservationEnabled pulumi.BoolPtrInput `pulumi:"clientIpPreservationEnabled"`
	// An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address allocation ID.
	EndpointId pulumi.StringPtrInput `pulumi:"endpointId"`
	// The weight associated with the endpoint. When you add weights to endpoints, you configure AWS Global Accelerator to route traffic based on proportions that you specify.
	Weight pulumi.IntPtrInput `pulumi:"weight"`
}

func (EndpointGroupEndpointConfigurationArgs) ElementType

func (EndpointGroupEndpointConfigurationArgs) ToEndpointGroupEndpointConfigurationOutput

func (i EndpointGroupEndpointConfigurationArgs) ToEndpointGroupEndpointConfigurationOutput() EndpointGroupEndpointConfigurationOutput

func (EndpointGroupEndpointConfigurationArgs) ToEndpointGroupEndpointConfigurationOutputWithContext

func (i EndpointGroupEndpointConfigurationArgs) ToEndpointGroupEndpointConfigurationOutputWithContext(ctx context.Context) EndpointGroupEndpointConfigurationOutput

type EndpointGroupEndpointConfigurationArray

type EndpointGroupEndpointConfigurationArray []EndpointGroupEndpointConfigurationInput

func (EndpointGroupEndpointConfigurationArray) ElementType

func (EndpointGroupEndpointConfigurationArray) ToEndpointGroupEndpointConfigurationArrayOutput

func (i EndpointGroupEndpointConfigurationArray) ToEndpointGroupEndpointConfigurationArrayOutput() EndpointGroupEndpointConfigurationArrayOutput

func (EndpointGroupEndpointConfigurationArray) ToEndpointGroupEndpointConfigurationArrayOutputWithContext

func (i EndpointGroupEndpointConfigurationArray) ToEndpointGroupEndpointConfigurationArrayOutputWithContext(ctx context.Context) EndpointGroupEndpointConfigurationArrayOutput

type EndpointGroupEndpointConfigurationArrayInput

type EndpointGroupEndpointConfigurationArrayInput interface {
	pulumi.Input

	ToEndpointGroupEndpointConfigurationArrayOutput() EndpointGroupEndpointConfigurationArrayOutput
	ToEndpointGroupEndpointConfigurationArrayOutputWithContext(context.Context) EndpointGroupEndpointConfigurationArrayOutput
}

EndpointGroupEndpointConfigurationArrayInput is an input type that accepts EndpointGroupEndpointConfigurationArray and EndpointGroupEndpointConfigurationArrayOutput values. You can construct a concrete instance of `EndpointGroupEndpointConfigurationArrayInput` via:

EndpointGroupEndpointConfigurationArray{ EndpointGroupEndpointConfigurationArgs{...} }

type EndpointGroupEndpointConfigurationArrayOutput

type EndpointGroupEndpointConfigurationArrayOutput struct{ *pulumi.OutputState }

func (EndpointGroupEndpointConfigurationArrayOutput) ElementType

func (EndpointGroupEndpointConfigurationArrayOutput) Index

func (EndpointGroupEndpointConfigurationArrayOutput) ToEndpointGroupEndpointConfigurationArrayOutput

func (o EndpointGroupEndpointConfigurationArrayOutput) ToEndpointGroupEndpointConfigurationArrayOutput() EndpointGroupEndpointConfigurationArrayOutput

func (EndpointGroupEndpointConfigurationArrayOutput) ToEndpointGroupEndpointConfigurationArrayOutputWithContext

func (o EndpointGroupEndpointConfigurationArrayOutput) ToEndpointGroupEndpointConfigurationArrayOutputWithContext(ctx context.Context) EndpointGroupEndpointConfigurationArrayOutput

type EndpointGroupEndpointConfigurationInput

type EndpointGroupEndpointConfigurationInput interface {
	pulumi.Input

	ToEndpointGroupEndpointConfigurationOutput() EndpointGroupEndpointConfigurationOutput
	ToEndpointGroupEndpointConfigurationOutputWithContext(context.Context) EndpointGroupEndpointConfigurationOutput
}

EndpointGroupEndpointConfigurationInput is an input type that accepts EndpointGroupEndpointConfigurationArgs and EndpointGroupEndpointConfigurationOutput values. You can construct a concrete instance of `EndpointGroupEndpointConfigurationInput` via:

EndpointGroupEndpointConfigurationArgs{...}

type EndpointGroupEndpointConfigurationOutput

type EndpointGroupEndpointConfigurationOutput struct{ *pulumi.OutputState }

func (EndpointGroupEndpointConfigurationOutput) ClientIpPreservationEnabled added in v3.3.0

func (o EndpointGroupEndpointConfigurationOutput) ClientIpPreservationEnabled() pulumi.BoolPtrOutput

func (EndpointGroupEndpointConfigurationOutput) ElementType

func (EndpointGroupEndpointConfigurationOutput) EndpointId

An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address allocation ID.

func (EndpointGroupEndpointConfigurationOutput) ToEndpointGroupEndpointConfigurationOutput

func (o EndpointGroupEndpointConfigurationOutput) ToEndpointGroupEndpointConfigurationOutput() EndpointGroupEndpointConfigurationOutput

func (EndpointGroupEndpointConfigurationOutput) ToEndpointGroupEndpointConfigurationOutputWithContext

func (o EndpointGroupEndpointConfigurationOutput) ToEndpointGroupEndpointConfigurationOutputWithContext(ctx context.Context) EndpointGroupEndpointConfigurationOutput

func (EndpointGroupEndpointConfigurationOutput) Weight

The weight associated with the endpoint. When you add weights to endpoints, you configure AWS Global Accelerator to route traffic based on proportions that you specify.

type EndpointGroupState

type EndpointGroupState struct {
	// The list of endpoint objects. Fields documented below.
	EndpointConfigurations EndpointGroupEndpointConfigurationArrayInput
	// The name of the AWS Region where the endpoint group is located.
	EndpointGroupRegion pulumi.StringPtrInput
	// The time—10 seconds or 30 seconds—between each health check for an endpoint. The default value is 30.
	HealthCheckIntervalSeconds pulumi.IntPtrInput
	HealthCheckPath            pulumi.StringPtrInput
	HealthCheckPort            pulumi.IntPtrInput
	// The protocol that AWS Global Accelerator uses to check the health of endpoints that are part of this endpoint group. The default value is TCP.
	HealthCheckProtocol pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the listener.
	ListenerArn pulumi.StringPtrInput
	// The number of consecutive health checks required to set the state of a healthy endpoint to unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3.
	ThresholdCount pulumi.IntPtrInput
	// The percentage of traffic to send to an AWS Region. Additional traffic is distributed to other endpoint groups for this listener. The default value is 100.
	TrafficDialPercentage pulumi.Float64PtrInput
}

func (EndpointGroupState) ElementType

func (EndpointGroupState) ElementType() reflect.Type

type Listener

type Listener struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of your accelerator.
	AcceleratorArn pulumi.StringOutput `pulumi:"acceleratorArn"`
	// Direct all requests from a user to the same endpoint. Valid values are `NONE`, `SOURCE_IP`. Default: `NONE`. If `NONE`, Global Accelerator uses the "five-tuple" properties of source IP address, source port, destination IP address, destination port, and protocol to select the hash value. If `SOURCE_IP`, Global Accelerator uses the "two-tuple" properties of source (client) IP address and destination IP address to select the hash value.
	ClientAffinity pulumi.StringPtrOutput `pulumi:"clientAffinity"`
	// The list of port ranges for the connections from clients to the accelerator. Fields documented below.
	PortRanges ListenerPortRangeArrayOutput `pulumi:"portRanges"`
	// The protocol for the connections from clients to the accelerator. Valid values are `TCP`, `UDP`.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
}

Provides a Global Accelerator listener.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/globalaccelerator"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleAccelerator, err := globalaccelerator.NewAccelerator(ctx, "exampleAccelerator", &globalaccelerator.AcceleratorArgs{
			IpAddressType: pulumi.String("IPV4"),
			Enabled:       pulumi.Bool(true),
			Attributes: &globalaccelerator.AcceleratorAttributesArgs{
				FlowLogsEnabled:  pulumi.Bool(true),
				FlowLogsS3Bucket: pulumi.String("example-bucket"),
				FlowLogsS3Prefix: pulumi.String("flow-logs/"),
			},
		})
		if err != nil {
			return err
		}
		_, err = globalaccelerator.NewListener(ctx, "exampleListener", &globalaccelerator.ListenerArgs{
			AcceleratorArn: exampleAccelerator.ID(),
			ClientAffinity: pulumi.String("SOURCE_IP"),
			Protocol:       pulumi.String("TCP"),
			PortRanges: globalaccelerator.ListenerPortRangeArray{
				&globalaccelerator.ListenerPortRangeArgs{
					FromPort: pulumi.Int(80),
					ToPort:   pulumi.Int(80),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetListener

func GetListener(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ListenerState, opts ...pulumi.ResourceOption) (*Listener, error)

GetListener gets an existing Listener 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 NewListener

func NewListener(ctx *pulumi.Context,
	name string, args *ListenerArgs, opts ...pulumi.ResourceOption) (*Listener, error)

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

type ListenerArgs

type ListenerArgs struct {
	// The Amazon Resource Name (ARN) of your accelerator.
	AcceleratorArn pulumi.StringInput
	// Direct all requests from a user to the same endpoint. Valid values are `NONE`, `SOURCE_IP`. Default: `NONE`. If `NONE`, Global Accelerator uses the "five-tuple" properties of source IP address, source port, destination IP address, destination port, and protocol to select the hash value. If `SOURCE_IP`, Global Accelerator uses the "two-tuple" properties of source (client) IP address and destination IP address to select the hash value.
	ClientAffinity pulumi.StringPtrInput
	// The list of port ranges for the connections from clients to the accelerator. Fields documented below.
	PortRanges ListenerPortRangeArrayInput
	// The protocol for the connections from clients to the accelerator. Valid values are `TCP`, `UDP`.
	Protocol pulumi.StringInput
}

The set of arguments for constructing a Listener resource.

func (ListenerArgs) ElementType

func (ListenerArgs) ElementType() reflect.Type

type ListenerPortRange

type ListenerPortRange struct {
	// The first port in the range of ports, inclusive.
	FromPort *int `pulumi:"fromPort"`
	// The last port in the range of ports, inclusive.
	ToPort *int `pulumi:"toPort"`
}

type ListenerPortRangeArgs

type ListenerPortRangeArgs struct {
	// The first port in the range of ports, inclusive.
	FromPort pulumi.IntPtrInput `pulumi:"fromPort"`
	// The last port in the range of ports, inclusive.
	ToPort pulumi.IntPtrInput `pulumi:"toPort"`
}

func (ListenerPortRangeArgs) ElementType

func (ListenerPortRangeArgs) ElementType() reflect.Type

func (ListenerPortRangeArgs) ToListenerPortRangeOutput

func (i ListenerPortRangeArgs) ToListenerPortRangeOutput() ListenerPortRangeOutput

func (ListenerPortRangeArgs) ToListenerPortRangeOutputWithContext

func (i ListenerPortRangeArgs) ToListenerPortRangeOutputWithContext(ctx context.Context) ListenerPortRangeOutput

type ListenerPortRangeArray

type ListenerPortRangeArray []ListenerPortRangeInput

func (ListenerPortRangeArray) ElementType

func (ListenerPortRangeArray) ElementType() reflect.Type

func (ListenerPortRangeArray) ToListenerPortRangeArrayOutput

func (i ListenerPortRangeArray) ToListenerPortRangeArrayOutput() ListenerPortRangeArrayOutput

func (ListenerPortRangeArray) ToListenerPortRangeArrayOutputWithContext

func (i ListenerPortRangeArray) ToListenerPortRangeArrayOutputWithContext(ctx context.Context) ListenerPortRangeArrayOutput

type ListenerPortRangeArrayInput

type ListenerPortRangeArrayInput interface {
	pulumi.Input

	ToListenerPortRangeArrayOutput() ListenerPortRangeArrayOutput
	ToListenerPortRangeArrayOutputWithContext(context.Context) ListenerPortRangeArrayOutput
}

ListenerPortRangeArrayInput is an input type that accepts ListenerPortRangeArray and ListenerPortRangeArrayOutput values. You can construct a concrete instance of `ListenerPortRangeArrayInput` via:

ListenerPortRangeArray{ ListenerPortRangeArgs{...} }

type ListenerPortRangeArrayOutput

type ListenerPortRangeArrayOutput struct{ *pulumi.OutputState }

func (ListenerPortRangeArrayOutput) ElementType

func (ListenerPortRangeArrayOutput) Index

func (ListenerPortRangeArrayOutput) ToListenerPortRangeArrayOutput

func (o ListenerPortRangeArrayOutput) ToListenerPortRangeArrayOutput() ListenerPortRangeArrayOutput

func (ListenerPortRangeArrayOutput) ToListenerPortRangeArrayOutputWithContext

func (o ListenerPortRangeArrayOutput) ToListenerPortRangeArrayOutputWithContext(ctx context.Context) ListenerPortRangeArrayOutput

type ListenerPortRangeInput

type ListenerPortRangeInput interface {
	pulumi.Input

	ToListenerPortRangeOutput() ListenerPortRangeOutput
	ToListenerPortRangeOutputWithContext(context.Context) ListenerPortRangeOutput
}

ListenerPortRangeInput is an input type that accepts ListenerPortRangeArgs and ListenerPortRangeOutput values. You can construct a concrete instance of `ListenerPortRangeInput` via:

ListenerPortRangeArgs{...}

type ListenerPortRangeOutput

type ListenerPortRangeOutput struct{ *pulumi.OutputState }

func (ListenerPortRangeOutput) ElementType

func (ListenerPortRangeOutput) ElementType() reflect.Type

func (ListenerPortRangeOutput) FromPort

The first port in the range of ports, inclusive.

func (ListenerPortRangeOutput) ToListenerPortRangeOutput

func (o ListenerPortRangeOutput) ToListenerPortRangeOutput() ListenerPortRangeOutput

func (ListenerPortRangeOutput) ToListenerPortRangeOutputWithContext

func (o ListenerPortRangeOutput) ToListenerPortRangeOutputWithContext(ctx context.Context) ListenerPortRangeOutput

func (ListenerPortRangeOutput) ToPort

The last port in the range of ports, inclusive.

type ListenerState

type ListenerState struct {
	// The Amazon Resource Name (ARN) of your accelerator.
	AcceleratorArn pulumi.StringPtrInput
	// Direct all requests from a user to the same endpoint. Valid values are `NONE`, `SOURCE_IP`. Default: `NONE`. If `NONE`, Global Accelerator uses the "five-tuple" properties of source IP address, source port, destination IP address, destination port, and protocol to select the hash value. If `SOURCE_IP`, Global Accelerator uses the "two-tuple" properties of source (client) IP address and destination IP address to select the hash value.
	ClientAffinity pulumi.StringPtrInput
	// The list of port ranges for the connections from clients to the accelerator. Fields documented below.
	PortRanges ListenerPortRangeArrayInput
	// The protocol for the connections from clients to the accelerator. Valid values are `TCP`, `UDP`.
	Protocol pulumi.StringPtrInput
}

func (ListenerState) ElementType

func (ListenerState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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