elasticloadbalancing

package module
v1.28.5 Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2024 License: Apache-2.0 Imports: 47 Imported by: 101

Documentation

Overview

Package elasticloadbalancing provides the API client, operations, and parameter types for Elastic Load Balancing.

Elastic Load Balancing

A load balancer can distribute incoming traffic across your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered instances and ensures that it routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer and a protocol and port number for connections from the load balancer to the instances.

Elastic Load Balancing supports three types of load balancers: Application Load Balancers, Network Load Balancers, and Classic Load Balancers. You can select a load balancer based on your application needs. For more information, see the Elastic Load Balancing User Guide.

This reference covers the 2012-06-01 API, which supports Classic Load Balancers. The 2015-12-01 API supports Application Load Balancers and Network Load Balancers.

To get started, create a load balancer with one or more listeners using CreateLoadBalancer. Register your instances with the load balancer using RegisterInstancesWithLoadBalancer.

All Elastic Load Balancing operations are idempotent, which means that they complete at most one time. If you repeat an operation, it succeeds with a 200 OK response code.

Index

Constants

View Source
const ServiceAPIVersion = "2012-06-01"
View Source
const ServiceID = "Elastic Load Balancing"

Variables

This section is empty.

Functions

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func WithAPIOptions added in v1.0.0

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client's APIOptions option.

func WithEndpointResolver deprecated

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint.

To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.

func WithEndpointResolverV2 added in v1.16.0

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.

func WithSigV4SigningName added in v1.20.2

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.

func WithSigV4SigningRegion added in v1.20.2

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.

Types

type AddTagsInput

type AddTagsInput struct {

	// The name of the load balancer. You can specify one load balancer only.
	//
	// This member is required.
	LoadBalancerNames []string

	// The tags.
	//
	// This member is required.
	Tags []types.Tag
	// contains filtered or unexported fields
}

Contains the parameters for AddTags.

type AddTagsOutput

type AddTagsOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of AddTags.

type AnyInstanceInServiceWaiter added in v0.31.0

type AnyInstanceInServiceWaiter struct {
	// contains filtered or unexported fields
}

AnyInstanceInServiceWaiter defines the waiters for AnyInstanceInService

func NewAnyInstanceInServiceWaiter added in v0.31.0

func NewAnyInstanceInServiceWaiter(client DescribeInstanceHealthAPIClient, optFns ...func(*AnyInstanceInServiceWaiterOptions)) *AnyInstanceInServiceWaiter

NewAnyInstanceInServiceWaiter constructs a AnyInstanceInServiceWaiter.

func (*AnyInstanceInServiceWaiter) Wait added in v0.31.0

Wait calls the waiter function for AnyInstanceInService waiter. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

func (*AnyInstanceInServiceWaiter) WaitForOutput added in v1.9.0

WaitForOutput calls the waiter function for AnyInstanceInService waiter and returns the output of the successful operation. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

type AnyInstanceInServiceWaiterOptions added in v0.31.0

type AnyInstanceInServiceWaiterOptions struct {

	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	//
	// Passing options here is functionally equivalent to passing values to this
	// config's ClientOptions field that extend the inner client's APIOptions directly.
	APIOptions []func(*middleware.Stack) error

	// Functional options to be passed to all operations invoked by this client.
	//
	// Function values that modify the inner APIOptions are applied after the waiter
	// config's own APIOptions modifiers.
	ClientOptions []func(*Options)

	// MinDelay is the minimum amount of time to delay between retries. If unset,
	// AnyInstanceInServiceWaiter will use default minimum delay of 15 seconds. Note
	// that MinDelay must resolve to a value lesser than or equal to the MaxDelay.
	MinDelay time.Duration

	// MaxDelay is the maximum amount of time to delay between retries. If unset or
	// set to zero, AnyInstanceInServiceWaiter will use default max delay of 120
	// seconds. Note that MaxDelay must resolve to value greater than or equal to the
	// MinDelay.
	MaxDelay time.Duration

	// LogWaitAttempts is used to enable logging for waiter retry attempts
	LogWaitAttempts bool

	// Retryable is function that can be used to override the service defined
	// waiter-behavior based on operation output, or returned error. This function is
	// used by the waiter to decide if a state is retryable or a terminal state.
	//
	// By default service-modeled logic will populate this option. This option can
	// thus be used to define a custom waiter state with fall-back to service-modeled
	// waiter state mutators.The function returns an error in case of a failure state.
	// In case of retry state, this function returns a bool value of true and nil
	// error, while in case of success it returns a bool value of false and nil error.
	Retryable func(context.Context, *DescribeInstanceHealthInput, *DescribeInstanceHealthOutput, error) (bool, error)
}

AnyInstanceInServiceWaiterOptions are waiter options for AnyInstanceInServiceWaiter

type ApplySecurityGroupsToLoadBalancerInput

type ApplySecurityGroupsToLoadBalancerInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The IDs of the security groups to associate with the load balancer. Note that
	// you cannot specify the name of the security group.
	//
	// This member is required.
	SecurityGroups []string
	// contains filtered or unexported fields
}

Contains the parameters for ApplySecurityGroupsToLoadBalancer.

type ApplySecurityGroupsToLoadBalancerOutput

type ApplySecurityGroupsToLoadBalancerOutput struct {

	// The IDs of the security groups associated with the load balancer.
	SecurityGroups []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of ApplySecurityGroupsToLoadBalancer.

type AttachLoadBalancerToSubnetsInput

type AttachLoadBalancerToSubnetsInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The IDs of the subnets to add. You can add only one subnet per Availability
	// Zone.
	//
	// This member is required.
	Subnets []string
	// contains filtered or unexported fields
}

Contains the parameters for AttachLoaBalancerToSubnets.

type AttachLoadBalancerToSubnetsOutput

type AttachLoadBalancerToSubnetsOutput struct {

	// The IDs of the subnets attached to the load balancer.
	Subnets []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of AttachLoadBalancerToSubnets.

type AuthResolverParameters added in v1.20.2

type AuthResolverParameters struct {
	// The name of the operation being invoked.
	Operation string

	// The region in which the operation is being invoked.
	Region string
}

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

type AuthSchemeResolver added in v1.20.2

type AuthSchemeResolver interface {
	ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}

AuthSchemeResolver returns a set of possible authentication options for an operation.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client provides the API client to make operations call for Elastic Load Balancing.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) AddTags

