[][src]Crate rusoto_globalaccelerator

AWS Global Accelerator

This is the AWS Global Accelerator API Reference. This guide is for developers who need detailed information about AWS Global Accelerator API actions, data types, and errors. For more information about Global Accelerator features, see the AWS Global Accelerator Developer Guide.

AWS Global Accelerator is a service in which you create accelerators to improve the performance of your applications for local and global users. Depending on the type of accelerator you choose, you can gain additional benefits.

  • By using a standard accelerator, you can improve availability of your internet applications that are used by a global audience. With a standard accelerator, Global Accelerator directs traffic to optimal endpoints over the AWS global network.

  • For other scenarios, you might choose a custom routing accelerator. With a custom routing accelerator, you can use application logic to directly map one or more users to a specific endpoint among many endpoints.

Global Accelerator is a global service that supports endpoints in multiple AWS Regions but you must specify the US West (Oregon) Region to create or update accelerators.

By default, Global Accelerator provides you with two static IP addresses that you associate with your accelerator. With a standard accelerator, instead of using the IP addresses that Global Accelerator provides, you can configure these entry points to be IPv4 addresses from your own IP address ranges that you bring to Global Accelerator. The static IP addresses are anycast from the AWS edge network. For a standard accelerator, they distribute incoming application traffic across multiple endpoint resources in multiple AWS Regions, which increases the availability of your applications. Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic IP addresses that are located in one AWS Region or multiple Regions. For custom routing accelerators, you map traffic that arrives to the static IP addresses to specific Amazon EC2 servers in endpoints that are virtual private cloud (VPC) subnets.

The static IP addresses remain assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to it, so you can no longer route traffic by using them. You can use IAM policies like tag-based permissions with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, see Tag-based policies.

For standard accelerators, Global Accelerator uses the AWS global network to route traffic to the optimal regional endpoint based on health, client location, and policies that you configure. The service reacts instantly to changes in health or configuration to ensure that internet traffic from clients is always directed to healthy endpoints.

For a list of the AWS Regions where Global Accelerator and other services are currently supported, see the AWS Region Table.

AWS Global Accelerator includes the following components:

Static IP addresses

Global Accelerator provides you with a set of two static IP addresses that are anycast from the AWS edge network. If you bring your own IP address range to AWS (BYOIP) to use with a standard accelerator, you can instead assign IP addresses from your own pool to use with your accelerator. For more information, see Bring your own IP addresses (BYOIP) in AWS Global Accelerator.

The IP addresses serve as single fixed entry points for your clients. If you already have Elastic Load Balancing load balancers, Amazon EC2 instances, or Elastic IP address resources set up for your applications, you can easily add those to a standard accelerator in Global Accelerator. This allows Global Accelerator to use static IP addresses to access the resources.

The static IP addresses remain assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to it, so you can no longer route traffic by using them. You can use IAM policies like tag-based permissions with Global Accelerator to delete an accelerator. For more information, see Tag-based policies.

Accelerator

An accelerator directs traffic to endpoints over the AWS global network to improve the performance of your internet applications. Each accelerator includes one or more listeners.

There are two types of accelerators:

  • A standard accelerator directs traffic to the optimal AWS endpoint based on several factors, including the user’s location, the health of the endpoint, and the endpoint weights that you configure. This improves the availability and performance of your applications. Endpoints can be Network Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic IP addresses.

  • A custom routing accelerator directs traffic to one of possibly thousands of Amazon EC2 instances running in a single or multiple virtual private clouds (VPCs). With custom routing, listener ports are mapped to statically associate port ranges with VPC subnets, which allows Global Accelerator to determine an EC2 instance IP address at the time of connection. By default, all port mapping destinations in a VPC subnet can't receive traffic. You can choose to configure all destinations in the subnet to receive traffic, or to specify individual port mappings that can receive traffic.

For more information, see Types of accelerators.

DNS name

Global Accelerator assigns each accelerator a default Domain Name System (DNS) name, similar to a1234567890abcdef.awsglobalaccelerator.com, that points to the static IP addresses that Global Accelerator assigns to you or that you choose from your own IP address range. Depending on the use case, you can use your accelerator's static IP addresses or DNS name to route traffic to your accelerator, or set up DNS records to route traffic using your own custom domain name.

Network zone

A network zone services the static IP addresses for your accelerator from a unique IP subnet. Similar to an AWS Availability Zone, a network zone is an isolated unit with its own set of physical infrastructure. When you configure an accelerator, by default, Global Accelerator allocates two IPv4 addresses for it. If one IP address from a network zone becomes unavailable due to IP address blocking by certain client networks, or network disruptions, then client applications can retry on the healthy static IP address from the other isolated network zone.

