


























作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。


开发给定的相关参数:
--cpu-manager-policy=static、--topology-manager-policy=best-effort
相关参数说明:
--cpu-manager-policy=static:
CPU管理器策略:static 开启CPU绑定
--topology-manager-policy=best-effort
拓扑管理器策略:best-effort 尽力亲和
官方文档的参数说明:
https://kubernetes.io/zh-cn/docs/reference/command-line-tools-reference/kubelet/
如上图所示,开发给我两个参数K8S官方都已经弃用,目前版本可能还是要用的,未来版本就必须基于配置文件的方式指定方能失效哟,我的生产环境是k8s 1.33.10版本,你得看你的自己的版本是啥。
(venv) [root@ansible99 kubespray]# vim inventory/yinzhengjie-k8s/group_vars/k8s_cluster/k8s-cluster.yml
...
kubelet_topology_manager_policy: best-effort
kubelet_cpu_manager_policy: static
(venv) [root@ansible99 kubespray]# time ansible-playbook -i inventory/yinzhengjie-k8s/inventory.ini cluster.yml --tags kubelet -v
...
TASK [kubernetes/node : Install | Copy kubeadm binary from download dir] ***************************************************************************************************
fatal: [worker77]: FAILED! => {"changed": false, "msg": "Source /tmp/releases/kubeadm-1.33.10-amd64 not found"}
fatal: [worker66]: FAILED! => {"changed": false, "msg": "Source /tmp/releases/kubeadm-1.33.10-amd64 not found"}
PLAY RECAP *****************************************************************************************************************************************************************
master231 : ok=28 changed=1 unreachable=0 failed=0 skipped=22 rescued=0 ignored=0
master232 : ok=16 changed=1 unreachable=0 failed=0 skipped=16 rescued=0 ignored=0
master233 : ok=16 changed=1 unreachable=0 failed=0 skipped=16 rescued=0 ignored=0
worker66 : ok=17 changed=1 unreachable=0 failed=1 skipped=15 rescued=0 ignored=0
worker77 : ok=17 changed=1 unreachable=0 failed=1 skipped=15 rescued=0 ignored=0
Sunday 28 June 2026 21:26:52 +0800 (0:00:02.128) 0:02:16.609 ***********
===============================================================================
kubernetes/preinstall : Create kubernetes directories -------------------------------------------------------------------------------------------------------------- 26.69s
network_facts : Gather node IPs ------------------------------------------------------------------------------------------------------------------------------------ 24.45s
Gathering Facts ---------------------------------------------------------------------------------------------------------------------------------------------------- 16.60s
Gather minimal facts ----------------------------------------------------------------------------------------------------------------------------------------------- 16.55s
Gather necessary facts (network) ----------------------------------------------------------------------------------------------------------------------------------- 16.34s
kubernetes/preinstall : Create other directories of root owner ----------------------------------------------------------------------------------------------------- 11.75s
Gather necessary facts (hardware) ---------------------------------------------------------------------------------------------------------------------------------- 11.59s
kubernetes/node : Install | Copy kubeadm binary from download dir --------------------------------------------------------------------------------------------------- 2.13s
adduser : User | Create User ---------------------------------------------------------------------------------------------------------------------------------------- 1.29s
adduser : User | Create User Group ---------------------------------------------------------------------------------------------------------------------------------- 1.05s
dynamic_groups : Match needed groups by their old names or definition ----------------------------------------------------------------------------------------------- 0.78s
network_facts : Set computed IPs variables -------------------------------------------------------------------------------------------------------------------------- 0.65s
validate_inventory : Stop if unsupported version of Kubernetes ------------------------------------------------------------------------------------------------------ 0.47s
kubernetes/node : Os specific vars ---------------------------------------------------------------------------------------------------------------------------------- 0.36s
validate_inventory : Stop if removed tags are used ------------------------------------------------------------------------------------------------------------------ 0.34s
validate_inventory : Stop if auto_renew_certificates is enabled when certificates are managed externally (kube_external_ca_mode is true) ---------------------------- 0.32s
kubernetes/node : Set kubelet_config_extra_args options when cgroupfs is used --------------------------------------------------------------------------------------- 0.30s
kubernetes/node : Set kubelet_cgroup_driver_detected fact for containerd -------------------------------------------------------------------------------------------- 0.30s
kubernetes/node : Set kubelet_cgroups options when cgroupfs is used ------------------------------------------------------------------------------------------------- 0.30s
validate_inventory : Check cloud_provider value --------------------------------------------------------------------------------------------------------------------- 0.26s
(venv) [root@ansible99 kubespray]#
故障分析:
上面的报错关键点是"Source /tmp/releases/kubeadm-1.33.10-amd64 not found",说白了就是找不到文件。
先下载并分发二进制软件包到各个节点
(venv) [root@ansible99 kubespray]# time ansible-playbook -i inventory/yinzhengjie-k8s/inventory.ini cluster.yml --tags download,binaries -v
...
real 8m9.553s
user 3m46.245s
sys 1m29.645s
(venv) [root@ansible99 kubespray]#
(venv) [root@ansible99 kubespray]#
(venv) [root@ansible99 kubespray]# time ansible-playbook -i inventory/yinzhengjie-k8s/inventory.ini cluster.yml --tags kubelet -v
...
real 2m49.481s
user 0m44.540s
sys 0m13.649s
(venv) [root@ansible99 kubespray]#
[root@worker66 ~]# grep Policy /etc/kubernetes/kubelet-config.yaml
cpuManagerPolicy: static
topologyManagerPolicy: best-effort
[root@worker66 ~]#
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。