func (c *Client) AddTags(ctx context.Context, params *AddTagsInput, optFns ...func(*Options)) (*AddTagsOutput, error)

Adds the specified tags to the specified load balancer. Each load balancer can have a maximum of 10 tags.

Each tag consists of a key and an optional value. If a tag with the same key is already associated with the load balancer, AddTags updates its value.

For more information, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.

func (*Client) ApplySecurityGroupsToLoadBalancer

func (c *Client) ApplySecurityGroupsToLoadBalancer(ctx context.Context, params *ApplySecurityGroupsToLoadBalancerInput, optFns ...func(*Options)) (*ApplySecurityGroupsToLoadBalancerOutput, error)

Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups.

For more information, see Security Groups for Load Balancers in a VPC in the Classic Load Balancers Guide.

func (*Client) AttachLoadBalancerToSubnets

func (c *Client) AttachLoadBalancerToSubnets(ctx context.Context, params *AttachLoadBalancerToSubnetsInput, optFns ...func(*Options)) (*AttachLoadBalancerToSubnetsOutput, error)

Adds one or more subnets to the set of configured subnets for the specified load balancer.

The load balancer evenly distributes requests across all registered subnets. For more information, see Add or Remove Subnets for Your Load Balancer in a VPCin the Classic Load Balancers Guide.

func (*Client) ConfigureHealthCheck

func (c *Client) ConfigureHealthCheck(ctx context.Context, params *ConfigureHealthCheckInput, optFns ...func(*Options)) (*ConfigureHealthCheckOutput, error)

Specifies the health check settings to use when evaluating the health state of your EC2 instances.

For more information, see Configure Health Checks for Your Load Balancer in the Classic Load Balancers Guide.

func (*Client) CreateAppCookieStickinessPolicy

func (c *Client) CreateAppCookieStickinessPolicy(ctx context.Context, params *CreateAppCookieStickinessPolicyInput, optFns ...func(*Options)) (*CreateAppCookieStickinessPolicyOutput, error)

Generates a stickiness policy with sticky session lifetimes that follow that of an application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners.

This policy is similar to the policy created by CreateLBCookieStickinessPolicy, except that the lifetime of the special Elastic Load Balancing cookie, AWSELB , follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer only inserts a new stickiness cookie when the application response includes a new application cookie.

If the application cookie is explicitly removed or expires, the session stops being sticky until a new application cookie is issued.

For more information, see Application-Controlled Session Stickiness in the Classic Load Balancers Guide.

func (*Client) CreateLBCookieStickinessPolicy

func (c *Client) CreateLBCookieStickinessPolicy(ctx context.Context, params *CreateLBCookieStickinessPolicyInput, optFns ...func(*Options)) (*CreateLBCookieStickinessPolicyOutput, error)

Generates a stickiness policy with sticky session lifetimes controlled by the lifetime of the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners.

When a load balancer implements this policy, the load balancer uses a special cookie to track the instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm.

A cookie is inserted into the response for binding subsequent requests from the same user to that server. The validity of the cookie is based on the cookie expiration time, which is specified in the policy configuration.

For more information, see Duration-Based Session Stickiness in the Classic Load Balancers Guide.

func (*Client) CreateLoadBalancer

func (c *Client) CreateLoadBalancer(ctx context.Context, params *CreateLoadBalancerInput, optFns ...func(*Options)) (*CreateLoadBalancerOutput, error)

Creates a Classic Load Balancer.

You can add listeners, security groups, subnets, and tags when you create your load balancer, or you can add them later using CreateLoadBalancerListeners, ApplySecurityGroupsToLoadBalancer, AttachLoadBalancerToSubnets, and AddTags.

To describe your current load balancers, see DescribeLoadBalancers. When you are finished with a load balancer, you can delete it using DeleteLoadBalancer.

You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see Limits for Your Classic Load Balancerin the Classic Load Balancers Guide.

func (*Client) CreateLoadBalancerListeners

func (c *Client) CreateLoadBalancerListeners(ctx context.Context, params *CreateLoadBalancerListenersInput, optFns ...func(*Options)) (*CreateLoadBalancerListenersOutput, error)

Creates one or more listeners for the specified load balancer. If a listener with the specified port does not already exist, it is created; otherwise, the properties of the new listener must match the properties of the existing listener.

For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.

func (*Client) CreateLoadBalancerPolicy

func (c *Client) CreateLoadBalancerPolicy(ctx context.Context, params *CreateLoadBalancerPolicyInput, optFns ...func(*Options)) (*CreateLoadBalancerPolicyOutput, error)

Creates a policy with the specified attributes for the specified load balancer.

Policies are settings that are saved for your load balancer and that can be applied to the listener or the application server, depending on the policy type.

func (*Client) DeleteLoadBalancer

func (c *Client) DeleteLoadBalancer(ctx context.Context, params *DeleteLoadBalancerInput, optFns ...func(*Options)) (*DeleteLoadBalancerOutput, error)

Deletes the specified load balancer.

If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to your instances.

If the load balancer does not exist or has already been deleted, the call to DeleteLoadBalancer still succeeds.

func (*Client) DeleteLoadBalancerListeners

func (c *Client) DeleteLoadBalancerListeners(ctx context.Context, params *DeleteLoadBalancerListenersInput, optFns ...func(*Options)) (*DeleteLoadBalancerListenersOutput, error)

Deletes the specified listeners from the specified load balancer.

func (*Client) DeleteLoadBalancerPolicy

func (c *Client) DeleteLoadBalancerPolicy(ctx context.Context, params *DeleteLoadBalancerPolicyInput, optFns ...func(*Options)) (*DeleteLoadBalancerPolicyOutput, error)

Deletes the specified policy from the specified load balancer. This policy must not be enabled for any listeners.

func (*Client) DeregisterInstancesFromLoadBalancer

func (c *Client) DeregisterInstancesFromLoadBalancer(ctx context.Context, params *DeregisterInstancesFromLoadBalancerInput, optFns ...func(*Options)) (*DeregisterInstancesFromLoadBalancerOutput, error)

