globalaccelerator

package
v3.15.0 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 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
	})
}

```

## Import

Global Accelerator accelerators can be imported using the `id`, e.g.

```sh

$ pulumi import aws:globalaccelerator/accelerator:Accelerator example arn:aws:globalaccelerator::111111111111:accelerator/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

```

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.

func (Accelerator) ElementType added in v3.13.0

func (Accelerator) ElementType() reflect.Type

func (Accelerator) ToAcceleratorOutput added in v3.13.0

func (i Accelerator) ToAcceleratorOutput() AcceleratorOutput

func (Accelerator) ToAcceleratorOutputWithContext added in v3.13.0

func (i Accelerator) ToAcceleratorOutputWithContext(ctx context.Context) AcceleratorOutput

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 AcceleratorInput added in v3.13.0

type AcceleratorInput interface {
	pulumi.Input

	ToAcceleratorOutput() AcceleratorOutput
	ToAcceleratorOutputWithContext(ctx context.Context) AcceleratorOutput
}

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 AcceleratorOutput added in v3.13.0

type AcceleratorOutput struct {
	*pulumi.OutputState
}

func (AcceleratorOutput) ElementType added in v3.13.0

func (AcceleratorOutput) ElementType() reflect.Type

func (AcceleratorOutput) ToAcceleratorOutput added in v3.13.0

func (o AcceleratorOutput) ToAcceleratorOutput() AcceleratorOutput

func (AcceleratorOutput) ToAcceleratorOutputWithContext added in v3.13.0

func (o AcceleratorOutput) ToAcceleratorOutputWithContext(ctx context.Context) AcceleratorOutput

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 Amazon Resource Name (ARN) of the endpoint group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// 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"`
	// Override specific listener ports used to route traffic to endpoints that are part of this endpoint group. Fields documented below.
	PortOverrides EndpointGroupPortOverrideArrayOutput `pulumi:"portOverrides"`
	// 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
	})
}

```

## Import

Global Accelerator endpoint groups can be imported using the `id`, e.g.

```sh

$ pulumi import aws:globalaccelerator/endpointGroup:EndpointGroup example arn:aws:globalaccelerator::111111111111:accelerator/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/listener/xxxxxxx/endpoint-group/xxxxxxxx

