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.



3359
3360
3361
# File 'lib/google/apis/container_v1/classes.rb', line 3359

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)


3308
3309
3310
# File 'lib/google/apis/container_v1/classes.rb', line 3308

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)


3318
3319
3320
# File 'lib/google/apis/container_v1/classes.rb', line 3318

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)


3328
3329
3330
# File 'lib/google/apis/container_v1/classes.rb', line 3328

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)


3338
3339
3340
# File 'lib/google/apis/container_v1/classes.rb', line 3338

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)


3348
3349
3350
# File 'lib/google/apis/container_v1/classes.rb', line 3348

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)


3357
3358
3359
# File 'lib/google/apis/container_v1/classes.rb', line 3357

def pid_available
  @pid_available
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3364
3365
3366
3367
3368
3369
3370
3371
# File 'lib/google/apis/container_v1/classes.rb', line 3364

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