Deregisters the specified instances from the specified load balancer. After the instance is deregistered, it no longer receives traffic from the load balancer.

You can use DescribeLoadBalancers to verify that the instance is deregistered from the load balancer.

For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.

func (*Client) DescribeAccountLimits

func (c *Client) DescribeAccountLimits(ctx context.Context, params *DescribeAccountLimitsInput, optFns ...func(*Options)) (*DescribeAccountLimitsOutput, error)

Describes the current Elastic Load Balancing resource limits for your AWS account.

For more information, see Limits for Your Classic Load Balancer in the Classic Load Balancers Guide.

func (*Client) DescribeInstanceHealth

func (c *Client) DescribeInstanceHealth(ctx context.Context, params *DescribeInstanceHealthInput, optFns ...func(*Options)) (*DescribeInstanceHealthOutput, error)

Describes the state of the specified instances with respect to the specified load balancer. If no instances are specified, the call describes the state of all instances that are currently registered with the load balancer. If instances are specified, their state is returned even if they are no longer registered with the load balancer. The state of terminated instances is not returned.

func (*Client) DescribeLoadBalancerAttributes

func (c *Client) DescribeLoadBalancerAttributes(ctx context.Context, params *DescribeLoadBalancerAttributesInput, optFns ...func(*Options)) (*DescribeLoadBalancerAttributesOutput, error)

Describes the attributes for the specified load balancer.

func (*Client) DescribeLoadBalancerPolicies

func (c *Client) DescribeLoadBalancerPolicies(ctx context.Context, params *DescribeLoadBalancerPoliciesInput, optFns ...func(*Options)) (*DescribeLoadBalancerPoliciesOutput, error)

Describes the specified policies.

If you specify a load balancer name, the action returns the descriptions of all policies created for the load balancer. If you specify a policy name associated with your load balancer, the action returns the description of that policy. If you don't specify a load balancer name, the action returns descriptions of the specified sample policies, or descriptions of all sample policies. The names of the sample policies have the ELBSample- prefix.

func (*Client) DescribeLoadBalancerPolicyTypes

func (c *Client) DescribeLoadBalancerPolicyTypes(ctx context.Context, params *DescribeLoadBalancerPolicyTypesInput, optFns ...func(*Options)) (*DescribeLoadBalancerPolicyTypesOutput, error)

Describes the specified load balancer policy types or all load balancer policy types.

The description of each type indicates how it can be used. For example, some policies can be used only with layer 7 listeners, some policies can be used only with layer 4 listeners, and some policies can be used only with your EC2 instances.

You can use CreateLoadBalancerPolicy to create a policy configuration for any of these policy types. Then, depending on the policy type, use either SetLoadBalancerPoliciesOfListeneror SetLoadBalancerPoliciesForBackendServer to set the policy.

func (*Client) DescribeLoadBalancers

func (c *Client) DescribeLoadBalancers(ctx context.Context, params *DescribeLoadBalancersInput, optFns ...func(*Options)) (*DescribeLoadBalancersOutput, error)

Describes the specified the load balancers. If no load balancers are specified, the call describes all of your load balancers.

func (*Client) DescribeTags

func (c *Client) DescribeTags(ctx context.Context, params *DescribeTagsInput, optFns ...func(*Options)) (*DescribeTagsOutput, error)

Describes the tags associated with the specified load balancers.

func (*Client) DetachLoadBalancerFromSubnets

func (c *Client) DetachLoadBalancerFromSubnets(ctx context.Context, params *DetachLoadBalancerFromSubnetsInput, optFns ...func(*Options)) (*DetachLoadBalancerFromSubnetsOutput, error)

Removes the specified subnets from the set of configured subnets for the load balancer.

After a subnet is removed, all EC2 instances registered with the load balancer in the removed subnet go into the OutOfService state. Then, the load balancer balances the traffic among the remaining routable subnets.

func (*Client) DisableAvailabilityZonesForLoadBalancer

func (c *Client) DisableAvailabilityZonesForLoadBalancer(ctx context.Context, params *DisableAvailabilityZonesForLoadBalancerInput, optFns ...func(*Options)) (*DisableAvailabilityZonesForLoadBalancerOutput, error)

Removes the specified Availability Zones from the set of Availability Zones for the specified load balancer in EC2-Classic or a default VPC.

For load balancers in a non-default VPC, use DetachLoadBalancerFromSubnets.

There must be at least one Availability Zone registered with a load balancer at all times. After an Availability Zone is removed, all instances registered with the load balancer that are in the removed Availability Zone go into the OutOfService state. Then, the load balancer attempts to equally balance the traffic among its remaining Availability Zones.

For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.

func (*Client) EnableAvailabilityZonesForLoadBalancer

func (c *Client) EnableAvailabilityZonesForLoadBalancer(ctx context.Context, params *EnableAvailabilityZonesForLoadBalancerInput, optFns ...func(*Options)) (*EnableAvailabilityZonesForLoadBalancerOutput, error)

Adds the specified Availability Zones to the set of Availability Zones for the specified load balancer in EC2-Classic or a default VPC.

For load balancers in a non-default VPC, use AttachLoadBalancerToSubnets.

The load balancer evenly distributes requests across all its registered Availability Zones that contain instances. For more information, see Add or Remove Availability Zonesin the Classic Load Balancers Guide.

func (*Client) ModifyLoadBalancerAttributes

func (c *Client) ModifyLoadBalancerAttributes(ctx context.Context, params *ModifyLoadBalancerAttributesInput, optFns ...func(*Options)) (*ModifyLoadBalancerAttributesOutput, error)

Modifies the attributes of the specified load balancer.

You can modify the load balancer attributes, such as AccessLogs , ConnectionDraining , and CrossZoneLoadBalancing by either enabling or disabling them. Or, you can modify the load balancer attribute ConnectionSettings by specifying an idle connection timeout value for your load balancer.

For more information, see the following in the Classic Load Balancers Guide:

Cross-Zone Load Balancing

Connection Draining

Access Logs

Idle Connection Timeout

func (*Client) Options added in v1.21.0

func (c *Client) Options() Options

Options returns a copy of the client configuration.

Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.

