Documentation ¶
Index ¶
- func Accelerator_IsConstruct(x interface{}) *bool
- func Accelerator_IsResource(construct constructs.IConstruct) *bool
- func CfnAccelerator_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAccelerator_IsCfnElement(x interface{}) *bool
- func CfnAccelerator_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAccelerator_IsConstruct(x interface{}) *bool
- func CfnEndpointGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnEndpointGroup_IsCfnElement(x interface{}) *bool
- func CfnEndpointGroup_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnEndpointGroup_IsConstruct(x interface{}) *bool
- func CfnListener_CFN_RESOURCE_TYPE_NAME() *string
- func CfnListener_IsCfnElement(x interface{}) *bool
- func CfnListener_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnListener_IsConstruct(x interface{}) *bool
- func EndpointGroup_IsConstruct(x interface{}) *bool
- func EndpointGroup_IsResource(construct constructs.IConstruct) *bool
- func Listener_IsConstruct(x interface{}) *bool
- func Listener_IsResource(construct constructs.IConstruct) *bool
- func NewAccelerator_Override(a Accelerator, scope constructs.Construct, id *string, props *AcceleratorProps)
- func NewCfnAccelerator_Override(c CfnAccelerator, scope constructs.Construct, id *string, ...)
- func NewCfnEndpointGroup_Override(c CfnEndpointGroup, scope constructs.Construct, id *string, ...)
- func NewCfnListener_Override(c CfnListener, scope constructs.Construct, id *string, props *CfnListenerProps)
- func NewEndpointGroup_Override(e EndpointGroup, scope constructs.Construct, id *string, ...)
- func NewListener_Override(l Listener, scope constructs.Construct, id *string, props *ListenerProps)
- func NewRawEndpoint_Override(r RawEndpoint, props *RawEndpointProps)
- type Accelerator
- type AcceleratorAttributes
- type AcceleratorProps
- type CfnAccelerator
- type CfnAcceleratorProps
- type CfnEndpointGroup
- type CfnEndpointGroupProps
- type CfnEndpointGroup_EndpointConfigurationProperty
- type CfnEndpointGroup_PortOverrideProperty
- type CfnListener
- type CfnListenerProps
- type CfnListener_PortRangeProperty
- type ClientAffinity
- type ConnectionProtocol
- type EndpointGroup
- type EndpointGroupOptions
- type EndpointGroupProps
- type HealthCheckProtocol
- type IAccelerator
- type IEndpoint
- type IEndpointGroup
- type IListener
- type Listener
- type ListenerOptions
- type ListenerProps
- type PortOverride
- type PortRange
- type RawEndpoint
- type RawEndpointProps
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Accelerator_IsConstruct ¶
func Accelerator_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func Accelerator_IsResource ¶
func Accelerator_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func CfnAccelerator_CFN_RESOURCE_TYPE_NAME ¶
func CfnAccelerator_CFN_RESOURCE_TYPE_NAME() *string
func CfnAccelerator_IsCfnElement ¶
func CfnAccelerator_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAccelerator_IsCfnResource ¶
func CfnAccelerator_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAccelerator_IsConstruct ¶
func CfnAccelerator_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func CfnEndpointGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnEndpointGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnEndpointGroup_IsCfnElement ¶
func CfnEndpointGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnEndpointGroup_IsCfnResource ¶
func CfnEndpointGroup_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnEndpointGroup_IsConstruct ¶
func CfnEndpointGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func CfnListener_CFN_RESOURCE_TYPE_NAME ¶
func CfnListener_CFN_RESOURCE_TYPE_NAME() *string
func CfnListener_IsCfnElement ¶
func CfnListener_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnListener_IsCfnResource ¶
func CfnListener_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnListener_IsConstruct ¶
func CfnListener_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func EndpointGroup_IsConstruct ¶
func EndpointGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func EndpointGroup_IsResource ¶
func EndpointGroup_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func Listener_IsConstruct ¶
func Listener_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func Listener_IsResource ¶
func Listener_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func NewAccelerator_Override ¶
func NewAccelerator_Override(a Accelerator, scope constructs.Construct, id *string, props *AcceleratorProps)
func NewCfnAccelerator_Override ¶
func NewCfnAccelerator_Override(c CfnAccelerator, scope constructs.Construct, id *string, props *CfnAcceleratorProps)
Create a new `AWS::GlobalAccelerator::Accelerator`.
func NewCfnEndpointGroup_Override ¶
func NewCfnEndpointGroup_Override(c CfnEndpointGroup, scope constructs.Construct, id *string, props *CfnEndpointGroupProps)
Create a new `AWS::GlobalAccelerator::EndpointGroup`.
func NewCfnListener_Override ¶
func NewCfnListener_Override(c CfnListener, scope constructs.Construct, id *string, props *CfnListenerProps)
Create a new `AWS::GlobalAccelerator::Listener`.
func NewEndpointGroup_Override ¶
func NewEndpointGroup_Override(e EndpointGroup, scope constructs.Construct, id *string, props *EndpointGroupProps)
func NewListener_Override ¶
func NewListener_Override(l Listener, scope constructs.Construct, id *string, props *ListenerProps)
func NewRawEndpoint_Override ¶
func NewRawEndpoint_Override(r RawEndpoint, props *RawEndpointProps)
Types ¶
type Accelerator ¶
type Accelerator interface { awscdk.Resource IAccelerator AcceleratorArn() *string DnsName() *string Env() *awscdk.ResourceEnvironment Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack AddListener(id *string, options *ListenerOptions) Listener ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
The Accelerator construct.
TODO: EXAMPLE
func NewAccelerator ¶
func NewAccelerator(scope constructs.Construct, id *string, props *AcceleratorProps) Accelerator
type AcceleratorAttributes ¶
type AcceleratorAttributes struct { // The ARN of the accelerator. AcceleratorArn *string `json:"acceleratorArn" yaml:"acceleratorArn"` // The DNS name of the accelerator. DnsName *string `json:"dnsName" yaml:"dnsName"` }
Attributes required to import an existing accelerator to the stack.
TODO: EXAMPLE
type AcceleratorProps ¶
type AcceleratorProps struct { // The name of the accelerator. AcceleratorName *string `json:"acceleratorName" yaml:"acceleratorName"` // Indicates whether the accelerator is enabled. Enabled *bool `json:"enabled" yaml:"enabled"` }
Construct properties of the Accelerator.
TODO: EXAMPLE
type CfnAccelerator ¶
type CfnAccelerator interface { awscdk.CfnResource awscdk.IInspectable AttrAcceleratorArn() *string AttrDnsName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string Enabled() interface{} SetEnabled(val interface{}) IpAddresses() *[]*string SetIpAddresses(val *[]*string) IpAddressType() *string SetIpAddressType(val *string) LogicalId() *string Name() *string SetName(val *string) Node() constructs.Node Ref() *string Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::GlobalAccelerator::Accelerator`.
The `AWS::GlobalAccelerator::Accelerator` resource is a Global Accelerator resource type that contains information about how you create an accelerator. An accelerator includes one or more listeners that process inbound connections and direct traffic to one or more endpoint groups, each of which includes endpoints, such as Application Load Balancers, Network Load Balancers, and Amazon EC2 instances.
TODO: EXAMPLE
func NewCfnAccelerator ¶
func NewCfnAccelerator(scope constructs.Construct, id *string, props *CfnAcceleratorProps) CfnAccelerator
Create a new `AWS::GlobalAccelerator::Accelerator`.
type CfnAcceleratorProps ¶
type CfnAcceleratorProps struct { // The name of the accelerator. // // The name must contain only alphanumeric characters or hyphens (-), and must not begin or end with a hyphen. Name *string `json:"name" yaml:"name"` // Indicates whether the accelerator is enabled. The value is true or false. The default value is true. // // If the value is set to true, the accelerator cannot be deleted. If set to false, accelerator can be deleted. Enabled interface{} `json:"enabled" yaml:"enabled"` // Optionally, if you've added your own IP address pool to Global Accelerator (BYOIP), you can choose IP addresses from your own pool to use for the accelerator's static IP addresses when you create an accelerator. // // You can specify one or two addresses, separated by a comma. Do not include the /32 suffix. // // Only one IP address from each of your IP address ranges can be used for each accelerator. If you specify only one IP address from your IP address range, Global Accelerator assigns a second static IP address for the accelerator from the AWS IP address pool. // // Note that you can't update IP addresses for an existing accelerator. To change them, you must create a new accelerator with the new addresses. // // For more information, see [Bring Your Own IP Addresses (BYOIP)](https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html) in the *AWS Global Accelerator Developer Guide* . IpAddresses *[]*string `json:"ipAddresses" yaml:"ipAddresses"` // The value for the address type must be IPv4. IpAddressType *string `json:"ipAddressType" yaml:"ipAddressType"` // Create tags for an accelerator. // // For more information, see [Tagging](https://docs.aws.amazon.com/global-accelerator/latest/dg/tagging-in-global-accelerator.html) in the *AWS Global Accelerator Developer Guide* . Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnAccelerator`.
TODO: EXAMPLE
type CfnEndpointGroup ¶
type CfnEndpointGroup interface { awscdk.CfnResource awscdk.IInspectable AttrEndpointGroupArn() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string EndpointConfigurations() interface{} SetEndpointConfigurations(val interface{}) EndpointGroupRegion() *string SetEndpointGroupRegion(val *string) HealthCheckIntervalSeconds() *float64 SetHealthCheckIntervalSeconds(val *float64) HealthCheckPath() *string SetHealthCheckPath(val *string) HealthCheckPort() *float64 SetHealthCheckPort(val *float64) HealthCheckProtocol() *string SetHealthCheckProtocol(val *string) ListenerArn() *string SetListenerArn(val *string) LogicalId() *string Node() constructs.Node PortOverrides() interface{} SetPortOverrides(val interface{}) Ref() *string Stack() awscdk.Stack ThresholdCount() *float64 SetThresholdCount(val *float64) TrafficDialPercentage() *float64 SetTrafficDialPercentage(val *float64) UpdatedProperites() *map[string]interface{} AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::GlobalAccelerator::EndpointGroup`.
The `AWS::GlobalAccelerator::EndpointGroup` resource is a Global Accelerator resource type that contains information about how you create an endpoint group for the specified listener. An endpoint group is a collection of endpoints in one AWS Region .
TODO: EXAMPLE
func NewCfnEndpointGroup ¶
func NewCfnEndpointGroup(scope constructs.Construct, id *string, props *CfnEndpointGroupProps) CfnEndpointGroup
Create a new `AWS::GlobalAccelerator::EndpointGroup`.
type CfnEndpointGroupProps ¶
type CfnEndpointGroupProps struct { // The AWS Regions where the endpoint group is located. EndpointGroupRegion *string `json:"endpointGroupRegion" yaml:"endpointGroupRegion"` // The Amazon Resource Name (ARN) of the listener. ListenerArn *string `json:"listenerArn" yaml:"listenerArn"` // The list of endpoint objects. EndpointConfigurations interface{} `json:"endpointConfigurations" yaml:"endpointConfigurations"` // The time—10 seconds or 30 seconds—between health checks for each endpoint. // // The default value is 30. HealthCheckIntervalSeconds *float64 `json:"healthCheckIntervalSeconds" yaml:"healthCheckIntervalSeconds"` // If the protocol is HTTP/S, then this value provides the ping path that Global Accelerator uses for the destination on the endpoints for health checks. // // The default is slash (/). HealthCheckPath *string `json:"healthCheckPath" yaml:"healthCheckPath"` // The port that Global Accelerator uses to perform health checks on endpoints that are part of this endpoint group. // // The default port is the port for the listener that this endpoint group is associated with. If the listener port is a list, Global Accelerator uses the first specified port in the list of ports. HealthCheckPort *float64 `json:"healthCheckPort" yaml:"healthCheckPort"` // The protocol that Global Accelerator uses to perform health checks on endpoints that are part of this endpoint group. // // The default value is TCP. HealthCheckProtocol *string `json:"healthCheckProtocol" yaml:"healthCheckProtocol"` // Allows you to override the destination ports used to route traffic to an endpoint. // // Using a port override lets you to map a list of external destination ports (that your users send traffic to) to a list of internal destination ports that you want an application endpoint to receive traffic on. PortOverrides interface{} `json:"portOverrides" yaml:"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 *float64 `json:"thresholdCount" yaml:"thresholdCount"` // The percentage of traffic to send to an AWS Regions . // // Additional traffic is distributed to other endpoint groups for this listener. // // Use this action to increase (dial up) or decrease (dial down) traffic to a specific Region. The percentage is applied to the traffic that would otherwise have been routed to the Region based on optimal routing. // // The default value is 100. TrafficDialPercentage *float64 `json:"trafficDialPercentage" yaml:"trafficDialPercentage"` }
Properties for defining a `CfnEndpointGroup`.
TODO: EXAMPLE
type CfnEndpointGroup_EndpointConfigurationProperty ¶
type CfnEndpointGroup_EndpointConfigurationProperty struct { // 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. For Amazon EC2 instances, this is the EC2 instance ID. A resource must be valid and active when you add it as an endpoint. // // An Application Load Balancer can be either internal or internet-facing. EndpointId *string `json:"endpointId" yaml:"endpointId"` // Indicates whether client IP address preservation is enabled for an Application Load Balancer endpoint. // // The value is true or false. The default value is true for new accelerators. // // If the value is set to true, the client's IP address is preserved in the `X-Forwarded-For` request header as traffic travels to applications on the Application Load Balancer endpoint fronted by the accelerator. // // For more information, see [Preserve Client IP Addresses](https://docs.aws.amazon.com/global-accelerator/latest/dg/preserve-client-ip-address.html) in the *AWS Global Accelerator Developer Guide* . ClientIpPreservationEnabled interface{} `json:"clientIpPreservationEnabled" yaml:"clientIpPreservationEnabled"` // The weight associated with the endpoint. // // When you add weights to endpoints, you configure Global Accelerator to route traffic based on proportions that you specify. For example, you might specify endpoint weights of 4, 5, 5, and 6 (sum=20). The result is that 4/20 of your traffic, on average, is routed to the first endpoint, 5/20 is routed both to the second and third endpoints, and 6/20 is routed to the last endpoint. For more information, see [Endpoint Weights](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints-endpoint-weights.html) in the *AWS Global Accelerator Developer Guide* . Weight *float64 `json:"weight" yaml:"weight"` }
A complex type for endpoints.
A resource must be valid and active when you add it as an endpoint.
TODO: EXAMPLE
type CfnEndpointGroup_PortOverrideProperty ¶
type CfnEndpointGroup_PortOverrideProperty 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 *float64 `json:"endpointPort" yaml:"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 *float64 `json:"listenerPort" yaml:"listenerPort"` }
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](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoint-groups-port-override.html) in the *AWS Global Accelerator Developer Guide* .
TODO: EXAMPLE
type CfnListener ¶
type CfnListener interface { awscdk.CfnResource awscdk.IInspectable AcceleratorArn() *string SetAcceleratorArn(val *string) AttrListenerArn() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string ClientAffinity() *string SetClientAffinity(val *string) CreationStack() *[]*string LogicalId() *string Node() constructs.Node PortRanges() interface{} SetPortRanges(val interface{}) Protocol() *string SetProtocol(val *string) Ref() *string Stack() awscdk.Stack UpdatedProperites() *map[string]interface{} AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::GlobalAccelerator::Listener`.
The `AWS::GlobalAccelerator::Listener` resource is a Global Accelerator resource type that contains information about how you create a listener to process inbound connections from clients to an accelerator. Connections arrive to assigned static IP addresses on a port, port range, or list of port ranges that you specify.
TODO: EXAMPLE
func NewCfnListener ¶
func NewCfnListener(scope constructs.Construct, id *string, props *CfnListenerProps) CfnListener
Create a new `AWS::GlobalAccelerator::Listener`.
type CfnListenerProps ¶
type CfnListenerProps struct { // The Amazon Resource Name (ARN) of your accelerator. AcceleratorArn *string `json:"acceleratorArn" yaml:"acceleratorArn"` // The list of port ranges for the connections from clients to the accelerator. PortRanges interface{} `json:"portRanges" yaml:"portRanges"` // The protocol for the connections from clients to the accelerator. Protocol *string `json:"protocol" yaml:"protocol"` // Client affinity lets you direct all requests from a user to the same endpoint, if you have stateful applications, regardless of the port and protocol of the client request. // // Client affinity gives you control over whether to always route each client to the same specific endpoint. // // AWS Global Accelerator uses a consistent-flow hashing algorithm to choose the optimal endpoint for a connection. If client affinity is `NONE` , Global Accelerator uses the "five-tuple" (5-tuple) properties—source IP address, source port, destination IP address, destination port, and protocol—to select the hash value, and then chooses the best endpoint. However, with this setting, if someone uses different ports to connect to Global Accelerator, their connections might not be always routed to the same endpoint because the hash value changes. // // If you want a given client to always be routed to the same endpoint, set client affinity to `SOURCE_IP` instead. When you use the `SOURCE_IP` setting, Global Accelerator uses the "two-tuple" (2-tuple) properties— source (client) IP address and destination IP address—to select the hash value. // // The default value is `NONE` . ClientAffinity *string `json:"clientAffinity" yaml:"clientAffinity"` }
Properties for defining a `CfnListener`.
TODO: EXAMPLE
type CfnListener_PortRangeProperty ¶
type CfnListener_PortRangeProperty struct { // The first port in the range of ports, inclusive. FromPort *float64 `json:"fromPort" yaml:"fromPort"` // The last port in the range of ports, inclusive. ToPort *float64 `json:"toPort" yaml:"toPort"` }
A complex type for a range of ports for a listener.
TODO: EXAMPLE
type ClientAffinity ¶
type ClientAffinity string
Client affinity gives you control over whether to always route each client to the same specific endpoint. See: https://docs.aws.amazon.com/global-accelerator/latest/dg/about-listeners.html#about-listeners-client-affinity
const ( ClientAffinity_NONE ClientAffinity = "NONE" ClientAffinity_SOURCE_IP ClientAffinity = "SOURCE_IP" )
type ConnectionProtocol ¶
type ConnectionProtocol string
The protocol for the connections from clients to the accelerator.
const ( ConnectionProtocol_TCP ConnectionProtocol = "TCP" ConnectionProtocol_UDP ConnectionProtocol = "UDP" )
type EndpointGroup ¶
type EndpointGroup interface { awscdk.Resource IEndpointGroup EndpointGroupArn() *string EndpointGroupName() *string Endpoints() *[]IEndpoint Env() *awscdk.ResourceEnvironment Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack AddEndpoint(endpoint IEndpoint) ApplyRemovalPolicy(policy awscdk.RemovalPolicy) ConnectionsPeer(id *string, vpc awsec2.IVpc) awsec2.IPeer GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
EndpointGroup construct.
TODO: EXAMPLE
func NewEndpointGroup ¶
func NewEndpointGroup(scope constructs.Construct, id *string, props *EndpointGroupProps) EndpointGroup
type EndpointGroupOptions ¶
type EndpointGroupOptions struct { // Name of the endpoint group. EndpointGroupName *string `json:"endpointGroupName" yaml:"endpointGroupName"` // Initial list of endpoints for this group. Endpoints *[]IEndpoint `json:"endpoints" yaml:"endpoints"` // The time between health checks for each endpoint. // // Must be either 10 or 30 seconds. HealthCheckInterval awscdk.Duration `json:"healthCheckInterval" yaml:"healthCheckInterval"` // The ping path for health checks (if the protocol is HTTP(S)). HealthCheckPath *string `json:"healthCheckPath" yaml:"healthCheckPath"` // The port used to perform health checks. HealthCheckPort *float64 `json:"healthCheckPort" yaml:"healthCheckPort"` // The protocol used to perform health checks. HealthCheckProtocol HealthCheckProtocol `json:"healthCheckProtocol" yaml:"healthCheckProtocol"` // 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. HealthCheckThreshold *float64 `json:"healthCheckThreshold" yaml:"healthCheckThreshold"` // Override the destination ports used to route traffic to an endpoint. // // Unless overridden, the port used to hit the endpoint will be the same as the port // that traffic arrives on at the listener. PortOverrides *[]*PortOverride `json:"portOverrides" yaml:"portOverrides"` // The AWS Region where the endpoint group is located. Region *string `json:"region" yaml:"region"` // The percentage of traffic to send to this AWS Region. // // The percentage is applied to the traffic that would otherwise have been // routed to the Region based on optimal routing. Additional traffic is // distributed to other endpoint groups for this listener. TrafficDialPercentage *float64 `json:"trafficDialPercentage" yaml:"trafficDialPercentage"` }
Basic options for creating a new EndpointGroup.
TODO: EXAMPLE
type EndpointGroupProps ¶
type EndpointGroupProps struct { // Name of the endpoint group. EndpointGroupName *string `json:"endpointGroupName" yaml:"endpointGroupName"` // Initial list of endpoints for this group. Endpoints *[]IEndpoint `json:"endpoints" yaml:"endpoints"` // The time between health checks for each endpoint. // // Must be either 10 or 30 seconds. HealthCheckInterval awscdk.Duration `json:"healthCheckInterval" yaml:"healthCheckInterval"` // The ping path for health checks (if the protocol is HTTP(S)). HealthCheckPath *string `json:"healthCheckPath" yaml:"healthCheckPath"` // The port used to perform health checks. HealthCheckPort *float64 `json:"healthCheckPort" yaml:"healthCheckPort"` // The protocol used to perform health checks. HealthCheckProtocol HealthCheckProtocol `json:"healthCheckProtocol" yaml:"healthCheckProtocol"` // 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. HealthCheckThreshold *float64 `json:"healthCheckThreshold" yaml:"healthCheckThreshold"` // Override the destination ports used to route traffic to an endpoint. // // Unless overridden, the port used to hit the endpoint will be the same as the port // that traffic arrives on at the listener. PortOverrides *[]*PortOverride `json:"portOverrides" yaml:"portOverrides"` // The AWS Region where the endpoint group is located. Region *string `json:"region" yaml:"region"` // The percentage of traffic to send to this AWS Region. // // The percentage is applied to the traffic that would otherwise have been // routed to the Region based on optimal routing. Additional traffic is // distributed to other endpoint groups for this listener. TrafficDialPercentage *float64 `json:"trafficDialPercentage" yaml:"trafficDialPercentage"` // The Amazon Resource Name (ARN) of the listener. Listener IListener `json:"listener" yaml:"listener"` }
Property of the EndpointGroup.
TODO: EXAMPLE
type HealthCheckProtocol ¶
type HealthCheckProtocol string
The protocol for the connections from clients to the accelerator.
const ( HealthCheckProtocol_TCP HealthCheckProtocol = "TCP" HealthCheckProtocol_HTTP HealthCheckProtocol = "HTTP" HealthCheckProtocol_HTTPS HealthCheckProtocol = "HTTPS" )
type IAccelerator ¶
type IAccelerator interface { awscdk.IResource // The ARN of the accelerator. AcceleratorArn() *string // The Domain Name System (DNS) name that Global Accelerator creates that points to your accelerator's static IP addresses. DnsName() *string }
The interface of the Accelerator.
func Accelerator_FromAcceleratorAttributes ¶
func Accelerator_FromAcceleratorAttributes(scope constructs.Construct, id *string, attrs *AcceleratorAttributes) IAccelerator
import from attributes.
type IEndpoint ¶
type IEndpoint interface { // Render the endpoint to an endpoint configuration. RenderEndpointConfiguration() interface{} // The region where the endpoint is located. // // If the region cannot be determined, `undefined` is returned Region() *string }
An endpoint for the endpoint group.
Implementations of `IEndpoint` can be found in the `aws-globalaccelerator-endpoints` package.
type IEndpointGroup ¶
type IEndpointGroup interface { awscdk.IResource // EndpointGroup ARN. EndpointGroupArn() *string }
The interface of the EndpointGroup.
func EndpointGroup_FromEndpointGroupArn ¶
func EndpointGroup_FromEndpointGroupArn(scope constructs.Construct, id *string, endpointGroupArn *string) IEndpointGroup
import from ARN.
type IListener ¶
type IListener interface { awscdk.IResource // The ARN of the listener. ListenerArn() *string }
Interface of the Listener.
func Listener_FromListenerArn ¶
func Listener_FromListenerArn(scope constructs.Construct, id *string, listenerArn *string) IListener
import from ARN.
type Listener ¶
type Listener interface { awscdk.Resource IListener Env() *awscdk.ResourceEnvironment ListenerArn() *string ListenerName() *string Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack AddEndpointGroup(id *string, options *EndpointGroupOptions) EndpointGroup ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
The construct for the Listener.
TODO: EXAMPLE
func NewListener ¶
func NewListener(scope constructs.Construct, id *string, props *ListenerProps) Listener
type ListenerOptions ¶
type ListenerOptions struct { // The list of port ranges for the connections from clients to the accelerator. PortRanges *[]*PortRange `json:"portRanges" yaml:"portRanges"` // Client affinity to direct all requests from a user to the same endpoint. // // If you have stateful applications, client affinity lets you direct all // requests from a user to the same endpoint. // // By default, each connection from each client is routed to seperate // endpoints. Set client affinity to SOURCE_IP to route all connections from // a single client to the same endpoint. ClientAffinity ClientAffinity `json:"clientAffinity" yaml:"clientAffinity"` // Name of the listener. ListenerName *string `json:"listenerName" yaml:"listenerName"` // The protocol for the connections from clients to the accelerator. Protocol ConnectionProtocol `json:"protocol" yaml:"protocol"` }
Construct options for Listener.
TODO: EXAMPLE
type ListenerProps ¶
type ListenerProps struct { // The list of port ranges for the connections from clients to the accelerator. PortRanges *[]*PortRange `json:"portRanges" yaml:"portRanges"` // Client affinity to direct all requests from a user to the same endpoint. // // If you have stateful applications, client affinity lets you direct all // requests from a user to the same endpoint. // // By default, each connection from each client is routed to seperate // endpoints. Set client affinity to SOURCE_IP to route all connections from // a single client to the same endpoint. ClientAffinity ClientAffinity `json:"clientAffinity" yaml:"clientAffinity"` // Name of the listener. ListenerName *string `json:"listenerName" yaml:"listenerName"` // The protocol for the connections from clients to the accelerator. Protocol ConnectionProtocol `json:"protocol" yaml:"protocol"` // The accelerator for this listener. Accelerator IAccelerator `json:"accelerator" yaml:"accelerator"` }
Construct properties for Listener.
TODO: EXAMPLE
type PortOverride ¶
type PortOverride 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 *float64 `json:"endpointPort" yaml:"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 *float64 `json:"listenerPort" yaml:"listenerPort"` }
Override specific listener ports used to route traffic to endpoints that are part of an endpoint group.
TODO: EXAMPLE
type PortRange ¶
type PortRange struct { // The first port in the range of ports, inclusive. FromPort *float64 `json:"fromPort" yaml:"fromPort"` // The last port in the range of ports, inclusive. ToPort *float64 `json:"toPort" yaml:"toPort"` }
The list of port ranges for the connections from clients to the accelerator.
TODO: EXAMPLE
type RawEndpoint ¶
Untyped endpoint implementation.
Prefer using the classes in the `aws-globalaccelerator-endpoints` package instead, as they accept typed constructs. You can use this class if you want to use an endpoint type that does not have an appropriate class in that package yet.
TODO: EXAMPLE
func NewRawEndpoint ¶
func NewRawEndpoint(props *RawEndpointProps) RawEndpoint
type RawEndpointProps ¶
type RawEndpointProps struct { // Identifier of the endpoint. // // Load balancer ARN, instance ID or EIP allocation ID. EndpointId *string `json:"endpointId" yaml:"endpointId"` // Forward the client IP address. // // GlobalAccelerator will create Network Interfaces in your VPC in order // to preserve the client IP address. // // Only applies to Application Load Balancers and EC2 instances. // // Client IP address preservation is supported only in specific AWS Regions. // See the GlobalAccelerator Developer Guide for a list. PreserveClientIp *bool `json:"preserveClientIp" yaml:"preserveClientIp"` // The region where this endpoint is located. Region *string `json:"region" yaml:"region"` // Endpoint weight across all endpoints in the group. // // Must be a value between 0 and 255. Weight *float64 `json:"weight" yaml:"weight"` }
Properties for RawEndpoint.
TODO: EXAMPLE