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.



9956
9957
9958
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9956

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)


9947
9948
9949
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9947

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)


9954
9955
9956
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9954

def scope
  @scope
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9961
9962
9963
9964
# File 'lib/google/apis/container_v1beta1/classes.rb', line 9961

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