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

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/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

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy

Returns a new instance of ResourcePolicyGroupPlacementPolicy



27429
27430
27431
# File 'generated/google/apis/compute_alpha/classes.rb', line 27429

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)


27406
27407
27408
# File 'generated/google/apis/compute_alpha/classes.rb', line 27406

def availability_domain_count
  @availability_domain_count
end

#distributionString

Distribution specifies how the instances are placed at host level. If set to SPREAD, no two instances will be put on the same host Corresponds to the JSON property distribution

Returns:

  • (String)


27412
27413
27414
# File 'generated/google/apis/compute_alpha/classes.rb', line 27412

def distribution
  @distribution
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


27417
27418
27419
# File 'generated/google/apis/compute_alpha/classes.rb', line 27417

def locality
  @locality
end

#styleString

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

Returns:

  • (String)


27422
27423
27424
# File 'generated/google/apis/compute_alpha/classes.rb', line 27422

def style
  @style
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


27427
27428
27429
# File 'generated/google/apis/compute_alpha/classes.rb', line 27427

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



27434
27435
27436
27437
27438
27439
27440
# File 'generated/google/apis/compute_alpha/classes.rb', line 27434

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