New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kubelet does not work with busybox du
command
#95172
Comments
/sig Storage |
The `-B 1` argument is not defiend in POSIX du[1] and does not work with busybox du. Fix this by using `-k` and append "Ki" for the ParseQuantity call. `resource.ParseQuantity()` will set the format to `BinarySI` when there is a "Ki" suffix so we can remove the explicit set of the format. [1]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/du.html Signed-off-by: Natanael Copa <ncopa@mirantis.com>
enable on armv7 build without providers and strip ELF symbols and debug info. kubelet does not have a hard dependency on cni-plugins. They can be installed from a pod. kubelet need GNU du[1] from coreutils and GNU find[2]. [1]: kubernetes/kubernetes#95172 [2]: kubernetes/kubernetes#95186
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale #96115 fixes this |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-contributor-experience at kubernetes/community. |
Fix inode usage calculation to use filepath.Walk instead of executing an external find. Also calculate the disk usage while at it so we also get rid of the external dependency of `nice` and `du`. (kubernetes#95172) This is similar to what cadvisor does since commit google/cadvisor@046818d This solves three problems: - Counts number of inodes correct when there are hardlinks (kubernetes#96114) - Makes kubelet work without GNU findutils (kubernetes#95186) - Makes kubelet work without GNU coreutils (kubernetes#95172)
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-contributor-experience at kubernetes/community. |
/remove-lifecycle rotten |
Still waiting for PR #96115 to be merged |
Fix inode usage calculation to use filepath.Walk instead of executing an external find. Also calculate the disk usage while at it so we also get rid of the external dependency of `nice` and `du`. (kubernetes#95172) This is similar to what cadvisor does since commit google/cadvisor@046818d This solves three problems: - Counts number of inodes correct when there are hardlinks (kubernetes#96114) - Makes kubelet work without GNU findutils (kubernetes#95186) - Makes kubelet work without GNU coreutils (kubernetes#95172)
Fix inode usage calculation to use filepath.Walk instead of executing an external find. Also calculate the disk usage while at it so we also get rid of the external dependency of `nice` and `du`. (kubernetes#95172) This is similar to what cadvisor does since commit google/cadvisor@046818d This solves three problems: - Counts number of inodes correct when there are hardlinks (kubernetes#96114) - Makes kubelet work without GNU findutils (kubernetes#95186) - Makes kubelet work without GNU coreutils (kubernetes#95172)
Fix inode usage calculation to use filepath.Walk instead of executing an external find. Also calculate the disk usage while at it so we also get rid of the external dependency of `nice` and `du`. (kubernetes#95172) This is similar to what cadvisor does since commit google/cadvisor@046818d This solves three problems: - Counts number of inodes correct when there are hardlinks (kubernetes#96114) - Makes kubelet work without GNU findutils (kubernetes#95186) - Makes kubelet work without GNU coreutils (kubernetes#95172)
Fix inode usage calculation to use filepath.Walk instead of executing an external find. Also calculate the disk usage while at it so we also get rid of the external dependency of `nice` and `du`. (kubernetes#95172) This is similar to what cadvisor does since commit google/cadvisor@046818d This solves three problems: - Counts number of inodes correct when there are hardlinks (kubernetes#96114) - Makes kubelet work without GNU findutils (kubernetes#95186) - Makes kubelet work without GNU coreutils (kubernetes#95172)
What happened:
Running
sonobouy
test suite on a cluster with workers on Alpine Linux, which uses busybox instead of GNU coreutils fails. The log shows that it fails to execute thedu
command.What you expected to happen:
I expected the
du
call to exit with success.How to reproduce it (as minimally and precisely as possible):
Install and run kublet on Alpine Linux without installing
coreutils
.Anything else we need to know?:
It failed due to the
-B 1
option which is not implemented in busybox.The
-B
option is not specified in POSIX so I don't think it is reasonable to expect it to implemented in busybox.Environment:
kubectl version
):QEMU/KVM virtual machine
cat /etc/os-release
):uname -a
):Install tools:
custom
Network plugin and version (if this is a network-related bug):
not network-related
Others:
The text was updated successfully, but these errors were encountered: