Google Cloud Container V1 Client - Class NodeKubeletConfig (2.4.0)

Reference documentation and code samples for the Google Cloud Container V1 Client class NodeKubeletConfig.

Node kubelet configs.

Generated from protobuf message google.container.v1.NodeKubeletConfig

Namespace

Google \ Cloud \ Container \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ cpu_manager_policy string

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.

↳ topology_manager TopologyManager

Optional. Controls Topology Manager configuration on the node. For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/

↳ memory_manager MemoryManager

Optional. Controls NUMA-aware Memory Manager configuration on the node. For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/

↳ cpu_cfs_quota Google\Protobuf\BoolValue

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.

↳ cpu_cfs_quota_period string

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.

↳ pod_pids_limit int|string

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.

↳ insecure_kubelet_readonly_port_enabled bool

Enable or disable Kubelet read only port.

↳ image_gc_low_threshold_percent int

Optional. Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. The percent is calculated as this field value out of 100. The value must be between 10 and 85, inclusive and smaller than image_gc_high_threshold_percent. The default value is 80 if unspecified.

↳ image_gc_high_threshold_percent int

Optional. Defines the percent of disk usage after which image garbage collection is always run. The percent is calculated as this field value out of 100. The value must be between 10 and 85, inclusive and greater than image_gc_low_threshold_percent. The default value is 85 if unspecified.

↳ image_minimum_gc_age string

Optional. Defines the minimum age for an unused image before it is garbage collected. The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration less than or equal to 2 minutes. The default value is "2m0s" if unspecified.

↳ image_maximum_gc_age string

Optional. Defines the maximum age an image can be unused before it is garbage collected. The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration greater than image_minimum_gc_age or "0s". The default value is "0s" if unspecified, which disables this field, meaning images won't be garbage collected based on being unused for too long.

↳ container_log_max_size string

Optional. Defines the maximum size of the container log file before it is rotated. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are Ki, Mi, Gi. The value must be between 10Mi and 500Mi, inclusive. Note that the total container log size (container_log_max_size * container_log_max_files) cannot exceed 1% of the total storage of the node, to avoid disk pressure caused by log files. The default value is 10Mi if unspecified.

↳ container_log_max_files int

Optional. Defines the maximum number of container log files that can be present for a container. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation The value must be an integer between 2 and 10, inclusive. The default value is 5 if unspecified.

↳ allowed_unsafe_sysctls array

Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl patterns (ending in *). The unsafe namespaced sysctl groups are kernel.shm*, kernel.msg*, kernel.sem, fs.mqueue.*, and net.*. Leaving this allowlist empty means they cannot be set on Pods. To allow certain sysctls or sysctl patterns to be set on Pods, list them separated by commas. For example: kernel.msg*,net.ipv4.route.min_pmtu. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for more details.

getCpuManagerPolicy

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.
Returns
Type Description
string

setCpuManagerPolicy

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.
Parameter
Name Description
var string
Returns
Type Description
$this

getTopologyManager

Optional. Controls Topology Manager configuration on the node.

For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/

Returns
Type Description
TopologyManager|null

hasTopologyManager

clearTopologyManager

setTopologyManager

Optional. Controls Topology Manager configuration on the node.

For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/

Parameter
Name Description
var TopologyManager
Returns
Type Description
$this

getMemoryManager

Optional. Controls NUMA-aware Memory Manager configuration on the node. For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/

Returns
Type Description
MemoryManager|null

hasMemoryManager

clearMemoryManager

setMemoryManager

Optional. Controls NUMA-aware Memory Manager configuration on the node. For more information, see: https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/

Parameter
Name Description
var MemoryManager
Returns
Type Description
$this

getCpuCfsQuota

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.

Returns
Type Description
Google\Protobuf\BoolValue|null

hasCpuCfsQuota

clearCpuCfsQuota

getCpuCfsQuotaUnwrapped

Returns the unboxed value from getCpuCfsQuota()

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.

Returns
Type Description
bool|null

setCpuCfsQuota

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.

Parameter
Name Description
var Google\Protobuf\BoolValue
Returns
Type Description
$this

setCpuCfsQuotaUnwrapped

Sets the field by wrapping a primitive type in a Google\Protobuf\BoolValue object.

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.

Parameter
Name Description
var bool|null
Returns
Type Description
$this

getCpuCfsQuotaPeriod

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.

Returns
Type Description
string

setCpuCfsQuotaPeriod

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.

Parameter
Name Description
var string
Returns
Type Description
$this

getPodPidsLimit

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.

Returns
Type Description
int|string

setPodPidsLimit

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.

Parameter
Name Description
var int|string
Returns
Type Description
$this

getInsecureKubeletReadonlyPortEnabled

Enable or disable Kubelet read only port.

Returns
Type Description
bool

