Class: Google::Apis::ComputeV1::BackendServiceFailoverPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::BackendServiceFailoverPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Overview
For load balancers that have configurable failover: Internal passthrough Network Load Balancers and external passthrough Network Load Balancers. On failover or failback, this field indicates whether connection draining will be honored. Google Cloud 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 if the protocol isTCP, UDP, or UNSPECIFIED.
-
#drop_traffic_if_unhealthy ⇒ Boolean
(also: #drop_traffic_if_unhealthy?)
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
The value of the field must be in the range[0, 1].
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.
5479 5480 5481 |
# File 'lib/google/apis/compute_v1/classes.rb', line 5479 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 if the protocol isTCP, UDP, or UNSPECIFIED.
The default is false.
Corresponds to the JSON property disableConnectionDrainOnFailover
5438 5439 5440 |
# File 'lib/google/apis/compute_v1/classes.rb', line 5438 def disable_connection_drain_on_failover @disable_connection_drain_on_failover end |
#drop_traffic_if_unhealthy ⇒ Boolean Also known as: drop_traffic_if_unhealthy?
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.
For load balancers that have configurable
failover:
Internal passthrough
Network Load
Balancers
and external passthrough
Network Load
Balancers.
The default is false.
Corresponds to the JSON property dropTrafficIfUnhealthy
5459 5460 5461 |
# File 'lib/google/apis/compute_v1/classes.rb', line 5459 def drop_traffic_if_unhealthy @drop_traffic_if_unhealthy end |
#failover_ratio ⇒ Float
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.
For load balancers that have configurable
failover:
Internal TCP/UDP Load
Balancing
and external TCP/UDP Load
Balancing.
Corresponds to the JSON property failoverRatio
5477 5478 5479 |
# File 'lib/google/apis/compute_v1/classes.rb', line 5477 def failover_ratio @failover_ratio end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5484 5485 5486 5487 5488 |
# File 'lib/google/apis/compute_v1/classes.rb', line 5484 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 |