Class: Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy

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

A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy

Returns a new instance of ResourcePolicyGroupPlacementPolicy.



31207
31208
31209
# File 'lib/google/apis/compute_alpha/classes.rb', line 31207

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

Instance Attribute Details

#availability_domain_countFixnum

The number of availability domains instances will be spread across. If two instances are in different availability domain, they will not be put in the same low latency network Corresponds to the JSON property availabilityDomainCount

Returns:

  • (Fixnum)


31180
31181
31182
# File 'lib/google/apis/compute_alpha/classes.rb', line 31180

def availability_domain_count
  @availability_domain_count
end

#collocationString

Specifies network collocation Corresponds to the JSON property collocation

Returns:

  • (String)


31185
31186
31187
# File 'lib/google/apis/compute_alpha/classes.rb', line 31185

def collocation
  @collocation
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


31190
31191
31192
# File 'lib/google/apis/compute_alpha/classes.rb', line 31190

def locality
  @locality
end

#scopeString

Scope specifies the availability domain to which the VMs should be spread. Corresponds to the JSON property scope

Returns:

  • (String)


31195
31196
31197
# File 'lib/google/apis/compute_alpha/classes.rb', line 31195

def scope
  @scope
end

#styleString

Specifies instances to hosts placement relationship Corresponds to the JSON property style

Returns:

  • (String)


31200
31201
31202
# File 'lib/google/apis/compute_alpha/classes.rb', line 31200

def style
  @style
end

#vm_countFixnum

Number of vms in this placement group Corresponds to the JSON property vmCount

Returns:

  • (Fixnum)


31205
31206
31207
# File 'lib/google/apis/compute_alpha/classes.rb', line 31205

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



31212
31213
31214
31215
31216
31217
31218
31219
# File 'lib/google/apis/compute_alpha/classes.rb', line 31212

def update!(**args)
  @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count)
  @collocation = args[:collocation] if args.key?(:collocation)
  @locality = args[:locality] if args.key?(:locality)
  @scope = args[:scope] if args.key?(:scope)
  @style = args[:style] if args.key?(:style)
  @vm_count = args[:vm_count] if args.key?(:vm_count)
end