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.



33596
33597
33598
# File 'lib/google/apis/compute_alpha/classes.rb', line 33596

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)


33569
33570
33571
# File 'lib/google/apis/compute_alpha/classes.rb', line 33569

def availability_domain_count
  @availability_domain_count
end

#collocationString

Specifies network collocation Corresponds to the JSON property collocation

Returns:

  • (String)


33574
33575
33576
# File 'lib/google/apis/compute_alpha/classes.rb', line 33574

def collocation
  @collocation
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


33579
33580
33581
# File 'lib/google/apis/compute_alpha/classes.rb', line 33579

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)


33584
33585
33586
# File 'lib/google/apis/compute_alpha/classes.rb', line 33584

def scope
  @scope
end

#styleString

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

Returns:

  • (String)


33589
33590
33591
# File 'lib/google/apis/compute_alpha/classes.rb', line 33589

def style
  @style
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


33594
33595
33596
# File 'lib/google/apis/compute_alpha/classes.rb', line 33594

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



33601
33602
33603
33604
33605
33606
33607
33608
# File 'lib/google/apis/compute_alpha/classes.rb', line 33601

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