func (*Client) RegisterInstancesWithLoadBalancer

func (c *Client) RegisterInstancesWithLoadBalancer(ctx context.Context, params *RegisterInstancesWithLoadBalancerInput, optFns ...func(*Options)) (*RegisterInstancesWithLoadBalancerOutput, error)

Adds the specified instances to the specified load balancer.

The instance must be a running instance in the same network as the load balancer (EC2-Classic or the same VPC). If you have EC2-Classic instances and a load balancer in a VPC with ClassicLink enabled, you can link the EC2-Classic instances to that VPC and then register the linked EC2-Classic instances with the load balancer in the VPC.

Note that RegisterInstanceWithLoadBalancer completes when the request has been registered. Instance registration takes a little time to complete. To check the state of the registered instances, use DescribeLoadBalancersor DescribeInstanceHealth.

After the instance is registered, it starts receiving traffic and requests from the load balancer. Any instance that is not in one of the Availability Zones registered for the load balancer is moved to the OutOfService state. If an Availability Zone is added to the load balancer later, any instances registered with the load balancer move to the InService state.

To deregister instances from a load balancer, use DeregisterInstancesFromLoadBalancer.

For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.

func (*Client) RemoveTags

func (c *Client) RemoveTags(ctx context.Context, params *RemoveTagsInput, optFns ...func(*Options)) (*RemoveTagsOutput, error)

Removes one or more tags from the specified load balancer.

func (*Client) SetLoadBalancerListenerSSLCertificate

func (c *Client) SetLoadBalancerListenerSSLCertificate(ctx context.Context, params *SetLoadBalancerListenerSSLCertificateInput, optFns ...func(*Options)) (*SetLoadBalancerListenerSSLCertificateOutput, error)

Sets the certificate that terminates the specified listener's SSL connections. The specified certificate replaces any prior certificate that was used on the same load balancer and port.

For more information about updating your SSL certificate, see Replace the SSL Certificate for Your Load Balancer in the Classic Load Balancers Guide.

func (*Client) SetLoadBalancerPoliciesForBackendServer

func (c *Client) SetLoadBalancerPoliciesForBackendServer(ctx context.Context, params *SetLoadBalancerPoliciesForBackendServerInput, optFns ...func(*Options)) (*SetLoadBalancerPoliciesForBackendServerOutput, error)

Replaces the set of policies associated with the specified port on which the EC2 instance is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the instance ports; this policy type is composed of multiple public key policies.

Each time you use SetLoadBalancerPoliciesForBackendServer to enable the policies, use the PolicyNames parameter to list the policies that you want to enable.

You can use DescribeLoadBalancers or DescribeLoadBalancerPolicies to verify that the policy is associated with the EC2 instance.

For more information about enabling back-end instance authentication, see Configure Back-end Instance Authentication in the Classic Load Balancers Guide. For more information about Proxy Protocol, see Configure Proxy Protocol Supportin the Classic Load Balancers Guide.

func (*Client) SetLoadBalancerPoliciesOfListener

func (c *Client) SetLoadBalancerPoliciesOfListener(ctx context.Context, params *SetLoadBalancerPoliciesOfListenerInput, optFns ...func(*Options)) (*SetLoadBalancerPoliciesOfListenerOutput, error)

Replaces the current set of policies for the specified load balancer port with the specified set of policies.

To enable back-end server authentication, use SetLoadBalancerPoliciesForBackendServer.

For more information about setting policies, see Update the SSL Negotiation Configuration, Duration-Based Session Stickiness, and Application-Controlled Session Stickiness in the Classic Load Balancers Guide.

type ConfigureHealthCheckInput

