Class: Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).
Instance Attribute Summary collapse
-
#disable_connection_drain_on_failover ⇒ Boolean
(also: #disable_connection_drain_on_failover?)
This can be set to true only if the protocol is TCP.
-
#drop_traffic_if_unhealthy ⇒ Boolean
(also: #drop_traffic_if_unhealthy?)
Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy.
-
#failover_ratio ⇒ Float
Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BackendServiceFailoverPolicy
constructor
A new instance of BackendServiceFailoverPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BackendServiceFailoverPolicy
Returns a new instance of BackendServiceFailoverPolicy.
4059 4060 4061 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 4059 def initialize(**args) update!(**args) end |
Instance Attribute Details
#disable_connection_drain_on_failover ⇒ Boolean Also known as: disable_connection_drain_on_failover?
This can be set to true only if the protocol is TCP.
The default is false.
Corresponds to the JSON property disableConnectionDrainOnFailover
4037 4038 4039 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 4037 def disable_connection_drain_on_failover @disable_connection_drain_on_failover end |
#drop_traffic_if_unhealthy ⇒ Boolean Also known as: drop_traffic_if_unhealthy?
Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
Load Balancing, If set to true, connections to the load balancer are dropped
when all primary and all backup backend VMs are unhealthy.If set to false,
connections are distributed among all primary VMs when all primary and all
backup backend VMs are unhealthy. The default is false.
Corresponds to the JSON property dropTrafficIfUnhealthy
4047 4048 4049 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 4047 def drop_traffic_if_unhealthy @drop_traffic_if_unhealthy end |
#failover_ratio ⇒ Float
Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
Load Balancing. The value of the field must be in the range [0, 1]. If the
value is 0, the load balancer performs a failover when the number of healthy
primary VMs equals zero. For all other values, the load balancer performs a
failover when the total number of healthy primary VMs is less than this ratio.
Corresponds to the JSON property failoverRatio
4057 4058 4059 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 4057 def failover_ratio @failover_ratio end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
4064 4065 4066 4067 4068 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 4064 def update!(**args) @disable_connection_drain_on_failover = args[:disable_connection_drain_on_failover] if args.key?(:disable_connection_drain_on_failover) @drop_traffic_if_unhealthy = args[:drop_traffic_if_unhealthy] if args.key?(:drop_traffic_if_unhealthy) @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio) end |