hasInsecureKubeletReadonlyPortEnabled

clearInsecureKubeletReadonlyPortEnabled

setInsecureKubeletReadonlyPortEnabled

Enable or disable Kubelet read only port.

Parameter
Name Description
var bool
Returns
Type Description
$this

getImageGcLowThresholdPercent

Optional. Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. The percent is calculated as this field value out of 100.

The value must be between 10 and 85, inclusive and smaller than image_gc_high_threshold_percent. The default value is 80 if unspecified.

Returns
Type Description
int

setImageGcLowThresholdPercent

Optional. Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. The percent is calculated as this field value out of 100.

The value must be between 10 and 85, inclusive and smaller than image_gc_high_threshold_percent. The default value is 80 if unspecified.

Parameter
Name Description
var int
Returns
Type Description
$this

getImageGcHighThresholdPercent

Optional. Defines the percent of disk usage after which image garbage collection is always run. The percent is calculated as this field value out of 100.

The value must be between 10 and 85, inclusive and greater than image_gc_low_threshold_percent. The default value is 85 if unspecified.

Returns
Type Description
int

setImageGcHighThresholdPercent

Optional. Defines the percent of disk usage after which image garbage collection is always run. The percent is calculated as this field value out of 100.

The value must be between 10 and 85, inclusive and greater than image_gc_low_threshold_percent. The default value is 85 if unspecified.

Parameter
Name Description
var int
Returns
Type Description
$this

getImageMinimumGcAge

Optional. Defines the minimum age for an unused image before it is garbage collected.

The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration less than or equal to 2 minutes. The default value is "2m0s" if unspecified.

Returns
Type Description
string

setImageMinimumGcAge

Optional. Defines the minimum age for an unused image before it is garbage collected.

The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration less than or equal to 2 minutes. The default value is "2m0s" if unspecified.

Parameter
Name Description
var string
Returns
Type Description
$this

getImageMaximumGcAge

Optional. Defines the maximum age an image can be unused before it is garbage collected. The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".

The value must be a positive duration greater than image_minimum_gc_age or "0s". The default value is "0s" if unspecified, which disables this field, meaning images won't be garbage collected based on being unused for too long.

Returns
Type Description
string

setImageMaximumGcAge

Optional. Defines the maximum age an image can be unused before it is garbage collected. The string must be a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".

The value must be a positive duration greater than image_minimum_gc_age or "0s". The default value is "0s" if unspecified, which disables this field, meaning images won't be garbage collected based on being unused for too long.

Parameter
Name Description
var string
Returns
Type Description
$this

getContainerLogMaxSize

Optional. Defines the maximum size of the container log file before it is rotated. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are Ki, Mi, Gi.

The value must be between 10Mi and 500Mi, inclusive. Note that the total container log size (container_log_max_size * container_log_max_files) cannot exceed 1% of the total storage of the node, to avoid disk pressure caused by log files. The default value is 10Mi if unspecified.

Returns
Type Description
string

setContainerLogMaxSize

Optional. Defines the maximum size of the container log file before it is rotated. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are Ki, Mi, Gi.

The value must be between 10Mi and 500Mi, inclusive. Note that the total container log size (container_log_max_size * container_log_max_files) cannot exceed 1% of the total storage of the node, to avoid disk pressure caused by log files. The default value is 10Mi if unspecified.

Parameter
Name Description
var string
Returns
Type Description
$this

getContainerLogMaxFiles

Optional. Defines the maximum number of container log files that can be present for a container. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation The value must be an integer between 2 and 10, inclusive.

The default value is 5 if unspecified.

Returns
Type Description
int

setContainerLogMaxFiles

Optional. Defines the maximum number of container log files that can be present for a container. See https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation The value must be an integer between 2 and 10, inclusive.

The default value is 5 if unspecified.

Parameter
Name Description
var int
Returns
Type Description
$this

getAllowedUnsafeSysctls

Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl patterns (ending in *).

The unsafe namespaced sysctl groups are kernel.shm*, kernel.msg*, kernel.sem, fs.mqueue.*, and net.*. Leaving this allowlist empty means they cannot be set on Pods. To allow certain sysctls or sysctl patterns to be set on Pods, list them separated by commas. For example: kernel.msg*,net.ipv4.route.min_pmtu. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for more details.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setAllowedUnsafeSysctls

Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl patterns (ending in *).

The unsafe namespaced sysctl groups are kernel.shm*, kernel.msg*, kernel.sem, fs.mqueue.*, and net.*. Leaving this allowlist empty means they cannot be set on Pods. To allow certain sysctls or sysctl patterns to be set on Pods, list them separated by commas. For example: kernel.msg*,net.ipv4.route.min_pmtu. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for more details.

Parameter
Name Description
var string[]
Returns
Type Description
$this