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.



1944
1945
1946
# File 'lib/google/apis/batch_v1/classes.rb', line 1944

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)


1933
1934
1935
# File 'lib/google/apis/batch_v1/classes.rb', line 1933

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)


1942
1943
1944
# File 'lib/google/apis/batch_v1/classes.rb', line 1942

def max_distance
  @max_distance
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1949
1950
1951
1952
# File 'lib/google/apis/batch_v1/classes.rb', line 1949

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