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.



31416
31417
31418
# File 'lib/google/apis/compute_alpha/classes.rb', line 31416

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)


31389
31390
31391
# File 'lib/google/apis/compute_alpha/classes.rb', line 31389

def availability_domain_count
  @availability_domain_count
end

#collocationString

Specifies network collocation Corresponds to the JSON property collocation

Returns:

  • (String)


31394
31395
31396
# File 'lib/google/apis/compute_alpha/classes.rb', line 31394

def collocation
  @collocation
end

#localityString

Specifies network locality Corresponds to the JSON property locality

Returns:

  • (String)


31399
31400
31401
# File 'lib/google/apis/compute_alpha/classes.rb', line 31399

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)


31404
31405
31406
# File 'lib/google/apis/compute_alpha/classes.rb', line 31404

def scope
  @scope
end

#styleString

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

Returns:

  • (String)


31409
31410
31411
# File 'lib/google/apis/compute_alpha/classes.rb', line 31409

def style
  @style
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


31414
31415
31416
# File 'lib/google/apis/compute_alpha/classes.rb', line 31414

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



31421
31422
31423
31424
31425
31426
31427
31428
# File 'lib/google/apis/compute_alpha/classes.rb', line 31421

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