{-# OPTIONS_GHC -fno-warn-duplicate-exports #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- | -- Module : Amazonka.ELBV2 -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Derived from API version @2015-12-01@ of the AWS service descriptions, licensed under Apache 2.0. -- -- Elastic Load Balancing -- -- A load balancer distributes incoming traffic across targets, such as -- your EC2 instances. This enables you to increase the availability of -- your application. The load balancer also monitors the health of its -- registered targets and ensures that it routes traffic only to healthy -- targets. 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. You -- configure a target group with a protocol and port number for connections -- from the load balancer to the targets, and with health check settings to -- be used when checking the health status of the targets. -- -- Elastic Load Balancing supports the following types of load balancers: -- Application Load Balancers, Network Load Balancers, Gateway Load -- Balancers, and Classic Load Balancers. This reference covers the -- following load balancer types: -- -- - Application Load Balancer - Operates at the application layer (layer -- 7) and supports HTTP and HTTPS. -- -- - Network Load Balancer - Operates at the transport layer (layer 4) -- and supports TCP, TLS, and UDP. -- -- - Gateway Load Balancer - Operates at the network layer (layer 3). -- -- For more information, see the -- . -- -- All Elastic Load Balancing operations are idempotent, which means that -- they complete at most one time. If you repeat an operation, it succeeds. module Amazonka.ELBV2 ( -- * Service Configuration defaultService, -- * Errors -- $errors -- ** ALPNPolicyNotSupportedException _ALPNPolicyNotSupportedException, -- ** AllocationIdNotFoundException _AllocationIdNotFoundException, -- ** AvailabilityZoneNotSupportedException _AvailabilityZoneNotSupportedException, -- ** CertificateNotFoundException _CertificateNotFoundException, -- ** DuplicateListenerException _DuplicateListenerException, -- ** DuplicateLoadBalancerNameException _DuplicateLoadBalancerNameException, -- ** DuplicateTagKeysException _DuplicateTagKeysException, -- ** DuplicateTargetGroupNameException _DuplicateTargetGroupNameException, -- ** HealthUnavailableException _HealthUnavailableException, -- ** IncompatibleProtocolsException _IncompatibleProtocolsException, -- ** InvalidConfigurationRequestException _InvalidConfigurationRequestException, -- ** InvalidLoadBalancerActionException _InvalidLoadBalancerActionException, -- ** InvalidSchemeException _InvalidSchemeException, -- ** InvalidSecurityGroupException _InvalidSecurityGroupException, -- ** InvalidSubnetException _InvalidSubnetException, -- ** InvalidTargetException _InvalidTargetException, -- ** ListenerNotFoundException _ListenerNotFoundException, -- ** LoadBalancerNotFoundException _LoadBalancerNotFoundException, -- ** OperationNotPermittedException _OperationNotPermittedException, -- ** PriorityInUseException _PriorityInUseException, -- ** ResourceInUseException _ResourceInUseException, -- ** RuleNotFoundException _RuleNotFoundException, -- ** SSLPolicyNotFoundException _SSLPolicyNotFoundException, -- ** SubnetNotFoundException _SubnetNotFoundException, -- ** TargetGroupAssociationLimitException _TargetGroupAssociationLimitException, -- ** TargetGroupNotFoundException _TargetGroupNotFoundException, -- ** TooManyActionsException _TooManyActionsException, -- ** TooManyCertificatesException _TooManyCertificatesException, -- ** TooManyListenersException _TooManyListenersException, -- ** TooManyLoadBalancersException _TooManyLoadBalancersException, -- ** TooManyRegistrationsForTargetIdException _TooManyRegistrationsForTargetIdException, -- ** TooManyRulesException _TooManyRulesException, -- ** TooManyTagsException _TooManyTagsException, -- ** TooManyTargetGroupsException _TooManyTargetGroupsException, -- ** TooManyTargetsException _TooManyTargetsException, -- ** TooManyUniqueTargetGroupsPerLoadBalancerException _TooManyUniqueTargetGroupsPerLoadBalancerException, -- ** UnsupportedProtocolException _UnsupportedProtocolException, -- * Waiters -- $waiters -- ** LoadBalancerAvailable newLoadBalancerAvailable, -- ** LoadBalancerExists newLoadBalancerExists, -- ** LoadBalancersDeleted newLoadBalancersDeleted, -- ** TargetDeregistered newTargetDeregistered, -- ** TargetInService newTargetInService, -- * Operations -- $operations -- ** AddListenerCertificates AddListenerCertificates (AddListenerCertificates'), newAddListenerCertificates, AddListenerCertificatesResponse (AddListenerCertificatesResponse'), newAddListenerCertificatesResponse, -- ** AddTags AddTags (AddTags'), newAddTags, AddTagsResponse (AddTagsResponse'), newAddTagsResponse, -- ** CreateListener CreateListener (CreateListener'), newCreateListener, CreateListenerResponse (CreateListenerResponse'), newCreateListenerResponse, -- ** CreateLoadBalancer CreateLoadBalancer (CreateLoadBalancer'), newCreateLoadBalancer, CreateLoadBalancerResponse (CreateLoadBalancerResponse'), newCreateLoadBalancerResponse, -- ** CreateRule CreateRule (CreateRule'), newCreateRule, CreateRuleResponse (CreateRuleResponse'), newCreateRuleResponse, -- ** CreateTargetGroup CreateTargetGroup (CreateTargetGroup'), newCreateTargetGroup, CreateTargetGroupResponse (CreateTargetGroupResponse'), newCreateTargetGroupResponse, -- ** DeleteListener DeleteListener (DeleteListener'), newDeleteListener, DeleteListenerResponse (DeleteListenerResponse'), newDeleteListenerResponse, -- ** DeleteLoadBalancer DeleteLoadBalancer (DeleteLoadBalancer'), newDeleteLoadBalancer, DeleteLoadBalancerResponse (DeleteLoadBalancerResponse'), newDeleteLoadBalancerResponse, -- ** DeleteRule DeleteRule (DeleteRule'), newDeleteRule, DeleteRuleResponse (DeleteRuleResponse'), newDeleteRuleResponse, -- ** DeleteTargetGroup DeleteTargetGroup (DeleteTargetGroup'), newDeleteTargetGroup, DeleteTargetGroupResponse (DeleteTargetGroupResponse'), newDeleteTargetGroupResponse, -- ** DeregisterTargets DeregisterTargets (DeregisterTargets'), newDeregisterTargets, DeregisterTargetsResponse (DeregisterTargetsResponse'), newDeregisterTargetsResponse, -- ** DescribeAccountLimits (Paginated) DescribeAccountLimits (DescribeAccountLimits'), newDescribeAccountLimits, DescribeAccountLimitsResponse (DescribeAccountLimitsResponse'), newDescribeAccountLimitsResponse, -- ** DescribeListenerCertificates (Paginated) DescribeListenerCertificates (DescribeListenerCertificates'), newDescribeListenerCertificates, DescribeListenerCertificatesResponse (DescribeListenerCertificatesResponse'), newDescribeListenerCertificatesResponse, -- ** DescribeListeners (Paginated) DescribeListeners (DescribeListeners'), newDescribeListeners, DescribeListenersResponse (DescribeListenersResponse'), newDescribeListenersResponse, -- ** DescribeLoadBalancerAttributes DescribeLoadBalancerAttributes (DescribeLoadBalancerAttributes'), newDescribeLoadBalancerAttributes, DescribeLoadBalancerAttributesResponse (DescribeLoadBalancerAttributesResponse'), newDescribeLoadBalancerAttributesResponse, -- ** DescribeLoadBalancers (Paginated) DescribeLoadBalancers (DescribeLoadBalancers'), newDescribeLoadBalancers, DescribeLoadBalancersResponse (DescribeLoadBalancersResponse'), newDescribeLoadBalancersResponse, -- ** DescribeRules (Paginated) DescribeRules (DescribeRules'), newDescribeRules, DescribeRulesResponse (DescribeRulesResponse'), newDescribeRulesResponse, -- ** DescribeSSLPolicies (Paginated) DescribeSSLPolicies (DescribeSSLPolicies'), newDescribeSSLPolicies, DescribeSSLPoliciesResponse (DescribeSSLPoliciesResponse'), newDescribeSSLPoliciesResponse, -- ** DescribeTags DescribeTags (DescribeTags'), newDescribeTags, DescribeTagsResponse (DescribeTagsResponse'), newDescribeTagsResponse, -- ** DescribeTargetGroupAttributes DescribeTargetGroupAttributes (DescribeTargetGroupAttributes'), newDescribeTargetGroupAttributes, DescribeTargetGroupAttributesResponse (DescribeTargetGroupAttributesResponse'), newDescribeTargetGroupAttributesResponse, -- ** DescribeTargetGroups (Paginated) DescribeTargetGroups (DescribeTargetGroups'), newDescribeTargetGroups, DescribeTargetGroupsResponse (DescribeTargetGroupsResponse'), newDescribeTargetGroupsResponse, -- ** DescribeTargetHealth DescribeTargetHealth (DescribeTargetHealth'), newDescribeTargetHealth, DescribeTargetHealthResponse (DescribeTargetHealthResponse'), newDescribeTargetHealthResponse, -- ** ModifyListener ModifyListener (ModifyListener'), newModifyListener, ModifyListenerResponse (ModifyListenerResponse'), newModifyListenerResponse, -- ** ModifyLoadBalancerAttributes ModifyLoadBalancerAttributes (ModifyLoadBalancerAttributes'), newModifyLoadBalancerAttributes, ModifyLoadBalancerAttributesResponse (ModifyLoadBalancerAttributesResponse'), newModifyLoadBalancerAttributesResponse, -- ** ModifyRule ModifyRule (ModifyRule'), newModifyRule, ModifyRuleResponse (ModifyRuleResponse'), newModifyRuleResponse, -- ** ModifyTargetGroup ModifyTargetGroup (ModifyTargetGroup'), newModifyTargetGroup, ModifyTargetGroupResponse (ModifyTargetGroupResponse'), newModifyTargetGroupResponse, -- ** ModifyTargetGroupAttributes ModifyTargetGroupAttributes (ModifyTargetGroupAttributes'), newModifyTargetGroupAttributes, ModifyTargetGroupAttributesResponse (ModifyTargetGroupAttributesResponse'), newModifyTargetGroupAttributesResponse, -- ** RegisterTargets RegisterTargets (RegisterTargets'), newRegisterTargets, RegisterTargetsResponse (RegisterTargetsResponse'), newRegisterTargetsResponse, -- ** RemoveListenerCertificates RemoveListenerCertificates (RemoveListenerCertificates'), newRemoveListenerCertificates, RemoveListenerCertificatesResponse (RemoveListenerCertificatesResponse'), newRemoveListenerCertificatesResponse, -- ** RemoveTags RemoveTags (RemoveTags'), newRemoveTags, RemoveTagsResponse (RemoveTagsResponse'), newRemoveTagsResponse, -- ** SetIpAddressType SetIpAddressType (SetIpAddressType'), newSetIpAddressType, SetIpAddressTypeResponse (SetIpAddressTypeResponse'), newSetIpAddressTypeResponse, -- ** SetRulePriorities SetRulePriorities (SetRulePriorities'), newSetRulePriorities, SetRulePrioritiesResponse (SetRulePrioritiesResponse'), newSetRulePrioritiesResponse, -- ** SetSecurityGroups SetSecurityGroups (SetSecurityGroups'), newSetSecurityGroups, SetSecurityGroupsResponse (SetSecurityGroupsResponse'), newSetSecurityGroupsResponse, -- ** SetSubnets SetSubnets (SetSubnets'), newSetSubnets, SetSubnetsResponse (SetSubnetsResponse'), newSetSubnetsResponse, -- * Types -- ** ActionTypeEnum ActionTypeEnum (..), -- ** AuthenticateCognitoActionConditionalBehaviorEnum AuthenticateCognitoActionConditionalBehaviorEnum (..), -- ** AuthenticateOidcActionConditionalBehaviorEnum AuthenticateOidcActionConditionalBehaviorEnum (..), -- ** IpAddressType IpAddressType (..), -- ** LoadBalancerSchemeEnum LoadBalancerSchemeEnum (..), -- ** LoadBalancerStateEnum LoadBalancerStateEnum (..), -- ** LoadBalancerTypeEnum LoadBalancerTypeEnum (..), -- ** ProtocolEnum ProtocolEnum (..), -- ** RedirectActionStatusCodeEnum RedirectActionStatusCodeEnum (..), -- ** TargetGroupIpAddressTypeEnum TargetGroupIpAddressTypeEnum (..), -- ** TargetHealthReasonEnum TargetHealthReasonEnum (..), -- ** TargetHealthStateEnum TargetHealthStateEnum (..), -- ** TargetTypeEnum TargetTypeEnum (..), -- ** Action Action (Action'), newAction, -- ** AuthenticateCognitoActionConfig AuthenticateCognitoActionConfig (AuthenticateCognitoActionConfig'), newAuthenticateCognitoActionConfig, -- ** AuthenticateOidcActionConfig AuthenticateOidcActionConfig (AuthenticateOidcActionConfig'), newAuthenticateOidcActionConfig, -- ** AvailabilityZone AvailabilityZone (AvailabilityZone'), newAvailabilityZone, -- ** Certificate Certificate (Certificate'), newCertificate, -- ** Cipher Cipher (Cipher'), newCipher, -- ** FixedResponseActionConfig FixedResponseActionConfig (FixedResponseActionConfig'), newFixedResponseActionConfig, -- ** ForwardActionConfig ForwardActionConfig (ForwardActionConfig'), newForwardActionConfig, -- ** HostHeaderConditionConfig HostHeaderConditionConfig (HostHeaderConditionConfig'), newHostHeaderConditionConfig, -- ** HttpHeaderConditionConfig HttpHeaderConditionConfig (HttpHeaderConditionConfig'), newHttpHeaderConditionConfig, -- ** HttpRequestMethodConditionConfig HttpRequestMethodConditionConfig (HttpRequestMethodConditionConfig'), newHttpRequestMethodConditionConfig, -- ** Limit Limit (Limit'), newLimit, -- ** Listener Listener (Listener'), newListener, -- ** LoadBalancer LoadBalancer (LoadBalancer'), newLoadBalancer, -- ** LoadBalancerAddress LoadBalancerAddress (LoadBalancerAddress'), newLoadBalancerAddress, -- ** LoadBalancerAttribute LoadBalancerAttribute (LoadBalancerAttribute'), newLoadBalancerAttribute, -- ** LoadBalancerState LoadBalancerState (LoadBalancerState'), newLoadBalancerState, -- ** Matcher Matcher (Matcher'), newMatcher, -- ** PathPatternConditionConfig PathPatternConditionConfig (PathPatternConditionConfig'), newPathPatternConditionConfig, -- ** QueryStringConditionConfig QueryStringConditionConfig (QueryStringConditionConfig'), newQueryStringConditionConfig, -- ** QueryStringKeyValuePair QueryStringKeyValuePair (QueryStringKeyValuePair'), newQueryStringKeyValuePair, -- ** RedirectActionConfig RedirectActionConfig (RedirectActionConfig'), newRedirectActionConfig, -- ** Rule Rule (Rule'), newRule, -- ** RuleCondition RuleCondition (RuleCondition'), newRuleCondition, -- ** RulePriorityPair RulePriorityPair (RulePriorityPair'), newRulePriorityPair, -- ** SourceIpConditionConfig SourceIpConditionConfig (SourceIpConditionConfig'), newSourceIpConditionConfig, -- ** SslPolicy SslPolicy (SslPolicy'), newSslPolicy, -- ** SubnetMapping SubnetMapping (SubnetMapping'), newSubnetMapping, -- ** Tag Tag (Tag'), newTag, -- ** TagDescription TagDescription (TagDescription'), newTagDescription, -- ** TargetDescription TargetDescription (TargetDescription'), newTargetDescription, -- ** TargetGroup TargetGroup (TargetGroup'), newTargetGroup, -- ** TargetGroupAttribute TargetGroupAttribute (TargetGroupAttribute'), newTargetGroupAttribute, -- ** TargetGroupStickinessConfig TargetGroupStickinessConfig (TargetGroupStickinessConfig'), newTargetGroupStickinessConfig, -- ** TargetGroupTuple TargetGroupTuple (TargetGroupTuple'), newTargetGroupTuple, -- ** TargetHealth TargetHealth (TargetHealth'), newTargetHealth, -- ** TargetHealthDescription TargetHealthDescription (TargetHealthDescription'), newTargetHealthDescription, ) where import Amazonka.ELBV2.AddListenerCertificates import Amazonka.ELBV2.AddTags import Amazonka.ELBV2.CreateListener import Amazonka.ELBV2.CreateLoadBalancer import Amazonka.ELBV2.CreateRule import Amazonka.ELBV2.CreateTargetGroup import Amazonka.ELBV2.DeleteListener import Amazonka.ELBV2.DeleteLoadBalancer import Amazonka.ELBV2.DeleteRule import Amazonka.ELBV2.DeleteTargetGroup import Amazonka.ELBV2.DeregisterTargets import Amazonka.ELBV2.DescribeAccountLimits import Amazonka.ELBV2.DescribeListenerCertificates import Amazonka.ELBV2.DescribeListeners import Amazonka.ELBV2.DescribeLoadBalancerAttributes import Amazonka.ELBV2.DescribeLoadBalancers import Amazonka.ELBV2.DescribeRules import Amazonka.ELBV2.DescribeSSLPolicies import Amazonka.ELBV2.DescribeTags import Amazonka.ELBV2.DescribeTargetGroupAttributes import Amazonka.ELBV2.DescribeTargetGroups import Amazonka.ELBV2.DescribeTargetHealth import Amazonka.ELBV2.Lens import Amazonka.ELBV2.ModifyListener import Amazonka.ELBV2.ModifyLoadBalancerAttributes import Amazonka.ELBV2.ModifyRule import Amazonka.ELBV2.ModifyTargetGroup import Amazonka.ELBV2.ModifyTargetGroupAttributes import Amazonka.ELBV2.RegisterTargets import Amazonka.ELBV2.RemoveListenerCertificates import Amazonka.ELBV2.RemoveTags import Amazonka.ELBV2.SetIpAddressType import Amazonka.ELBV2.SetRulePriorities import Amazonka.ELBV2.SetSecurityGroups import Amazonka.ELBV2.SetSubnets import Amazonka.ELBV2.Types import Amazonka.ELBV2.Waiters -- $errors -- Error matchers are designed for use with the functions provided by -- . -- This allows catching (and rethrowing) service specific errors returned -- by 'ELBV2'. -- $operations -- Some AWS operations return results that are incomplete and require subsequent -- requests in order to obtain the entire result set. The process of sending -- subsequent requests to continue where a previous request left off is called -- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to -- 1000 objects at a time, and you must send subsequent requests with the -- appropriate Marker in order to retrieve the next page of results. -- -- Operations that have an 'AWSPager' instance can transparently perform subsequent -- requests, correctly setting Markers and other request facets to iterate through -- the entire result set of a truncated API operation. Operations which support -- this have an additional note in the documentation. -- -- Many operations have the ability to filter results on the server side. See the -- individual operation parameters for details. -- $waiters -- Waiters poll by repeatedly sending a request until some remote success condition -- configured by the 'Wait' specification is fulfilled. The 'Wait' specification -- determines how many attempts should be made, in addition to delay and retry strategies.