From 995d654167513340ef19f5a0cc77e66d014dc1f6 Mon Sep 17 00:00:00 2001 From: wawa0210 Date: Sun, 19 Jul 2020 17:48:41 +0800 Subject: [PATCH] ingore apparmor on non Linux operating systems. --- pkg/kubelet/kubelet.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index cf56463cc38..549dd4da146 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -25,6 +25,7 @@ import ( "net/url" "os" "path" + sysruntime "runtime" "sort" "strings" "sync" @@ -784,8 +785,11 @@ func NewMainKubelet(kubeCfg *kubeletconfiginternal.KubeletConfiguration, opt(klet) } - klet.appArmorValidator = apparmor.NewValidator(containerRuntime) - klet.softAdmitHandlers.AddPodAdmitHandler(lifecycle.NewAppArmorAdmitHandler(klet.appArmorValidator)) + if sysruntime.GOOS == "linux" { + // AppArmor is a Linux kernel security module and it does not support other operating systems. + klet.appArmorValidator = apparmor.NewValidator(containerRuntime) + klet.softAdmitHandlers.AddPodAdmitHandler(lifecycle.NewAppArmorAdmitHandler(klet.appArmorValidator)) + } klet.softAdmitHandlers.AddPodAdmitHandler(lifecycle.NewNoNewPrivsAdmitHandler(klet.containerRuntime)) klet.softAdmitHandlers.AddPodAdmitHandler(lifecycle.NewProcMountAdmitHandler(klet.containerRuntime))