Class: Google::Apis::BatchV1::PlacementPolicy

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/batch_v1/classes.rb,
lib/google/apis/batch_v1/representations.rb,
lib/google/apis/batch_v1/representations.rb

Overview

PlacementPolicy describes a group placement policy for the VMs controlled by this AllocationPolicy.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PlacementPolicy

Returns a new instance of PlacementPolicy.



2005
2006
2007
# File 'lib/google/apis/batch_v1/classes.rb', line 2005

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#collocationString

UNSPECIFIED vs. COLLOCATED (default UNSPECIFIED). Use COLLOCATED when you want VMs to be located close to each other for low network latency between the VMs. No placement policy will be generated when collocation is UNSPECIFIED. Corresponds to the JSON property collocation

Returns:

  • (String)


1994
1995
1996
# File 'lib/google/apis/batch_v1/classes.rb', line 1994

def collocation
  @collocation
end

#max_distanceFixnum

When specified, causes the job to fail if more than max_distance logical switches are required between VMs. Batch uses the most compact possible placement of VMs even when max_distance is not specified. An explicit max_distance makes that level of compactness a strict requirement. Not yet implemented Corresponds to the JSON property maxDistance

Returns:

  • (Fixnum)


2003
2004
2005
# File 'lib/google/apis/batch_v1/classes.rb', line 2003

def max_distance
  @max_distance
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2010
2011
2012
2013
# File 'lib/google/apis/batch_v1/classes.rb', line 2010

def update!(**args)
  @collocation = args[:collocation] if args.key?(:collocation)
  @max_distance = args[:max_distance] if args.key?(:max_distance)
end