Class: Google::Apis::ContainerV1beta1::TopologyManager

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

Overview

TopologyManager defines the configuration options for Topology Manager feature. See https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TopologyManager

Returns a new instance of TopologyManager.



9922
9923
9924
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9922

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

Instance Attribute Details

#policyString

Configures the strategy for resource alignment. Allowed values are: * none: the default policy, and does not perform any topology alignment. * restricted: the topology manager stores the preferred NUMA node affinity for the container, and will reject the pod if the affinity if not preferred. * best-effort: the topology manager stores the preferred NUMA node affinity for the container. If the affinity is not preferred, the topology manager will admit the pod to the node anyway. * single-numa-node: the topology manager determines if the single NUMA node affinity is possible. If it is, Topology Manager will store this and the Hint Providers can then use this information when making the resource allocation decision. If, however, this is not possible then the Topology Manager will reject the pod from the node. This will result in a pod in a Terminated state with a pod admission failure. The default policy value is ' none' if unspecified. Details about each strategy can be found here. Corresponds to the JSON property policy

Returns:

  • (String)


9913
9914
9915
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9913

def policy
  @policy
end

#scopeString

The Topology Manager aligns resources in following scopes: * container * pod The default scope is 'container' if unspecified. See https://kubernetes.io/ docs/tasks/administer-cluster/topology-manager/#topology-manager-scopes Corresponds to the JSON property scope

Returns:

  • (String)


9920
9921
9922
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9920

def scope
  @scope
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9927
9928
9929
9930
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9927

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