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.



31800
31801
31802
# File 'lib/google/apis/compute_alpha/classes.rb', line 31800

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)


31773
31774
31775
# File 'lib/google/apis/compute_alpha/classes.rb', line 31773

def availability_domain_count
  @availability_domain_count
end

#collocationString

Specifies network collocation Corresponds to the JSON property collocation

Returns:

  • (String)


31778
31779
31780
# File 'lib/google/apis/compute_alpha/classes.rb', line 31778

def collocation
  @collocation
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


31783
31784
31785
# File 'lib/google/apis/compute_alpha/classes.rb', line 31783

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)


31788
31789
31790
# File 'lib/google/apis/compute_alpha/classes.rb', line 31788

def scope
  @scope
end

#styleString

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

Returns:

  • (String)


31793
31794
31795
# File 'lib/google/apis/compute_alpha/classes.rb', line 31793

def style
  @style
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


31798
31799
31800
# File 'lib/google/apis/compute_alpha/classes.rb', line 31798

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



31805
31806
31807
31808
31809
31810
31811
31812
# File 'lib/google/apis/compute_alpha/classes.rb', line 31805

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