Class: Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy

Inherits:
Object
  • Object
show all
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

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

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackendServiceFailoverPolicy

Returns a new instance of BackendServiceFailoverPolicy.



4448
4449
4450
# File 'lib/google/apis/compute_alpha/classes.rb', line 4448

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#disable_connection_drain_on_failoverBoolean 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

Returns:

  • (Boolean)


4420
4421
4422
# File 'lib/google/apis/compute_alpha/classes.rb', line 4420

def disable_connection_drain_on_failover
  @disable_connection_drain_on_failover
end

#drop_traffic_if_unhealthyBoolean 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

Returns:

  • (Boolean)


4433
4434
4435
# File 'lib/google/apis/compute_alpha/classes.rb', line 4433

def drop_traffic_if_unhealthy
  @drop_traffic_if_unhealthy
end

#failover_ratioFloat

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

Returns:

  • (Float)


4446
4447
4448
# File 'lib/google/apis/compute_alpha/classes.rb', line 4446

def failover_ratio
  @failover_ratio
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4453
4454
4455
4456
4457
# File 'lib/google/apis/compute_alpha/classes.rb', line 4453

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