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.



1792
1793
1794
# File 'lib/google/apis/batch_v1/classes.rb', line 1792

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)


1781
1782
1783
# File 'lib/google/apis/batch_v1/classes.rb', line 1781

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)


1790
1791
1792
# File 'lib/google/apis/batch_v1/classes.rb', line 1790

def max_distance
  @max_distance
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1797
1798
1799
1800
# File 'lib/google/apis/batch_v1/classes.rb', line 1797

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