From 2a8344378286c6e6b14565e1101742f2dbc9c3cc Mon Sep 17 00:00:00 2001 From: SataQiu <1527062125@qq.com> Date: Fri, 3 Jan 2020 10:49:06 +0800 Subject: [PATCH 1/2] add error handler of unix.Setrlimit --- cmd/kubelet/app/server.go | 4 +++- pkg/util/rlimit/rlimit_linux.go | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/cmd/kubelet/app/server.go b/cmd/kubelet/app/server.go index 8a705bb139a..d454b499f0b 100644 --- a/cmd/kubelet/app/server.go +++ b/cmd/kubelet/app/server.go @@ -1100,7 +1100,9 @@ func RunKubelet(kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencie } podCfg := kubeDeps.PodConfig - rlimit.RlimitNumFiles(uint64(kubeServer.MaxOpenFiles)) + if err := rlimit.RlimitNumFiles(uint64(kubeServer.MaxOpenFiles)); err != nil { + klog.Warningf("Failed to set open file handler limit: %v", err) + } // process pods and exit. if runOnce { diff --git a/pkg/util/rlimit/rlimit_linux.go b/pkg/util/rlimit/rlimit_linux.go index 17e8a713179..263fced6c4b 100644 --- a/pkg/util/rlimit/rlimit_linux.go +++ b/pkg/util/rlimit/rlimit_linux.go @@ -22,6 +22,6 @@ import ( "golang.org/x/sys/unix" ) -func RlimitNumFiles(maxOpenFiles uint64) { - unix.Setrlimit(unix.RLIMIT_NOFILE, &unix.Rlimit{Max: maxOpenFiles, Cur: maxOpenFiles}) +func RlimitNumFiles(maxOpenFiles uint64) error { + return unix.Setrlimit(unix.RLIMIT_NOFILE, &unix.Rlimit{Max: maxOpenFiles, Cur: maxOpenFiles}) } From c27ceb6449383ac7141a5e5c737c6b7a5fd2a77a Mon Sep 17 00:00:00 2001 From: Tim Hockin Date: Wed, 1 Apr 2020 15:34:29 -0700 Subject: [PATCH 2/2] Edit log string --- cmd/kubelet/app/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/kubelet/app/server.go b/cmd/kubelet/app/server.go index d454b499f0b..7e29ec98604 100644 --- a/cmd/kubelet/app/server.go +++ b/cmd/kubelet/app/server.go @@ -1101,7 +1101,7 @@ func RunKubelet(kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencie podCfg := kubeDeps.PodConfig if err := rlimit.RlimitNumFiles(uint64(kubeServer.MaxOpenFiles)); err != nil { - klog.Warningf("Failed to set open file handler limit: %v", err) + klog.Errorf("Failed to set rlimit on max file handles: %v", err) } // process pods and exit.