1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3// Package globalaccelerator provides the client and types for making API
4// requests to AWS Global Accelerator.
5//
6// This is the AWS Global Accelerator API Reference. This guide is for developers
7// who need detailed information about AWS Global Accelerator API actions, data
8// types, and errors. For more information about Global Accelerator features,
9// see the AWS Global Accelerator Developer Guide (https://docs.aws.amazon.com/global-accelerator/latest/dg/Welcome.html).
10//
11// AWS Global Accelerator is a service in which you create accelerators to improve
12// the performance of your applications for local and global users. Depending
13// on the type of accelerator you choose, you can gain additional benefits.
14//
15//    * By using a standard accelerator, you can improve availability of your
16//    internet applications that are used by a global audience. With a standard
17//    accelerator, Global Accelerator directs traffic to optimal endpoints over
18//    the AWS global network.
19//
20//    * For other scenarios, you might choose a custom routing accelerator.
21//    With a custom routing accelerator, you can use application logic to directly
22//    map one or more users to a specific endpoint among many endpoints.
23//
24// Global Accelerator is a global service that supports endpoints in multiple
25// AWS Regions but you must specify the US West (Oregon) Region to create or
26// update accelerators.
27//
28// By default, Global Accelerator provides you with two static IP addresses
29// that you associate with your accelerator. With a standard accelerator, instead
30// of using the IP addresses that Global Accelerator provides, you can configure
31// these entry points to be IPv4 addresses from your own IP address ranges that
32// you bring to Global Accelerator. The static IP addresses are anycast from
33// the AWS edge network. For a standard accelerator, they distribute incoming
34// application traffic across multiple endpoint resources in multiple AWS Regions,
35// which increases the availability of your applications. Endpoints for standard
36// accelerators can be Network Load Balancers, Application Load Balancers, Amazon
37// EC2 instances, or Elastic IP addresses that are located in one AWS Region
38// or multiple Regions. For custom routing accelerators, you map traffic that
39// arrives to the static IP addresses to specific Amazon EC2 servers in endpoints
40// that are virtual private cloud (VPC) subnets.
41//
42// The static IP addresses remain assigned to your accelerator for as long as
43// it exists, even if you disable the accelerator and it no longer accepts or
44// routes traffic. However, when you delete an accelerator, you lose the static
45// IP addresses that are assigned to it, so you can no longer route traffic
46// by using them. You can use IAM policies like tag-based permissions with Global
47// Accelerator to limit the users who have permissions to delete an accelerator.
48// For more information, see Tag-based policies (https://docs.aws.amazon.com/global-accelerator/latest/dg/access-control-manage-access-tag-policies.html).
49//
50// For standard accelerators, Global Accelerator uses the AWS global network
51// to route traffic to the optimal regional endpoint based on health, client
52// location, and policies that you configure. The service reacts instantly to
53// changes in health or configuration to ensure that internet traffic from clients
54// is always directed to healthy endpoints.
55//
56// For a list of the AWS Regions where Global Accelerator and other services
57// are currently supported, see the AWS Region Table (https://docs.aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).
58//
59// AWS Global Accelerator includes the following components:
60//
61// Static IP addresses
62//
63// Global Accelerator provides you with a set of two static IP addresses that
64// are anycast from the AWS edge network. If you bring your own IP address range
65// to AWS (BYOIP) to use with a standard accelerator, you can instead assign
66// IP addresses from your own pool to use with your accelerator. For more information,
67// see Bring your own IP addresses (BYOIP) in AWS Global Accelerator (https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html).
68//
69// The IP addresses serve as single fixed entry points for your clients. If
70// you already have Elastic Load Balancing load balancers, Amazon EC2 instances,
71// or Elastic IP address resources set up for your applications, you can easily
72// add those to a standard accelerator in Global Accelerator. This allows Global
73// Accelerator to use static IP addresses to access the resources.
74//
75// The static IP addresses remain assigned to your accelerator for as long as
76// it exists, even if you disable the accelerator and it no longer accepts or
77// routes traffic. However, when you delete an accelerator, you lose the static
78// IP addresses that are assigned to it, so you can no longer route traffic
79// by using them. You can use IAM policies like tag-based permissions with Global
80// Accelerator to delete an accelerator. For more information, see Tag-based
81// policies (https://docs.aws.amazon.com/global-accelerator/latest/dg/access-control-manage-access-tag-policies.html).
82//
83// Accelerator
84//
85// An accelerator directs traffic to endpoints over the AWS global network to
86// improve the performance of your internet applications. Each accelerator includes
87// one or more listeners.
88//
89// There are two types of accelerators:
90//
91//    * A standard accelerator directs traffic to the optimal AWS endpoint based
92//    on several factors, including the user’s location, the health of the
93//    endpoint, and the endpoint weights that you configure. This improves the
94//    availability and performance of your applications. Endpoints can be Network
95//    Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic
96//    IP addresses.
97//
98//    * A custom routing accelerator directs traffic to one of possibly thousands
99//    of Amazon EC2 instances running in a single or multiple virtual private
100//    clouds (VPCs). With custom routing, listener ports are mapped to statically
101//    associate port ranges with VPC subnets, which allows Global Accelerator
102//    to determine an EC2 instance IP address at the time of connection. By
103//    default, all port mapping destinations in a VPC subnet can't receive traffic.
104//    You can choose to configure all destinations in the subnet to receive
105//    traffic, or to specify individual port mappings that can receive traffic.
106//
107// For more information, see Types of accelerators (https://docs.aws.amazon.com/global-accelerator/latest/dg/introduction-accelerator-types.html).
108//
109// DNS name
110//
111// Global Accelerator assigns each accelerator a default Domain Name System
112// (DNS) name, similar to a1234567890abcdef.awsglobalaccelerator.com, that points
113// to the static IP addresses that Global Accelerator assigns to you or that
114// you choose from your own IP address range. Depending on the use case, you
115// can use your accelerator's static IP addresses or DNS name to route traffic
116// to your accelerator, or set up DNS records to route traffic using your own
117// custom domain name.
118//
119// Network zone
120//
121// A network zone services the static IP addresses for your accelerator from
122// a unique IP subnet. Similar to an AWS Availability Zone, a network zone is
123// an isolated unit with its own set of physical infrastructure. When you configure
124// an accelerator, by default, Global Accelerator allocates two IPv4 addresses
125// for it. If one IP address from a network zone becomes unavailable due to
126// IP address blocking by certain client networks, or network disruptions, then
127// client applications can retry on the healthy static IP address from the other
128// isolated network zone.
129//
130// Listener
131//
132// A listener processes inbound connections from clients to Global Accelerator,
133// based on the port (or port range) and protocol (or protocols) that you configure.
134// A listener can be configured for TCP, UDP, or both TCP and UDP protocols.
135// Each listener has one or more endpoint groups associated with it, and traffic
136// is forwarded to endpoints in one of the groups. You associate endpoint groups
137// with listeners by specifying the Regions that you want to distribute traffic
138// to. With a standard accelerator, traffic is distributed to optimal endpoints
139// within the endpoint groups associated with a listener.
140//
141// Endpoint group
142//
143// Each endpoint group is associated with a specific AWS Region. Endpoint groups
144// include one or more endpoints in the Region. With a standard accelerator,
145// you can increase or reduce the percentage of traffic that would be otherwise
146// directed to an endpoint group by adjusting a setting called a traffic dial.
147// The traffic dial lets you easily do performance testing or blue/green deployment
148// testing, for example, for new releases across different AWS Regions.
149//
150// Endpoint
151//
152// An endpoint is a resource that Global Accelerator directs traffic to.
153//
154// Endpoints for standard accelerators can be Network Load Balancers, Application
155// Load Balancers, Amazon EC2 instances, or Elastic IP addresses. An Application
156// Load Balancer endpoint can be internet-facing or internal. Traffic for standard
157// accelerators is routed to endpoints based on the health of the endpoint along
158// with configuration options that you choose, such as endpoint weights. For
159// each endpoint, you can configure weights, which are numbers that you can
160// use to specify the proportion of traffic to route to each one. This can be
161// useful, for example, to do performance testing within a Region.
162//
163// Endpoints for custom routing accelerators are virtual private cloud (VPC)
164// subnets with one or many EC2 instances.
165//
166// See https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08 for more information on this service.
167//
168// See globalaccelerator package documentation for more information.
169// https://docs.aws.amazon.com/sdk-for-go/api/service/globalaccelerator/
170//
171// Using the Client
172//
173// To contact AWS Global Accelerator with the SDK use the New function to create
174// a new service client. With that client you can make API requests to the service.
175// These clients are safe to use concurrently.
176//
177// See the SDK's documentation for more information on how to use the SDK.
178// https://docs.aws.amazon.com/sdk-for-go/api/
179//
180// See aws.Config documentation for more information on configuring SDK clients.
181// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config
182//
183// See the AWS Global Accelerator client GlobalAccelerator for more
184// information on creating client for this service.
185// https://docs.aws.amazon.com/sdk-for-go/api/service/globalaccelerator/#New
186package globalaccelerator
187