Listener

A listener processes inbound connections from clients to Global Accelerator, based on the port (or port range) and protocol (or protocols) that you configure. A listener can be configured for TCP, UDP, or both TCP and UDP protocols. Each listener has one or more endpoint groups associated with it, and traffic is forwarded to endpoints in one of the groups. You associate endpoint groups with listeners by specifying the Regions that you want to distribute traffic to. With a standard accelerator, traffic is distributed to optimal endpoints within the endpoint groups associated with a listener.

Endpoint group

Each endpoint group is associated with a specific AWS Region. Endpoint groups include one or more endpoints in the Region. With a standard accelerator, you can increase or reduce the percentage of traffic that would be otherwise directed to an endpoint group by adjusting a setting called a traffic dial. The traffic dial lets you easily do performance testing or blue/green deployment testing, for example, for new releases across different AWS Regions.

Endpoint

An endpoint is a resource that Global Accelerator directs traffic to.

Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic IP addresses. An Application Load Balancer endpoint can be internet-facing or internal. Traffic for standard accelerators is routed to endpoints based on the health of the endpoint along with configuration options that you choose, such as endpoint weights. For each endpoint, you can configure weights, which are numbers that you can use to specify the proportion of traffic to route to each one. This can be useful, for example, to do performance testing within a Region.

Endpoints for custom routing accelerators are virtual private cloud (VPC) subnets with one or many EC2 instances.

If you're using the service, you're probably looking for GlobalAcceleratorClient and GlobalAccelerator.

Structs

Accelerator

An accelerator is a complex type that includes one or more listeners that process inbound connections and then direct traffic to one or more endpoint groups, each of which includes endpoints, such as load balancers.

AcceleratorAttributes

Attributes of an accelerator.

AddCustomRoutingEndpointsRequest
AddCustomRoutingEndpointsResponse
AdvertiseByoipCidrRequest
AdvertiseByoipCidrResponse
AllowCustomRoutingTrafficRequest
ByoipCidr

Information about an IP address range that is provisioned for use with your AWS resources through bring your own IP address (BYOIP).

The following describes each BYOIP State that your IP address range can be in.

  • PENDINGPROVISIONING — You’ve submitted a request to provision an IP address range but it is not yet provisioned with AWS Global Accelerator.

  • READY — The address range is provisioned with AWS Global Accelerator and can be advertised.

  • PENDINGADVERTISING — You’ve submitted a request for AWS Global Accelerator to advertise an address range but it is not yet being advertised.

  • ADVERTISING — The address range is being advertised by AWS Global Accelerator.

  • PENDINGWITHDRAWING — You’ve submitted a request to withdraw an address range from being advertised but it is still being advertised by AWS Global Accelerator.

  • PENDINGDEPROVISIONING — You’ve submitted a request to deprovision an address range from AWS Global Accelerator but it is still provisioned.

  • DEPROVISIONED — The address range is deprovisioned from AWS Global Accelerator.

  • FAILEDPROVISION — The request to provision the address range from AWS Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact AWS support.

  • FAILEDADVERTISING — The request for AWS Global Accelerator to advertise the address range was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact AWS support.

  • FAILEDWITHDRAW — The request to withdraw the address range from advertising by AWS Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact AWS support.

  • FAILEDDEPROVISION — The request to deprovision the address range from AWS Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact AWS support.

ByoipCidrEvent

A complex type that contains a Message and a Timestamp value for changes that you make in the status an IP address range that you bring to AWS Global Accelerator through bring your own IP address (BYOIP).

CidrAuthorizationContext

Provides authorization for Amazon to bring a specific IP address range to a specific AWS account using bring your own IP addresses (BYOIP).

For more information, see Bring Your Own IP Addresses (BYOIP) in the AWS Global Accelerator Developer Guide.

CreateAcceleratorRequest
CreateAcceleratorResponse
CreateCustomRoutingAcceleratorRequest
CreateCustomRoutingAcceleratorResponse
CreateCustomRoutingEndpointGroupRequest
CreateCustomRoutingEndpointGroupResponse
CreateCustomRoutingListenerRequest
CreateCustomRoutingListenerResponse
CreateEndpointGroupRequest
CreateEndpointGroupResponse
CreateListenerRequest
CreateListenerResponse
CustomRoutingAccelerator

Attributes of a custom routing accelerator.

CustomRoutingAcceleratorAttributes

Attributes of a custom routing accelerator.

CustomRoutingDestinationConfiguration

