Class: Google::Apis::ComputeBeta::BackendServiceConnectionTrackingPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::BackendServiceConnectionTrackingPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
Connection Tracking configuration for this BackendService.
Instance Attribute Summary collapse
-
#connection_persistence_on_unhealthy_backends ⇒ String
Specifies connection persistence when backends are unhealthy.
-
#idle_timeout_sec ⇒ Fixnum
Specifies how long to keep a Connection Tracking entry while there is no matching traffic (in seconds).
-
#tracking_mode ⇒ String
Specifies the key used for connection tracking.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BackendServiceConnectionTrackingPolicy
constructor
A new instance of BackendServiceConnectionTrackingPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BackendServiceConnectionTrackingPolicy
Returns a new instance of BackendServiceConnectionTrackingPolicy.
3845 3846 3847 |
# File 'lib/google/apis/compute_beta/classes.rb', line 3845 def initialize(**args) update!(**args) end |
Instance Attribute Details
#connection_persistence_on_unhealthy_backends ⇒ String
Specifies connection persistence when backends are unhealthy. The default
value is DEFAULT_FOR_PROTOCOL.
If set to DEFAULT_FOR_PROTOCOL, the existing connections persist on unhealthy
backends only for connection-oriented protocols (TCP and SCTP) and only if the
Tracking Mode is PER_CONNECTION (default tracking mode) or the Session
Affinity is configured for 5-tuple. They do not persist for UDP.
If set to NEVER_PERSIST, after a backend becomes unhealthy, the existing
connections on the unhealthy backend are never persisted on the unhealthy
backend. They are always diverted to newly selected healthy backends (unless
all backends are unhealthy).
If set to ALWAYS_PERSIST, existing connections always persist on unhealthy
backends regardless of protocol and session affinity. It is generally not
recommended to use this mode overriding the default.
Corresponds to the JSON property connectionPersistenceOnUnhealthyBackends
3824 3825 3826 |
# File 'lib/google/apis/compute_beta/classes.rb', line 3824 def connection_persistence_on_unhealthy_backends @connection_persistence_on_unhealthy_backends end |
#idle_timeout_sec ⇒ Fixnum
Specifies how long to keep a Connection Tracking entry while there is no
matching traffic (in seconds).
For L4 ILB the minimum(default) is 10 minutes and maximum is 16 hours.
For NLB the minimum(default) is 60 seconds and the maximum is 16 hours.
This field will be supported only if the Connection Tracking key is less than
5-tuple.
Corresponds to the JSON property idleTimeoutSec
3834 3835 3836 |
# File 'lib/google/apis/compute_beta/classes.rb', line 3834 def idle_timeout_sec @idle_timeout_sec end |
#tracking_mode ⇒ String
Specifies the key used for connection tracking. There are two options:
PER_CONNECTION: This is the default mode. The Connection Tracking is performed
as per the Connection Key (default Hash Method) for the specific protocol.
PER_SESSION: The Connection Tracking is performed as per the configured
Session Affinity. It matches the configured Session Affinity.
Corresponds to the JSON property trackingMode
3843 3844 3845 |
# File 'lib/google/apis/compute_beta/classes.rb', line 3843 def tracking_mode @tracking_mode end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3850 3851 3852 3853 3854 |
# File 'lib/google/apis/compute_beta/classes.rb', line 3850 def update!(**args) @connection_persistence_on_unhealthy_backends = args[:connection_persistence_on_unhealthy_backends] if args.key?(:connection_persistence_on_unhealthy_backends) @idle_timeout_sec = args[:idle_timeout_sec] if args.key?(:idle_timeout_sec) @tracking_mode = args[:tracking_mode] if args.key?(:tracking_mode) end |