type ConfigureHealthCheckInput struct {

	// The configuration information.
	//
	// This member is required.
	HealthCheck *types.HealthCheck

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for ConfigureHealthCheck.

type ConfigureHealthCheckOutput

type ConfigureHealthCheckOutput struct {

	// The updated health check.
	HealthCheck *types.HealthCheck

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of ConfigureHealthCheck.

type CreateAppCookieStickinessPolicyInput

type CreateAppCookieStickinessPolicyInput struct {

	// The name of the application cookie used for stickiness.
	//
	// This member is required.
	CookieName *string

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The name of the policy being created. Policy names must consist of alphanumeric
	// characters and dashes (-). This name must be unique within the set of policies
	// for this load balancer.
	//
	// This member is required.
	PolicyName *string
	// contains filtered or unexported fields
}

Contains the parameters for CreateAppCookieStickinessPolicy.

type CreateAppCookieStickinessPolicyOutput

type CreateAppCookieStickinessPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for CreateAppCookieStickinessPolicy.

type CreateLBCookieStickinessPolicyInput

type CreateLBCookieStickinessPolicyInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The name of the policy being created. Policy names must consist of alphanumeric
	// characters and dashes (-). This name must be unique within the set of policies
	// for this load balancer.
	//
	// This member is required.
	PolicyName *string

	// The time period, in seconds, after which the cookie should be considered stale.
	// If you do not specify this parameter, the default value is 0, which indicates
	// that the sticky session should last for the duration of the browser session.
	CookieExpirationPeriod *int64
	// contains filtered or unexported fields
}

Contains the parameters for CreateLBCookieStickinessPolicy.

type CreateLBCookieStickinessPolicyOutput

type CreateLBCookieStickinessPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for CreateLBCookieStickinessPolicy.

type CreateLoadBalancerInput

type CreateLoadBalancerInput struct {

	// The listeners.
	//
	// For more information, see [Listeners for Your Classic Load Balancer] in the Classic Load Balancers Guide.
	//
	// [Listeners for Your Classic Load Balancer]: https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html
	//
	// This member is required.
	Listeners []types.Listener

	// The name of the load balancer.
	//
	// This name must be unique within your set of load balancers for the region, must
	// have a maximum of 32 characters, must contain only alphanumeric characters or
	// hyphens, and cannot begin or end with a hyphen.
	//
	// This member is required.
	LoadBalancerName *string

	// One or more Availability Zones from the same region as the load balancer.
	//
	// You must specify at least one Availability Zone.
	//
	// You can add more Availability Zones after you create the load balancer using EnableAvailabilityZonesForLoadBalancer.
	AvailabilityZones []string

	// The type of a load balancer. Valid only for load balancers in a VPC.
	//
	// By default, Elastic Load Balancing creates an Internet-facing load balancer
	// with a DNS name that resolves to public IP addresses. For more information about
	// Internet-facing and Internal load balancers, see [Load Balancer Scheme]in the Elastic Load Balancing
	// User Guide.
	//
	// Specify internal to create a load balancer with a DNS name that resolves to
	// private IP addresses.
	//
	// [Load Balancer Scheme]: https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#load-balancer-scheme
	Scheme *string

	// The IDs of the security groups to assign to the load balancer.
	SecurityGroups []string

	// The IDs of the subnets in your VPC to attach to the load balancer. Specify one
	// subnet per Availability Zone specified in AvailabilityZones .
	Subnets []string

	// A list of tags to assign to the load balancer.
	//
	// For more information about tagging your load balancer, see [Tag Your Classic Load Balancer] in the Classic Load
	// Balancers Guide.
	//
	// [Tag Your Classic Load Balancer]: https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html
	Tags []types.Tag
	// contains filtered or unexported fields
}

Contains the parameters for CreateLoadBalancer.

type CreateLoadBalancerListenersInput

type CreateLoadBalancerListenersInput struct {

	// The listeners.
	//
	// This member is required.
	Listeners []types.Listener

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for CreateLoadBalancerListeners.

type CreateLoadBalancerListenersOutput

type CreateLoadBalancerListenersOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the parameters for CreateLoadBalancerListener.

type CreateLoadBalancerOutput

type CreateLoadBalancerOutput struct {

	// The DNS name of the load balancer.
	DNSName *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for CreateLoadBalancer.

type CreateLoadBalancerPolicyInput

type CreateLoadBalancerPolicyInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The name of the load balancer policy to be created. This name must be unique
	// within the set of policies for this load balancer.
	//
	// This member is required.
	PolicyName *string

	// The name of the base policy type. To get the list of policy types, use DescribeLoadBalancerPolicyTypes.
	//
	// This member is required.
	PolicyTypeName *string

	// The policy attributes.
	PolicyAttributes []types.PolicyAttribute
	// contains filtered or unexported fields
}

Contains the parameters for CreateLoadBalancerPolicy.

type CreateLoadBalancerPolicyOutput

type CreateLoadBalancerPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of CreateLoadBalancerPolicy.

type DeleteLoadBalancerInput

type DeleteLoadBalancerInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for DeleteLoadBalancer.

type DeleteLoadBalancerListenersInput

type DeleteLoadBalancerListenersInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The client port numbers of the listeners.
	//
	// This member is required.
	LoadBalancerPorts []int32
	// contains filtered or unexported fields
}

Contains the parameters for DeleteLoadBalancerListeners.

type DeleteLoadBalancerListenersOutput

type DeleteLoadBalancerListenersOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DeleteLoadBalancerListeners.

type DeleteLoadBalancerOutput

type DeleteLoadBalancerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DeleteLoadBalancer.

type DeleteLoadBalancerPolicyInput

type DeleteLoadBalancerPolicyInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The name of the policy.
	//
	// This member is required.
	PolicyName *string
	// contains filtered or unexported fields
}

Contains the parameters for DeleteLoadBalancerPolicy.

type DeleteLoadBalancerPolicyOutput

type DeleteLoadBalancerPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DeleteLoadBalancerPolicy.

type DeregisterInstancesFromLoadBalancerInput

type DeregisterInstancesFromLoadBalancerInput struct {

	// The IDs of the instances.
	//
	// This member is required.
	Instances []types.Instance

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for DeregisterInstancesFromLoadBalancer.

type DeregisterInstancesFromLoadBalancerOutput

type DeregisterInstancesFromLoadBalancerOutput struct {

	// The remaining instances registered with the load balancer.
	Instances []types.Instance

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DeregisterInstancesFromLoadBalancer.

type DescribeAccountLimitsInput

type DescribeAccountLimitsInput struct {

	// The marker for the next set of results. (You received this marker from a
	// previous call.)
	Marker *string

	// The maximum number of results to return with this call.
	PageSize *int32
	// contains filtered or unexported fields
}

type DescribeAccountLimitsOutput

type DescribeAccountLimitsOutput struct {

	// Information about the limits.
	Limits []types.Limit

	// The marker to use when requesting the next set of results. If there are no
	// additional results, the string is empty.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeInstanceHealthAPIClient added in v0.31.0

type DescribeInstanceHealthAPIClient interface {
	DescribeInstanceHealth(context.Context, *DescribeInstanceHealthInput, ...func(*Options)) (*DescribeInstanceHealthOutput, error)
}

DescribeInstanceHealthAPIClient is a client that implements the DescribeInstanceHealth operation.

type DescribeInstanceHealthInput

type DescribeInstanceHealthInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The IDs of the instances.
	Instances []types.Instance
	// contains filtered or unexported fields
}

Contains the parameters for DescribeInstanceHealth.

type DescribeInstanceHealthOutput

type DescribeInstanceHealthOutput struct {

	// Information about the health of the instances.
	InstanceStates []types.InstanceState

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for DescribeInstanceHealth.

type DescribeLoadBalancerAttributesInput

type DescribeLoadBalancerAttributesInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for DescribeLoadBalancerAttributes.

type DescribeLoadBalancerAttributesOutput

type DescribeLoadBalancerAttributesOutput struct {

	// Information about the load balancer attributes.
	LoadBalancerAttributes *types.LoadBalancerAttributes

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DescribeLoadBalancerAttributes.

type DescribeLoadBalancerPoliciesInput

type DescribeLoadBalancerPoliciesInput struct {

	// The name of the load balancer.
	LoadBalancerName *string

	// The names of the policies.
	PolicyNames []string
	// contains filtered or unexported fields
}

Contains the parameters for DescribeLoadBalancerPolicies.

type DescribeLoadBalancerPoliciesOutput

type DescribeLoadBalancerPoliciesOutput struct {

	// Information about the policies.
	PolicyDescriptions []types.PolicyDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DescribeLoadBalancerPolicies.

type DescribeLoadBalancerPolicyTypesInput

type DescribeLoadBalancerPolicyTypesInput struct {

	// The names of the policy types. If no names are specified, describes all policy
	// types defined by Elastic Load Balancing.
	PolicyTypeNames []string
	// contains filtered or unexported fields
}

Contains the parameters for DescribeLoadBalancerPolicyTypes.

type DescribeLoadBalancerPolicyTypesOutput

type DescribeLoadBalancerPolicyTypesOutput struct {

	// Information about the policy types.
	PolicyTypeDescriptions []types.PolicyTypeDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DescribeLoadBalancerPolicyTypes.

type DescribeLoadBalancersAPIClient added in v0.30.0

type DescribeLoadBalancersAPIClient interface {
	DescribeLoadBalancers(context.Context, *DescribeLoadBalancersInput, ...func(*Options)) (*DescribeLoadBalancersOutput, error)
}

DescribeLoadBalancersAPIClient is a client that implements the DescribeLoadBalancers operation.

type DescribeLoadBalancersInput

type DescribeLoadBalancersInput struct {

	// The names of the load balancers.
	LoadBalancerNames []string

	// The marker for the next set of results. (You received this marker from a
	// previous call.)
	Marker *string

	// The maximum number of results to return with this call (a number from 1 to
	// 400). The default is 400.
	PageSize *int32
	// contains filtered or unexported fields
}

Contains the parameters for DescribeLoadBalancers.

type DescribeLoadBalancersOutput

type DescribeLoadBalancersOutput struct {

	// Information about the load balancers.
	LoadBalancerDescriptions []types.LoadBalancerDescription

	// The marker to use when requesting the next set of results. If there are no
	// additional results, the string is empty.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the parameters for DescribeLoadBalancers.

type DescribeLoadBalancersPaginator added in v0.30.0

type DescribeLoadBalancersPaginator struct {
	// contains filtered or unexported fields
}

DescribeLoadBalancersPaginator is a paginator for DescribeLoadBalancers

func NewDescribeLoadBalancersPaginator added in v0.30.0

NewDescribeLoadBalancersPaginator returns a new DescribeLoadBalancersPaginator

func (*DescribeLoadBalancersPaginator) HasMorePages added in v0.30.0

func (p *DescribeLoadBalancersPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeLoadBalancersPaginator) NextPage added in v0.30.0

NextPage retrieves the next DescribeLoadBalancers page.

type DescribeLoadBalancersPaginatorOptions added in v0.30.0

type DescribeLoadBalancersPaginatorOptions struct {
	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeLoadBalancersPaginatorOptions is the paginator options for DescribeLoadBalancers

type DescribeTagsInput

type DescribeTagsInput struct {

	// The names of the load balancers.
	//
	// This member is required.
	LoadBalancerNames []string
	// contains filtered or unexported fields
}

Contains the parameters for DescribeTags.

type DescribeTagsOutput

type DescribeTagsOutput struct {

	// Information about the tags.
	TagDescriptions []types.TagDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for DescribeTags.

type DetachLoadBalancerFromSubnetsInput

type DetachLoadBalancerFromSubnetsInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The IDs of the subnets.
	//
	// This member is required.
	Subnets []string
	// contains filtered or unexported fields
}

Contains the parameters for DetachLoadBalancerFromSubnets.

type DetachLoadBalancerFromSubnetsOutput

type DetachLoadBalancerFromSubnetsOutput struct {

	// The IDs of the remaining subnets for the load balancer.
	Subnets []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of DetachLoadBalancerFromSubnets.

type DisableAvailabilityZonesForLoadBalancerInput

type DisableAvailabilityZonesForLoadBalancerInput struct {

	// The Availability Zones.
	//
	// This member is required.
	AvailabilityZones []string

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for DisableAvailabilityZonesForLoadBalancer.

type DisableAvailabilityZonesForLoadBalancerOutput

type DisableAvailabilityZonesForLoadBalancerOutput struct {

	// The remaining Availability Zones for the load balancer.
	AvailabilityZones []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output for DisableAvailabilityZonesForLoadBalancer.

type EnableAvailabilityZonesForLoadBalancerInput

type EnableAvailabilityZonesForLoadBalancerInput struct {

	// The Availability Zones. These must be in the same region as the load balancer.
	//
	// This member is required.
	AvailabilityZones []string

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for EnableAvailabilityZonesForLoadBalancer.

type EnableAvailabilityZonesForLoadBalancerOutput

type EnableAvailabilityZonesForLoadBalancerOutput struct {

	// The updated list of Availability Zones for the load balancer.
	AvailabilityZones []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of EnableAvailabilityZonesForLoadBalancer.

type EndpointParameters added in v1.16.0

type EndpointParameters struct {
	// The AWS region used to dispatch the request.
	//
	// Parameter is
	// required.
	//
	// AWS::Region
	Region *string

	// When true, use the dual-stack endpoint. If the configured endpoint does not
	// support dual-stack, dispatching the request MAY return an error.
	//
	// Defaults to
	// false if no value is provided.
	//
	// AWS::UseDualStack
	UseDualStack *bool

	// When true, send this request to the FIPS-compliant regional endpoint. If the
	// configured endpoint does not have a FIPS compliant endpoint, dispatching the
	// request will return an error.
	//
	// Defaults to false if no value is
	// provided.
	//
	// AWS::UseFIPS
	UseFIPS *bool

	// Override the endpoint used to send this request
	//
	// Parameter is
	// required.
	//
	// SDK::Endpoint
	Endpoint *string
}

EndpointParameters provides the parameters that influence how endpoints are resolved.

func (EndpointParameters) ValidateRequired added in v1.16.0

func (p EndpointParameters) ValidateRequired() error

ValidateRequired validates required parameters are set.

func (EndpointParameters) WithDefaults added in v1.16.0

func (p EndpointParameters) WithDefaults() EndpointParameters

WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func EndpointResolverFromURL added in v1.1.0

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error)

type EndpointResolverOptions added in v0.29.0

type EndpointResolverOptions = internalendpoints.Options

EndpointResolverOptions is the service endpoint resolver options

type EndpointResolverV2 added in v1.16.0

type EndpointResolverV2 interface {
	// ResolveEndpoint attempts to resolve the endpoint with the provided options,
	// returning the endpoint if found. Otherwise an error is returned.
	ResolveEndpoint(ctx context.Context, params EndpointParameters) (
		smithyendpoints.Endpoint, error,
	)
}

EndpointResolverV2 provides the interface for resolving service endpoints.

func NewDefaultEndpointResolverV2 added in v1.16.0

func NewDefaultEndpointResolverV2() EndpointResolverV2

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
}

type InstanceDeregisteredWaiter added in v1.17.0

type InstanceDeregisteredWaiter struct {
	// contains filtered or unexported fields
}

InstanceDeregisteredWaiter defines the waiters for InstanceDeregistered

func NewInstanceDeregisteredWaiter added in v1.17.0

func NewInstanceDeregisteredWaiter(client DescribeInstanceHealthAPIClient, optFns ...func(*InstanceDeregisteredWaiterOptions)) *InstanceDeregisteredWaiter

NewInstanceDeregisteredWaiter constructs a InstanceDeregisteredWaiter.

func (*InstanceDeregisteredWaiter) Wait added in v1.17.0

Wait calls the waiter function for InstanceDeregistered waiter. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

func (*InstanceDeregisteredWaiter) WaitForOutput added in v1.17.0

WaitForOutput calls the waiter function for InstanceDeregistered waiter and returns the output of the successful operation. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

type InstanceDeregisteredWaiterOptions added in v1.17.0

type InstanceDeregisteredWaiterOptions struct {

	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	//
	// Passing options here is functionally equivalent to passing values to this
	// config's ClientOptions field that extend the inner client's APIOptions directly.
	APIOptions []func(*middleware.Stack) error

	// Functional options to be passed to all operations invoked by this client.
	//
	// Function values that modify the inner APIOptions are applied after the waiter
	// config's own APIOptions modifiers.
	ClientOptions []func(*Options)

	// MinDelay is the minimum amount of time to delay between retries. If unset,
	// InstanceDeregisteredWaiter will use default minimum delay of 15 seconds. Note
	// that MinDelay must resolve to a value lesser than or equal to the MaxDelay.
	MinDelay time.Duration

	// MaxDelay is the maximum amount of time to delay between retries. If unset or
	// set to zero, InstanceDeregisteredWaiter will use default max delay of 120
	// seconds. Note that MaxDelay must resolve to value greater than or equal to the
	// MinDelay.
	MaxDelay time.Duration

	// LogWaitAttempts is used to enable logging for waiter retry attempts
	LogWaitAttempts bool

	// Retryable is function that can be used to override the service defined
	// waiter-behavior based on operation output, or returned error. This function is
	// used by the waiter to decide if a state is retryable or a terminal state.
	//
	// By default service-modeled logic will populate this option. This option can
	// thus be used to define a custom waiter state with fall-back to service-modeled
	// waiter state mutators.The function returns an error in case of a failure state.
	// In case of retry state, this function returns a bool value of true and nil
	// error, while in case of success it returns a bool value of false and nil error.
	Retryable func(context.Context, *DescribeInstanceHealthInput, *DescribeInstanceHealthOutput, error) (bool, error)
}

InstanceDeregisteredWaiterOptions are waiter options for InstanceDeregisteredWaiter

type InstanceInServiceWaiter added in v1.17.0

type InstanceInServiceWaiter struct {
	// contains filtered or unexported fields
}

InstanceInServiceWaiter defines the waiters for InstanceInService

func NewInstanceInServiceWaiter added in v1.17.0

func NewInstanceInServiceWaiter(client DescribeInstanceHealthAPIClient, optFns ...func(*InstanceInServiceWaiterOptions)) *InstanceInServiceWaiter

NewInstanceInServiceWaiter constructs a InstanceInServiceWaiter.

func (*InstanceInServiceWaiter) Wait added in v1.17.0

Wait calls the waiter function for InstanceInService waiter. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

func (*InstanceInServiceWaiter) WaitForOutput added in v1.17.0

WaitForOutput calls the waiter function for InstanceInService waiter and returns the output of the successful operation. The maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is required and must be greater than zero.

type InstanceInServiceWaiterOptions added in v1.17.0

type InstanceInServiceWaiterOptions struct {

	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	//
	// Passing options here is functionally equivalent to passing values to this
	// config's ClientOptions field that extend the inner client's APIOptions directly.
	APIOptions []func(*middleware.Stack) error

	// Functional options to be passed to all operations invoked by this client.
	//
	// Function values that modify the inner APIOptions are applied after the waiter
	// config's own APIOptions modifiers.
	ClientOptions []func(*Options)

	// MinDelay is the minimum amount of time to delay between retries. If unset,
	// InstanceInServiceWaiter will use default minimum delay of 15 seconds. Note that
	// MinDelay must resolve to a value lesser than or equal to the MaxDelay.
	MinDelay time.Duration

	// MaxDelay is the maximum amount of time to delay between retries. If unset or
	// set to zero, InstanceInServiceWaiter will use default max delay of 120 seconds.
	// Note that MaxDelay must resolve to value greater than or equal to the MinDelay.
	MaxDelay time.Duration

	// LogWaitAttempts is used to enable logging for waiter retry attempts
	LogWaitAttempts bool

	// Retryable is function that can be used to override the service defined
	// waiter-behavior based on operation output, or returned error. This function is
	// used by the waiter to decide if a state is retryable or a terminal state.
	//
	// By default service-modeled logic will populate this option. This option can
	// thus be used to define a custom waiter state with fall-back to service-modeled
	// waiter state mutators.The function returns an error in case of a failure state.
	// In case of retry state, this function returns a bool value of true and nil
	// error, while in case of success it returns a bool value of false and nil error.
	Retryable func(context.Context, *DescribeInstanceHealthInput, *DescribeInstanceHealthOutput, error) (bool, error)
}

InstanceInServiceWaiterOptions are waiter options for InstanceInServiceWaiter

type ModifyLoadBalancerAttributesInput

type ModifyLoadBalancerAttributesInput struct {

	// The attributes for the load balancer.
	//
	// This member is required.
	LoadBalancerAttributes *types.LoadBalancerAttributes

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for ModifyLoadBalancerAttributes.

type ModifyLoadBalancerAttributesOutput

type ModifyLoadBalancerAttributesOutput struct {

	// Information about the load balancer attributes.
	LoadBalancerAttributes *types.LoadBalancerAttributes

	// The name of the load balancer.
	LoadBalancerName *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of ModifyLoadBalancerAttributes.

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The optional application specific identifier appended to the User-Agent header.
	AppID string

	// This endpoint will be given as input to an EndpointResolverV2. It is used for
	// providing a custom base endpoint that is subject to modifications by the
	// processing EndpointResolverV2.
	BaseEndpoint *string

	// Configures the events that will be sent to the configured logger.
	ClientLogMode aws.ClientLogMode

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The configuration DefaultsMode that the SDK should use when constructing the
	// clients initial default settings.
	DefaultsMode aws.DefaultsMode

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions EndpointResolverOptions

	// The service endpoint resolver.
	//
	// Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a
	// value for this field will likely prevent you from using any endpoint-related
	// service features released after the introduction of EndpointResolverV2 and
	// BaseEndpoint.
	//
	// To migrate an EndpointResolver implementation that uses a custom endpoint, set
	// the client option BaseEndpoint instead.
	EndpointResolver EndpointResolver

	// Resolves the endpoint used for a particular service operation. This should be
	// used over the deprecated EndpointResolver.
	EndpointResolverV2 EndpointResolverV2

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// The logger writer interface to write logging messages to.
	Logger logging.Logger

	// The client meter provider.
	MeterProvider metrics.MeterProvider

	// The region to send requests to. (Required)
	Region string

	// RetryMaxAttempts specifies the maximum number attempts an API client will call
	// an operation that fails with a retryable error. A value of 0 is ignored, and
	// will not be used to configure the API client created default retryer, or modify
	// per operation call's retry max attempts.
	//
	// If specified in an operation call's functional options with a value that is
	// different than the constructed client's Options, the Client's Retryer will be
	// wrapped to use the operation's specific RetryMaxAttempts value.
	RetryMaxAttempts int

	// RetryMode specifies the retry mode the API client will be created with, if
	// Retryer option is not also specified.
	//
	// When creating a new API Clients this member will only be used if the Retryer
	// Options member is nil. This value will be ignored if Retryer is not nil.
	//
	// Currently does not support per operation call overrides, may in the future.
	RetryMode aws.RetryMode

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer. The kind of
	// default retry created by the API client can be changed with the RetryMode
	// option.
	Retryer aws.Retryer

	// The RuntimeEnvironment configuration, only populated if the DefaultsMode is set
	// to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You
	// should not populate this structure programmatically, or rely on the values here
	// within your applications.
	RuntimeEnvironment aws.RuntimeEnvironment

	// The client tracer provider.
	TracerProvider tracing.TracerProvider

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient

	// The auth scheme resolver which determines how to authenticate for each
	// operation.
	AuthSchemeResolver AuthSchemeResolver

	// The list of auth schemes supported by the client.
	AuthSchemes []smithyhttp.AuthScheme
	// contains filtered or unexported fields
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetIdentityResolver added in v1.20.2

func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver

type RegisterInstancesWithLoadBalancerInput

type RegisterInstancesWithLoadBalancerInput struct {

	// The IDs of the instances.
	//
	// This member is required.
	Instances []types.Instance

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string
	// contains filtered or unexported fields
}

Contains the parameters for RegisterInstancesWithLoadBalancer.

type RegisterInstancesWithLoadBalancerOutput

type RegisterInstancesWithLoadBalancerOutput struct {

	// The updated list of instances for the load balancer.
	Instances []types.Instance

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of RegisterInstancesWithLoadBalancer.

type RemoveTagsInput

type RemoveTagsInput struct {

	// The name of the load balancer. You can specify a maximum of one load balancer
	// name.
	//
	// This member is required.
	LoadBalancerNames []string

	// The list of tag keys to remove.
	//
	// This member is required.
	Tags []types.TagKeyOnly
	// contains filtered or unexported fields
}

Contains the parameters for RemoveTags.

type RemoveTagsOutput

type RemoveTagsOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of RemoveTags.

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  EndpointResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type SetLoadBalancerListenerSSLCertificateInput

type SetLoadBalancerListenerSSLCertificateInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The port that uses the specified SSL certificate.
	//
	// This member is required.
	LoadBalancerPort int32

	// The Amazon Resource Name (ARN) of the SSL certificate.
	//
	// This member is required.
	SSLCertificateId *string
	// contains filtered or unexported fields
}

Contains the parameters for SetLoadBalancerListenerSSLCertificate.

type SetLoadBalancerListenerSSLCertificateOutput

type SetLoadBalancerListenerSSLCertificateOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of SetLoadBalancerListenerSSLCertificate.

type SetLoadBalancerPoliciesForBackendServerInput

type SetLoadBalancerPoliciesForBackendServerInput struct {

	// The port number associated with the EC2 instance.
	//
	// This member is required.
	InstancePort *int32

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The names of the policies. If the list is empty, then all current polices are
	// removed from the EC2 instance.
	//
	// This member is required.
	PolicyNames []string
	// contains filtered or unexported fields
}

Contains the parameters for SetLoadBalancerPoliciesForBackendServer.

type SetLoadBalancerPoliciesForBackendServerOutput

type SetLoadBalancerPoliciesForBackendServerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of SetLoadBalancerPoliciesForBackendServer.

type SetLoadBalancerPoliciesOfListenerInput

type SetLoadBalancerPoliciesOfListenerInput struct {

	// The name of the load balancer.
	//
	// This member is required.
	LoadBalancerName *string

	// The external port of the load balancer.
	//
	// This member is required.
	LoadBalancerPort int32

	// The names of the policies. This list must include all policies to be enabled.
	// If you omit a policy that is currently enabled, it is disabled. If the list is
	// empty, all current policies are disabled.
	//
	// This member is required.
	PolicyNames []string
	// contains filtered or unexported fields
}

Contains the parameters for SetLoadBalancePoliciesOfListener.

type SetLoadBalancerPoliciesOfListenerOutput

type SetLoadBalancerPoliciesOfListenerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Contains the output of SetLoadBalancePoliciesOfListener.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

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