From 921b0c0bed59032ee0b9b6fc3d8b32c101914cb0 Mon Sep 17 00:00:00 2001 From: Lihai Tu <92532497+tu1h@users.noreply.github.com> Date: Fri, 21 Jun 2024 22:54:54 +0800 Subject: [PATCH] Add options to control images pulling of kubelet (#11094) Signed-off-by: tu1h --- docs/ansible/vars.md | 2 ++ roles/kubernetes/node/defaults/main.yml | 3 +++ roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 | 1 + 3 files changed, 6 insertions(+) diff --git a/docs/ansible/vars.md b/docs/ansible/vars.md index c2cdaa099..7af04c9e7 100644 --- a/docs/ansible/vars.md +++ b/docs/ansible/vars.md @@ -216,6 +216,8 @@ Stack](https://github.com/kubernetes-sigs/kubespray/blob/master/docs/dns-stack.m The percent is calculated by dividing this field value by 100, so the field value must be between 0 and 100, inclusive. When specified, the value must be less than imageGCHighThresholdPercent. Default: 80 +* *kubelet_max_parallel_image_pulls* - Sets the maximum number of image pulls in parallel. The value is `1` by default which means the default is serial image pulling, set it to a integer great than `1` to enable image pulling in parallel. + * *kubelet_make_iptables_util_chains* - If `true`, causes the kubelet ensures a set of `iptables` rules are present on host. * *kubelet_cpu_manager_policy* - If set to `static`, allows pods with certain resource characteristics to be granted increased CPU affinity and exclusivity on the node. And it should be set with `kube_reserved` or `system-reserved`, enable this with the following guide:[Control CPU Management Policies on the Node](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/) diff --git a/roles/kubernetes/node/defaults/main.yml b/roles/kubernetes/node/defaults/main.yml index eaf70ab40..35b52a676 100644 --- a/roles/kubernetes/node/defaults/main.yml +++ b/roles/kubernetes/node/defaults/main.yml @@ -268,3 +268,6 @@ conntrack_modules: kubelet_tracing: false kubelet_tracing_endpoint: 0.0.0.0:4317 kubelet_tracing_sampling_rate_per_million: 100 + +# The maximum number of image pulls in parallel. Set it to a integer great than 1 to enable image pulling in parallel. +kubelet_max_parallel_image_pulls: 1 diff --git a/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 b/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 index d45ede272..705b1bfca 100644 --- a/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 +++ b/roles/kubernetes/node/templates/kubelet-config.v1beta1.yaml.j2 @@ -175,3 +175,4 @@ tracing: endpoint: {{ kubelet_tracing_endpoint }} samplingRatePerMillion: {{ kubelet_tracing_sampling_rate_per_million }} {% endif %} +maxParallelImagePulls: {{ kubelet_max_parallel_image_pulls }}