Closed
Description
What happened?
kubelet won't start.
log:
[root@kube-m3 pki]# /usr/local/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/kubeconfig/tls-bootstrap.kubeconfig --kubeconfig=/etc/kubernetes/kubeconfig/kubelet.kubeconfig --config=/etc/kubernetes/kubelet-conf.yml --container-runtime-endpoint=unix:///run/containerd/containerd.sock --node-labels=node.kubernetes.io/node=
Flag --container-runtime-endpoint has been deprecated, This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.
I0923 03:35:02.314446 2565 server.go:467] "Kubelet version" kubeletVersion="v1.28.2"
I0923 03:35:02.314811 2565 server.go:469] "Golang settings" GOGC="" GOMAXPROCS="" GOTRACEBACK=""
I0923 03:35:02.315230 2565 server.go:895] "Client rotation is on, will bootstrap in background"
I0923 03:35:02.316268 2565 certificate_store.go:130] Loading cert/key pair from "/var/lib/kubelet/pki/kubelet-client-current.pem".
I0923 03:35:02.318698 2565 dynamic_cafile_content.go:157] "Starting controller" name="client-ca-bundle::/etc/kubernetes/pki/ca.pem"
I0923 03:35:02.321134 2565 container_manager_linux.go:803] "CPUAccounting not enabled for process" pid=2565
I0923 03:35:02.321963 2565 container_manager_linux.go:806] "MemoryAccounting not enabled for process" pid=2565
I0923 03:35:02.324877 2565 server.go:725] "--cgroups-per-qos enabled, but --cgroup-root was not specified. defaulting to /"
I0923 03:35:02.326371 2565 container_manager_linux.go:265] "Container manager verified user specified cgroup-root exists" cgroupRoot=[]
I0923 03:35:02.327151 2565 container_manager_linux.go:270] "Creating Container Manager object based on Node Config" nodeConfig={"RuntimeCgroupsName":"","SystemCgroupsName":"","KubeletCgroupsName":"","KubeletOOMScoreAdj":-999,"ContainerRuntime":"","CgroupsPerQOS":true,"CgroupRoot":"/","CgroupDriver":"systemd","KubeletRootDir":"/var/lib/kubelet","ProtectKernelDefaults":false,"KubeReservedCgroupName":"","SystemReservedCgroupName":"","ReservedSystemCPUs":{},"EnforceNodeAllocatable":{"pods":{}},"KubeReserved":null,"SystemReserved":null,"HardEvictionThresholds":[{"Signal":"imagefs.available","Operator":"LessThan","Value":{"Quantity":null,"Percentage":0.15},"GracePeriod":0,"MinReclaim":null},{"Signal":"memory.available","Operator":"LessThan","Value":{"Quantity":"100Mi","Percentage":0},"GracePeriod":0,"MinReclaim":null},{"Signal":"nodefs.available","Operator":"LessThan","Value":{"Quantity":null,"Percentage":0.1},"GracePeriod":0,"MinReclaim":null},{"Signal":"nodefs.inodesFree","Operator":"LessThan","Value":{"Quantity":null,"Percentage":0.05},"GracePeriod":0,"MinReclaim":null}],"QOSReserved":{},"CPUManagerPolicy":"none","CPUManagerPolicyOptions":null,"TopologyManagerScope":"container","CPUManagerReconcilePeriod":10000000000,"ExperimentalMemoryManagerPolicy":"None","ExperimentalMemoryManagerReservedMemory":null,"PodPidsLimit":-1,"EnforceCPULimits":true,"CPUCFSQuotaPeriod":100000000,"TopologyManagerPolicy":"none","TopologyManagerPolicyOptions":null}
I0923 03:35:02.328229 2565 topology_manager.go:138] "Creating topology manager with none policy"
I0923 03:35:02.328888 2565 container_manager_linux.go:301] "Creating device plugin manager"
I0923 03:35:02.329543 2565 state_mem.go:36] "Initialized new in-memory state store"
I0923 03:35:02.330286 2565 kubelet.go:393] "Attempting to sync node with API server"
I0923 03:35:02.332332 2565 kubelet.go:298] "Adding static pod path" path="/etc/kubernetes/manifests"
I0923 03:35:02.333342 2565 kubelet.go:309] "Adding apiserver pod source"
I0923 03:35:02.334032 2565 apiserver.go:42] "Waiting for node sync before watching apiserver pods"
E0923 03:35:02.333982 2565 file_linux.go:61] "Unable to read config path" err="path does not exist, ignoring" path="/etc/kubernetes/manifests"
E0923 03:35:02.334005 2565 file.go:98] "Unable to read config path" err="path does not exist, ignoring" path="/etc/kubernetes/manifests"
I0923 03:35:02.336604 2565 kuberuntime_manager.go:257] "Container runtime initialized" containerRuntime="containerd" version="v1.7.6" apiVersion="v1"
I0923 03:35:02.337188 2565 server.go:1232] "Started kubelet"
I0923 03:35:02.344587 2565 fs_resource_analyzer.go:67] "Starting FS ResourceAnalyzer"
I0923 03:35:02.345253 2565 server.go:162] "Starting to listen" address="192.168.56.9" port=10250
I0923 03:35:02.379221 2565 server.go:462] "Adding debug handlers to kubelet server"
I0923 03:35:02.345266 2565 server.go:194] "Starting to listen read-only" address="192.168.56.9" port=10255
I0923 03:35:02.338281 2565 ratelimit.go:65] "Setting rate limiting for podresources endpoint" qps=100 burstTokens=10
I0923 03:35:02.369476 2565 volume_manager.go:291] "Starting Kubelet Volume Manager"
I0923 03:35:02.369505 2565 desired_state_of_world_populator.go:151] "Desired state populator starts to run"
E0923 03:35:02.371657 2565 cri_stats_provider.go:448] "Failed to get the info of the filesystem with mountpoint" err="unable to find data in memory cache" mountpoint="/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs"
W0923 03:35:02.424113 2565 container.go:586] Failed to update stats for container "/": openat2 /sys/fs/cgroup/memory/memory.kmem.limit_in_bytes: no such file or directory, continuing to push stats
I0923 03:35:02.425704 2565 server.go:233] "Starting to serve the podresources API" endpoint="unix:/var/lib/kubelet/pod-resources/kubelet.sock"
I0923 03:35:02.427289 2565 reconciler_new.go:29] "Reconciler: start to sync state"
I0923 03:35:02.427328 2565 kubelet_network_linux.go:50] "Initialized iptables rules." protocol="IPv4"
I0923 03:35:02.431019 2565 kubelet_network_linux.go:50] "Initialized iptables rules." protocol="IPv6"
I0923 03:35:02.431581 2565 status_manager.go:217] "Starting to sync pod status with apiserver"
I0923 03:35:02.431608 2565 kubelet.go:2303] "Starting kubelet main sync loop"
E0923 03:35:02.431652 2565 kubelet.go:2327] "Skipping pod synchronization" err="[container runtime status check may not have completed yet, PLEG is not healthy: pleg has yet to be successful]"
E0923 03:35:02.451126 2565 kubelet.go:1431] "Image garbage collection failed once. Stats initialization may not have completed yet" err="invalid capacity 0 on image filesystem"
I0923 03:35:02.491943 2565 cpu_manager.go:214] "Starting CPU manager" policy="none"
I0923 03:35:02.493068 2565 cpu_manager.go:215] "Reconciling" reconcilePeriod="10s"
I0923 03:35:02.493906 2565 state_mem.go:36] "Initialized new in-memory state store"
I0923 03:35:02.495012 2565 state_mem.go:88] "Updated default CPUSet" cpuSet=""
I0923 03:35:02.495638 2565 state_mem.go:96] "Updated CPUSet assignments" assignments={}
E0923 03:35:02.494883 2565 container_manager_linux.go:881] "Unable to get rootfs data from cAdvisor interface" err="unable to find data in memory cache"
I0923 03:35:02.496896 2565 policy_none.go:49] "None policy: Start"
I0923 03:35:02.497967 2565 kubelet_node_status.go:70] "Attempting to register node" node="kube-m3"
I0923 03:35:02.499919 2565 memory_manager.go:169] "Starting memorymanager" policy="None"
I0923 03:35:02.503423 2565 state_mem.go:35] "Initializing new in-memory state store"
I0923 03:35:02.508914 2565 state_mem.go:75] "Updated machine memory state"
E0923 03:35:02.514627 2565 kubelet.go:1511] "Failed to start ContainerManager" err="failed to get rootfs info: unable to find data in memory cache"
What did you expect to happen?
The kubelet is up and running.
How can we reproduce it (as minimally and precisely as possible)?
My current environment information is as follows:
[root@kube-m3 pki]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
[root@kube-m3 pki]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@kube-m3 pki]# uname -a
Linux kube-m3 6.5.4-1.el7.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Sep 19 18:28:39 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux
[root@kube-m3 pki]# stat -fc %T /sys/fs/cgroup/
tmpfs
[root@kube-m3 pki]# cat /etc/kubernetes/kubelet-conf.yml | grep cgroupDriver
cgroupDriver: systemd
[root@kube-m3 pki]# cat /etc/containerd/config.toml | grep systemd_cgroup
systemd_cgroup = false
[root@kube-m3 pki]# containerd --version
containerd github.com/containerd/containerd v1.7.6 091922f03c2762540fd057fba91260237ff86acb
Anything else we need to know?
No response
Kubernetes version
$ kubectl version
# paste output here
Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.2
Cloud provider
OS version
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here
[root@kube-m3 pki]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@kube-m3 pki]# uname -a
Linux kube-m3 6.5.4-1.el7.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Sep 19 18:28:39 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux
# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
Install tools
Container runtime (CRI) and version (if applicable)
[root@kube-m3 pki]# containerd --version
containerd github.com/containerd/containerd v1.7.6 091922f03c2762540fd057fba91260237ff86acb
Related plugins (CNI, CSI, ...) and versions (if applicable)
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Done
Activity