Skip to content

kubelet won't started : 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 #120837

Closed
@JokerDevops

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)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.needs-triageIndicates an issue or PR lacks a `triage/foo` label and requires one.sig/nodeCategorizes an issue or PR as relevant to SIG Node.

    Type

    No type

    Projects

    • Status

      Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions