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.



3345
3346
3347
# File 'lib/google/apis/container_v1/classes.rb', line 3345

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)


3294
3295
3296
# File 'lib/google/apis/container_v1/classes.rb', line 3294

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)


3304
3305
3306
# File 'lib/google/apis/container_v1/classes.rb', line 3304

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)


3314
3315
3316
# File 'lib/google/apis/container_v1/classes.rb', line 3314

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)


3324
3325
3326
# File 'lib/google/apis/container_v1/classes.rb', line 3324

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)


3334
3335
3336
# File 'lib/google/apis/container_v1/classes.rb', line 3334

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)


3343
3344
3345
# File 'lib/google/apis/container_v1/classes.rb', line 3343

def pid_available
  @pid_available
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3350
3351
3352
3353
3354
3355
3356
3357
# File 'lib/google/apis/container_v1/classes.rb', line 3350

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