Class: Google::Apis::ContainerV1beta1::NodeKubeletConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/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.



3859
3860
3861
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3859

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)


3830
3831
3832
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3830

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)


3839
3840
3841
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3839

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)


3849
3850
3851
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3849

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)


3857
3858
3859
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3857

def pod_pids_limit
  @pod_pids_limit
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3864
3865
3866
3867
3868
3869
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3864

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