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.



3541
3542
3543
# File 'lib/google/apis/container_v1/classes.rb', line 3541

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)


3490
3491
3492
# File 'lib/google/apis/container_v1/classes.rb', line 3490

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)


3500
3501
3502
# File 'lib/google/apis/container_v1/classes.rb', line 3500

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)


3510
3511
3512
# File 'lib/google/apis/container_v1/classes.rb', line 3510

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)


3520
3521
3522
# File 'lib/google/apis/container_v1/classes.rb', line 3520

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)


3530
3531
3532
# File 'lib/google/apis/container_v1/classes.rb', line 3530

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)


3539
3540
3541
# File 'lib/google/apis/container_v1/classes.rb', line 3539

def pid_available
  @pid_available
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3546
3547
3548
3549
3550
3551
3552
3553
# File 'lib/google/apis/container_v1/classes.rb', line 3546

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