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.



3654
3655
3656
# File 'lib/google/apis/container_v1/classes.rb', line 3654

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)


3625
3626
3627
# File 'lib/google/apis/container_v1/classes.rb', line 3625

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)


3634
3635
3636
# File 'lib/google/apis/container_v1/classes.rb', line 3634

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)


3644
3645
3646
# File 'lib/google/apis/container_v1/classes.rb', line 3644

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)


3652
3653
3654
# File 'lib/google/apis/container_v1/classes.rb', line 3652

def pod_pids_limit
  @pod_pids_limit
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3659
3660
3661
3662
3663
3664
# File 'lib/google/apis/container_v1/classes.rb', line 3659

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