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



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

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)


27394
27395
27396
# File 'generated/google/apis/compute_alpha/classes.rb', line 27394

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)


27400
27401
27402
# File 'generated/google/apis/compute_alpha/classes.rb', line 27400

def distribution
  @distribution
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


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

def locality
  @locality
end

#styleString

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

Returns:

  • (String)


27410
27411
27412
# File 'generated/google/apis/compute_alpha/classes.rb', line 27410

def style
  @style
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


27415
27416
27417
# File 'generated/google/apis/compute_alpha/classes.rb', line 27415

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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