Class: Google::Apis::ContainerV1::NodeKubeletConfig

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

Node kubelet configs.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NodeKubeletConfig

Returns a new instance of NodeKubeletConfig.



3607
3608
3609
# File 'lib/google/apis/container_v1/classes.rb', line 3607

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

Instance Attribute Details

#cpu_cfs_quotaBoolean Also known as: cpu_cfs_quota?

Enable CPU CFS quota enforcement for containers that specify CPU limits. This option is enabled by default which makes kubelet use CFS quota (https://www. kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to enforce container CPU limits. Otherwise, CPU limits will not be enforced at all. Disable this option to mitigate CPU throttling problems while still having your pods to be in Guaranteed QoS class by specifying the CPU limits. The default value is 'true' if unspecified. Corresponds to the JSON property cpuCfsQuota

Returns:

  • (Boolean)


3578
3579
3580
# File 'lib/google/apis/container_v1/classes.rb', line 3578

def cpu_cfs_quota
  @cpu_cfs_quota
end

#cpu_cfs_quota_periodString

Set the CPU CFS quota period value 'cpu.cfs_period_us'. The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" . The value must be a positive duration. Corresponds to the JSON property cpuCfsQuotaPeriod

Returns:

  • (String)


3587
3588
3589
# File 'lib/google/apis/container_v1/classes.rb', line 3587

def cpu_cfs_quota_period
  @cpu_cfs_quota_period
end

#cpu_manager_policyString

Control the CPU management policy on the node. See https://kubernetes.io/docs/ tasks/administer-cluster/cpu-management-policies/ The following values are allowed. * "none": the default, which represents the existing scheduling behavior. * "static": allows pods with certain resource characteristics to be granted increased CPU affinity and exclusivity on the node. The default value is 'none' if unspecified. Corresponds to the JSON property cpuManagerPolicy

Returns:

  • (String)


3597
3598
3599
# File 'lib/google/apis/container_v1/classes.rb', line 3597

def cpu_manager_policy
  @cpu_manager_policy
end

#pod_pids_limitFixnum

Set the Pod PID limits. See https://kubernetes.io/docs/concepts/policy/pid- limiting/#pod-pid-limits Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304. Corresponds to the JSON property podPidsLimit

Returns:

  • (Fixnum)


3605
3606
3607
# File 'lib/google/apis/container_v1/classes.rb', line 3605

def pod_pids_limit
  @pod_pids_limit
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3612
3613
3614
3615
3616
3617
# File 'lib/google/apis/container_v1/classes.rb', line 3612

def update!(**args)
  @cpu_cfs_quota = args[:cpu_cfs_quota] if args.key?(:cpu_cfs_quota)
  @cpu_cfs_quota_period = args[:cpu_cfs_quota_period] if args.key?(:cpu_cfs_quota_period)
  @cpu_manager_policy = args[:cpu_manager_policy] if args.key?(:cpu_manager_policy)
  @pod_pids_limit = args[:pod_pids_limit] if args.key?(:pod_pids_limit)
end