Class: Google::Apis::DnsV1beta2::RrSetRoutingPolicyPrimaryBackupPolicy

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dns_v1beta2/classes.rb,
lib/google/apis/dns_v1beta2/representations.rb,
lib/google/apis/dns_v1beta2/representations.rb

Overview

Configures a RRSetRoutingPolicy such that all queries are responded with the primary_targets if they are healthy. And if all of them are unhealthy, then we fallback to a geo localized policy.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RrSetRoutingPolicyPrimaryBackupPolicy

Returns a new instance of RrSetRoutingPolicyPrimaryBackupPolicy.



2229
2230
2231
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2229

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

Instance Attribute Details

#backup_geo_targetsGoogle::Apis::DnsV1beta2::RrSetRoutingPolicyGeoPolicy

Configures a RRSetRoutingPolicy that routes based on the geo location of the querying user. Corresponds to the JSON property backupGeoTargets



2208
2209
2210
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2208

def backup_geo_targets
  @backup_geo_targets
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


2213
2214
2215
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2213

def kind
  @kind
end

#primary_targetsGoogle::Apis::DnsV1beta2::RrSetRoutingPolicyHealthCheckTargets

HealthCheckTargets describes endpoints to health-check when responding to Routing Policy queries. Only the healthy endpoints will be included in the response. Only one of internal_load_balancer and external_endpoints should be set. Corresponds to the JSON property primaryTargets



2221
2222
2223
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2221

def primary_targets
  @primary_targets
end

#trickle_trafficFloat

When serving state is PRIMARY, this field provides the option of sending a small percentage of the traffic to the backup targets. Corresponds to the JSON property trickleTraffic

Returns:

  • (Float)


2227
2228
2229
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2227

def trickle_traffic
  @trickle_traffic
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2234
2235
2236
2237
2238
2239
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 2234

def update!(**args)
  @backup_geo_targets = args[:backup_geo_targets] if args.key?(:backup_geo_targets)
  @kind = args[:kind] if args.key?(:kind)
  @primary_targets = args[:primary_targets] if args.key?(:primary_targets)
  @trickle_traffic = args[:trickle_traffic] if args.key?(:trickle_traffic)
end