For a custom routing accelerator, sets the port range and protocol for all endpoints (virtual private cloud subnets) in an endpoint group to accept client traffic on.

CustomRoutingDestinationDescription

For a custom routing accelerator, describes the port range and protocol for all endpoints (virtual private cloud subnets) in an endpoint group to accept client traffic on.

CustomRoutingEndpointConfiguration

The list of endpoint objects. For custom routing, this is a list of virtual private cloud (VPC) subnet IDs.

CustomRoutingEndpointDescription

A complex type for an endpoint for a custom routing accelerator. Each endpoint group can include one or more endpoints, which are virtual private cloud (VPC) subnets.

CustomRoutingEndpointGroup

A complex type for the endpoint group for a custom routing accelerator. An AWS Region can have only one endpoint group for a specific listener.

CustomRoutingListener

A complex type for a listener for a custom routing accelerator.

DeleteAcceleratorRequest
DeleteCustomRoutingAcceleratorRequest
DeleteCustomRoutingEndpointGroupRequest
DeleteCustomRoutingListenerRequest
DeleteEndpointGroupRequest
DeleteListenerRequest
DenyCustomRoutingTrafficRequest
DeprovisionByoipCidrRequest
DeprovisionByoipCidrResponse
DescribeAcceleratorAttributesRequest
DescribeAcceleratorAttributesResponse
DescribeAcceleratorRequest
DescribeAcceleratorResponse
DescribeCustomRoutingAcceleratorAttributesRequest
DescribeCustomRoutingAcceleratorAttributesResponse
DescribeCustomRoutingAcceleratorRequest
DescribeCustomRoutingAcceleratorResponse
DescribeCustomRoutingEndpointGroupRequest
DescribeCustomRoutingEndpointGroupResponse
DescribeCustomRoutingListenerRequest
DescribeCustomRoutingListenerResponse
DescribeEndpointGroupRequest
DescribeEndpointGroupResponse
DescribeListenerRequest
DescribeListenerResponse
DestinationPortMapping

The port mappings for a specified endpoint IP address (destination).

EndpointConfiguration

A complex type for endpoints. A resource must be valid and active when you add it as an endpoint.

EndpointDescription

A complex type for an endpoint. Each endpoint group can include one or more endpoints, such as load balancers.

EndpointGroup

A complex type for the endpoint group. An AWS Region can have only one endpoint group for a specific listener.

GlobalAcceleratorClient

A client for the AWS Global Accelerator API.

IpSet

A complex type for the set of IP addresses for an accelerator.

ListAcceleratorsRequest
ListAcceleratorsResponse
ListByoipCidrsRequest
ListByoipCidrsResponse
ListCustomRoutingAcceleratorsRequest
ListCustomRoutingAcceleratorsResponse
ListCustomRoutingEndpointGroupsRequest
ListCustomRoutingEndpointGroupsResponse
ListCustomRoutingListenersRequest
ListCustomRoutingListenersResponse
ListCustomRoutingPortMappingsByDestinationRequest
ListCustomRoutingPortMappingsByDestinationResponse
ListCustomRoutingPortMappingsRequest
ListCustomRoutingPortMappingsResponse
ListEndpointGroupsRequest
ListEndpointGroupsResponse
ListListenersRequest
ListListenersResponse
ListTagsForResourceRequest
ListTagsForResourceResponse
Listener

A complex type for a listener.

PortMapping

Returns the ports and associated IP addresses and ports of Amazon EC2 instances in your virtual private cloud (VPC) subnets. Custom routing is a port mapping protocol in AWS Global Accelerator that statically associates port ranges with VPC subnets, which allows Global Accelerator to route to specific instances and ports within one or more subnets.

PortOverride

Override specific listener ports used to route traffic to endpoints that are part of an endpoint group. For example, you can create a port override in which the listener receives user traffic on ports 80 and 443, but your accelerator routes that traffic to ports 1080 and 1443, respectively, on the endpoints.

For more information, see Port overrides in the AWS Global Accelerator Developer Guide.

PortRange

A complex type for a range of ports for a listener.

ProvisionByoipCidrRequest
ProvisionByoipCidrResponse
RemoveCustomRoutingEndpointsRequest
SocketAddress

An IP address/port combination.

Tag

A complex type that contains a Tag key and Tag value.

