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.



3114
3115
3116
# File 'lib/google/apis/container_v1/classes.rb', line 3114

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)


3085
3086
3087
# File 'lib/google/apis/container_v1/classes.rb', line 3085

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)


3094
3095
3096
# File 'lib/google/apis/container_v1/classes.rb', line 3094

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)


3104
3105
3106
# File 'lib/google/apis/container_v1/classes.rb', line 3104

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)


3112
3113
3114
# File 'lib/google/apis/container_v1/classes.rb', line 3112

def pod_pids_limit
  @pod_pids_limit
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3119
3120
3121
3122
3123
3124
# File 'lib/google/apis/container_v1/classes.rb', line 3119

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