Class: Google::Apis::ContainerV1::EvictionSignals

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

Overview

Eviction signals are the current state of a particular resource at a specific point in time. The kubelet uses eviction signals to make eviction decisions by comparing the signals to eviction thresholds, which are the minimum amount of the resource that should be available on the node.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ EvictionSignals

Returns a new instance of EvictionSignals.



3958
3959
3960
# File 'lib/google/apis/container_v1/classes.rb', line 3958

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

Instance Attribute Details

#imagefs_availableString

Optional. Amount of storage available on filesystem that container runtime uses for storing images layers. If the container filesystem and image filesystem are not separate, then imagefs can store both image layers and writeable layers. Defines the amount of "imagefs.available" signal in kubelet. Default is unset, if not specified in the kubelet config. It takses percentage value for now. Sample format: "30%". Must be >= 15% and <= 50%. See https:// kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/# eviction-signals Corresponds to the JSON property imagefsAvailable

Returns:

  • (String)


3907
3908
3909
# File 'lib/google/apis/container_v1/classes.rb', line 3907

def imagefs_available
  @imagefs_available
end

#imagefs_inodes_freeString

Optional. Amount of inodes available on filesystem that container runtime uses for storing images layers. Defines the amount of "imagefs.inodesFree" signal in kubelet. Default is unset, if not specified in the kubelet config. Linux only. It takses percentage value for now. Sample format: "30%". Must be >= 5% and <= 50%. See https://kubernetes.io/docs/concepts/scheduling-eviction/node- pressure-eviction/#eviction-signals Corresponds to the JSON property imagefsInodesFree

Returns:

  • (String)


3917
3918
3919
# File 'lib/google/apis/container_v1/classes.rb', line 3917

def imagefs_inodes_free
  @imagefs_inodes_free
end

#memory_availableString

Optional. Memory available (i.e. capacity - workingSet), in bytes. Defines the amount of "memory.available" signal in kubelet. Default is unset, if not specified in the kubelet config. Format: positive number + unit, e.g. 100Ki, 10Mi, 5Gi. Valid units are Ki, Mi, Gi. Must be >= 100Mi and <= 50% of the node' s memory. See https://kubernetes.io/docs/concepts/scheduling-eviction/node- pressure-eviction/#eviction-signals Corresponds to the JSON property memoryAvailable

Returns:

  • (String)


3927
3928
3929
# File 'lib/google/apis/container_v1/classes.rb', line 3927

def memory_available
  @memory_available
end

#nodefs_availableString

Optional. Amount of storage available on filesystem that kubelet uses for volumes, daemon logs, etc. Defines the amount of "nodefs.available" signal in kubelet. Default is unset, if not specified in the kubelet config. It takses percentage value for now. Sample format: "30%". Must be >= 10% and <= 50%. See https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/

eviction-signals

Corresponds to the JSON property nodefsAvailable

Returns:

  • (String)


3937
3938
3939
# File 'lib/google/apis/container_v1/classes.rb', line 3937

def nodefs_available
  @nodefs_available
end

#nodefs_inodes_freeString

Optional. Amount of inodes available on filesystem that kubelet uses for volumes, daemon logs, etc. Defines the amount of "nodefs.inodesFree" signal in kubelet. Default is unset, if not specified in the kubelet config. Linux only. It takses percentage value for now. Sample format: "30%". Must be >= 5% and <= 50%. See https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure- eviction/#eviction-signals Corresponds to the JSON property nodefsInodesFree

Returns:

  • (String)


3947
3948
3949
# File 'lib/google/apis/container_v1/classes.rb', line 3947

def nodefs_inodes_free
  @nodefs_inodes_free
end

#pid_availableString

Optional. Amount of PID available for pod allocation. Defines the amount of " pid.available" signal in kubelet. Default is unset, if not specified in the kubelet config. It takses percentage value for now. Sample format: "30%". Must be >= 10% and <= 50%. See https://kubernetes.io/docs/concepts/scheduling- eviction/node-pressure-eviction/#eviction-signals Corresponds to the JSON property pidAvailable

Returns:

  • (String)


3956
3957
3958
# File 'lib/google/apis/container_v1/classes.rb', line 3956

def pid_available
  @pid_available
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3963
3964
3965
3966
3967
3968
3969
3970
# File 'lib/google/apis/container_v1/classes.rb', line 3963

def update!(**args)
  @imagefs_available = args[:imagefs_available] if args.key?(:imagefs_available)
  @imagefs_inodes_free = args[:imagefs_inodes_free] if args.key?(:imagefs_inodes_free)
  @memory_available = args[:memory_available] if args.key?(:memory_available)
  @nodefs_available = args[:nodefs_available] if args.key?(:nodefs_available)
  @nodefs_inodes_free = args[:nodefs_inodes_free] if args.key?(:nodefs_inodes_free)
  @pid_available = args[:pid_available] if args.key?(:pid_available)
end