TagResourceRequest
TagResourceResponse
UntagResourceRequest
UntagResourceResponse
UpdateAcceleratorAttributesRequest
UpdateAcceleratorAttributesResponse
UpdateAcceleratorRequest
UpdateAcceleratorResponse
UpdateCustomRoutingAcceleratorAttributesRequest
UpdateCustomRoutingAcceleratorAttributesResponse
UpdateCustomRoutingAcceleratorRequest
UpdateCustomRoutingAcceleratorResponse
UpdateCustomRoutingListenerRequest
UpdateCustomRoutingListenerResponse
UpdateEndpointGroupRequest
UpdateEndpointGroupResponse
UpdateListenerRequest
UpdateListenerResponse
WithdrawByoipCidrRequest
WithdrawByoipCidrResponse

Enums

AddCustomRoutingEndpointsError

Errors returned by AddCustomRoutingEndpoints

AdvertiseByoipCidrError

Errors returned by AdvertiseByoipCidr

AllowCustomRoutingTrafficError

Errors returned by AllowCustomRoutingTraffic

CreateAcceleratorError

Errors returned by CreateAccelerator

CreateCustomRoutingAcceleratorError

Errors returned by CreateCustomRoutingAccelerator

CreateCustomRoutingEndpointGroupError

Errors returned by CreateCustomRoutingEndpointGroup

CreateCustomRoutingListenerError

Errors returned by CreateCustomRoutingListener

CreateEndpointGroupError

Errors returned by CreateEndpointGroup

CreateListenerError

Errors returned by CreateListener

DeleteAcceleratorError

Errors returned by DeleteAccelerator

DeleteCustomRoutingAcceleratorError

Errors returned by DeleteCustomRoutingAccelerator

DeleteCustomRoutingEndpointGroupError

Errors returned by DeleteCustomRoutingEndpointGroup

DeleteCustomRoutingListenerError

Errors returned by DeleteCustomRoutingListener

DeleteEndpointGroupError

Errors returned by DeleteEndpointGroup

DeleteListenerError

Errors returned by DeleteListener

DenyCustomRoutingTrafficError

Errors returned by DenyCustomRoutingTraffic

DeprovisionByoipCidrError

Errors returned by DeprovisionByoipCidr

DescribeAcceleratorAttributesError

Errors returned by DescribeAcceleratorAttributes

DescribeAcceleratorError

Errors returned by DescribeAccelerator

DescribeCustomRoutingAcceleratorAttributesError

Errors returned by DescribeCustomRoutingAcceleratorAttributes

DescribeCustomRoutingAcceleratorError

Errors returned by DescribeCustomRoutingAccelerator

DescribeCustomRoutingEndpointGroupError

Errors returned by DescribeCustomRoutingEndpointGroup

DescribeCustomRoutingListenerError

Errors returned by DescribeCustomRoutingListener

DescribeEndpointGroupError

Errors returned by DescribeEndpointGroup

DescribeListenerError

Errors returned by DescribeListener

ListAcceleratorsError

Errors returned by ListAccelerators

ListByoipCidrsError

Errors returned by ListByoipCidrs

ListCustomRoutingAcceleratorsError

Errors returned by ListCustomRoutingAccelerators

ListCustomRoutingEndpointGroupsError

Errors returned by ListCustomRoutingEndpointGroups

ListCustomRoutingListenersError

Errors returned by ListCustomRoutingListeners

ListCustomRoutingPortMappingsByDestinationError

Errors returned by ListCustomRoutingPortMappingsByDestination

ListCustomRoutingPortMappingsError

Errors returned by ListCustomRoutingPortMappings

ListEndpointGroupsError

Errors returned by ListEndpointGroups

ListListenersError

Errors returned by ListListeners

ListTagsForResourceError

Errors returned by ListTagsForResource

ProvisionByoipCidrError

Errors returned by ProvisionByoipCidr

RemoveCustomRoutingEndpointsError

Errors returned by RemoveCustomRoutingEndpoints

TagResourceError

Errors returned by TagResource

UntagResourceError

Errors returned by UntagResource

UpdateAcceleratorAttributesError

Errors returned by UpdateAcceleratorAttributes

UpdateAcceleratorError

Errors returned by UpdateAccelerator

UpdateCustomRoutingAcceleratorAttributesError

Errors returned by UpdateCustomRoutingAcceleratorAttributes

UpdateCustomRoutingAcceleratorError

Errors returned by UpdateCustomRoutingAccelerator

UpdateCustomRoutingListenerError

Errors returned by UpdateCustomRoutingListener

UpdateEndpointGroupError

Errors returned by UpdateEndpointGroup

UpdateListenerError

Errors returned by UpdateListener

WithdrawByoipCidrError

Errors returned by WithdrawByoipCidr

Traits

GlobalAccelerator

Trait representing the capabilities of the AWS Global Accelerator API. AWS Global Accelerator clients implement this trait.