```

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.

func (EndpointGroup) ElementType added in v3.13.0

func (EndpointGroup) ElementType() reflect.Type

func (EndpointGroup) ToEndpointGroupOutput added in v3.13.0

func (i EndpointGroup) ToEndpointGroupOutput() EndpointGroupOutput

func (EndpointGroup) ToEndpointGroupOutputWithContext added in v3.13.0

func (i EndpointGroup) ToEndpointGroupOutputWithContext(ctx context.Context) EndpointGroupOutput

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
	// Override specific listener ports used to route traffic to endpoints that are part of this endpoint group. Fields documented below.
	PortOverrides EndpointGroupPortOverrideArrayInput
	// 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 EndpointGroupInput added in v3.13.0

type EndpointGroupInput interface {
	pulumi.Input

	ToEndpointGroupOutput() EndpointGroupOutput
	ToEndpointGroupOutputWithContext(ctx context.Context) EndpointGroupOutput
}

type EndpointGroupOutput added in v3.13.0

type EndpointGroupOutput struct {
	*pulumi.OutputState
}

func (EndpointGroupOutput) ElementType added in v3.13.0

func (EndpointGroupOutput) ElementType() reflect.Type

func (EndpointGroupOutput) ToEndpointGroupOutput added in v3.13.0

func (o EndpointGroupOutput) ToEndpointGroupOutput() EndpointGroupOutput

func (EndpointGroupOutput) ToEndpointGroupOutputWithContext added in v3.13.0

func (o EndpointGroupOutput) ToEndpointGroupOutputWithContext(ctx context.Context) EndpointGroupOutput

type EndpointGroupPortOverride added in v3.14.0

type EndpointGroupPortOverride struct {
	// The endpoint port that you want a listener port to be mapped to. This is the port on the endpoint, such as the Application Load Balancer or Amazon EC2 instance.
	EndpointPort int `pulumi:"endpointPort"`
	// The listener port that you want to map to a specific endpoint port. This is the port that user traffic arrives to the Global Accelerator on.
	ListenerPort int `pulumi:"listenerPort"`
}

type EndpointGroupPortOverrideArgs added in v3.14.0

type EndpointGroupPortOverrideArgs struct {
	// The endpoint port that you want a listener port to be mapped to. This is the port on the endpoint, such as the Application Load Balancer or Amazon EC2 instance.
	EndpointPort pulumi.IntInput `pulumi:"endpointPort"`
	// The listener port that you want to map to a specific endpoint port. This is the port that user traffic arrives to the Global Accelerator on.
	ListenerPort pulumi.IntInput `pulumi:"listenerPort"`
}

func (EndpointGroupPortOverrideArgs) ElementType added in v3.14.0

func (EndpointGroupPortOverrideArgs) ToEndpointGroupPortOverrideOutput added in v3.14.0

func (i EndpointGroupPortOverrideArgs) ToEndpointGroupPortOverrideOutput() EndpointGroupPortOverrideOutput

func (EndpointGroupPortOverrideArgs) ToEndpointGroupPortOverrideOutputWithContext added in v3.14.0

func (i EndpointGroupPortOverrideArgs) ToEndpointGroupPortOverrideOutputWithContext(ctx context.Context) EndpointGroupPortOverrideOutput

type EndpointGroupPortOverrideArray added in v3.14.0

type EndpointGroupPortOverrideArray []EndpointGroupPortOverrideInput

func (EndpointGroupPortOverrideArray) ElementType added in v3.14.0

func (EndpointGroupPortOverrideArray) ToEndpointGroupPortOverrideArrayOutput added in v3.14.0

func (i EndpointGroupPortOverrideArray) ToEndpointGroupPortOverrideArrayOutput() EndpointGroupPortOverrideArrayOutput

func (EndpointGroupPortOverrideArray) ToEndpointGroupPortOverrideArrayOutputWithContext added in v3.14.0

func (i EndpointGroupPortOverrideArray) ToEndpointGroupPortOverrideArrayOutputWithContext(ctx context.Context) EndpointGroupPortOverrideArrayOutput

type EndpointGroupPortOverrideArrayInput added in v3.14.0

type EndpointGroupPortOverrideArrayInput interface {
	pulumi.Input

	ToEndpointGroupPortOverrideArrayOutput() EndpointGroupPortOverrideArrayOutput
	ToEndpointGroupPortOverrideArrayOutputWithContext(context.Context) EndpointGroupPortOverrideArrayOutput
}

EndpointGroupPortOverrideArrayInput is an input type that accepts EndpointGroupPortOverrideArray and EndpointGroupPortOverrideArrayOutput values. You can construct a concrete instance of `EndpointGroupPortOverrideArrayInput` via:

EndpointGroupPortOverrideArray{ EndpointGroupPortOverrideArgs{...} }

type EndpointGroupPortOverrideArrayOutput added in v3.14.0

type EndpointGroupPortOverrideArrayOutput struct{ *pulumi.OutputState }

func (EndpointGroupPortOverrideArrayOutput) ElementType added in v3.14.0

func (EndpointGroupPortOverrideArrayOutput) Index added in v3.14.0

func (EndpointGroupPortOverrideArrayOutput) ToEndpointGroupPortOverrideArrayOutput added in v3.14.0

func (o EndpointGroupPortOverrideArrayOutput) ToEndpointGroupPortOverrideArrayOutput() EndpointGroupPortOverrideArrayOutput

func (EndpointGroupPortOverrideArrayOutput) ToEndpointGroupPortOverrideArrayOutputWithContext added in v3.14.0

func (o EndpointGroupPortOverrideArrayOutput) ToEndpointGroupPortOverrideArrayOutputWithContext(ctx context.Context) EndpointGroupPortOverrideArrayOutput

type EndpointGroupPortOverrideInput added in v3.14.0

type EndpointGroupPortOverrideInput interface {
	pulumi.Input

	ToEndpointGroupPortOverrideOutput() EndpointGroupPortOverrideOutput
	ToEndpointGroupPortOverrideOutputWithContext(context.Context) EndpointGroupPortOverrideOutput
}

EndpointGroupPortOverrideInput is an input type that accepts EndpointGroupPortOverrideArgs and EndpointGroupPortOverrideOutput values. You can construct a concrete instance of `EndpointGroupPortOverrideInput` via:

EndpointGroupPortOverrideArgs{...}

type EndpointGroupPortOverrideOutput added in v3.14.0

type EndpointGroupPortOverrideOutput struct{ *pulumi.OutputState }

func (EndpointGroupPortOverrideOutput) ElementType added in v3.14.0

func (EndpointGroupPortOverrideOutput) EndpointPort added in v3.14.0

The endpoint port that you want a listener port to be mapped to. This is the port on the endpoint, such as the Application Load Balancer or Amazon EC2 instance.

func (EndpointGroupPortOverrideOutput) ListenerPort added in v3.14.0

The listener port that you want to map to a specific endpoint port. This is the port that user traffic arrives to the Global Accelerator on.

func (EndpointGroupPortOverrideOutput) ToEndpointGroupPortOverrideOutput added in v3.14.0

func (o EndpointGroupPortOverrideOutput) ToEndpointGroupPortOverrideOutput() EndpointGroupPortOverrideOutput

func (EndpointGroupPortOverrideOutput) ToEndpointGroupPortOverrideOutputWithContext added in v3.14.0

func (o EndpointGroupPortOverrideOutput) ToEndpointGroupPortOverrideOutputWithContext(ctx context.Context) EndpointGroupPortOverrideOutput

type EndpointGroupState

type EndpointGroupState struct {
	// The Amazon Resource Name (ARN) of the endpoint group.
	Arn pulumi.StringPtrInput
	// 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
	// Override specific listener ports used to route traffic to endpoints that are part of this endpoint group. Fields documented below.
	PortOverrides EndpointGroupPortOverrideArrayInput
	// 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
	})
}

```

## Import

Global Accelerator listeners can be imported using the `id`, e.g.

```sh

$ pulumi import aws:globalaccelerator/listener:Listener example arn:aws:globalaccelerator::111111111111:accelerator/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/listener/xxxxxxxx

```

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.

func (Listener) ElementType added in v3.13.0

func (Listener) ElementType() reflect.Type

func (Listener) ToListenerOutput added in v3.13.0

func (i Listener) ToListenerOutput() ListenerOutput

func (Listener) ToListenerOutputWithContext added in v3.13.0

func (i Listener) ToListenerOutputWithContext(ctx context.Context) ListenerOutput

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 ListenerInput added in v3.13.0

type ListenerInput interface {
	pulumi.Input

	ToListenerOutput() ListenerOutput
	ToListenerOutputWithContext(ctx context.Context) ListenerOutput
}

type ListenerOutput added in v3.13.0

type ListenerOutput struct {
	*pulumi.OutputState
}

func (ListenerOutput) ElementType added in v3.13.0

func (ListenerOutput) ElementType() reflect.Type

func (ListenerOutput) ToListenerOutput added in v3.13.0

func (o ListenerOutput) ToListenerOutput() ListenerOutput

func (ListenerOutput) ToListenerOutputWithContext added in v3.13.0

func (o ListenerOutput) ToListenerOutputWithContext(ctx context.Context) ListenerOutput

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