zoukankan      html  css  js  c++  java
  • pods "xxx" is forbidden: SecurityContext.RunAsUser is forbidden

    报错信息如下:

    pods "k8s-logs-cndf5" is forbidden: SecurityContext.RunAsUser is forbidden

    解决方法:

    需要对准入控制器进行修改,然后重启apiserver
    --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,NodeRestriction
    SecurityContextDeny 不enable就行

    如下图:

    重启kube-apiserver:

    systemctl restart kube-apiserver

    补充说明

    准入控制器
    To see which admission plugins are enabled:
    kube-apiserver -h | grep enable-admission-plugins
    In 1.13, they are:
    NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeClaimResize,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota,Priority。

    LimitRanger:此准入控制器将确保所有资源请求不会超过 namespace 的 LimitRange。
    SecurityContextDeny:此准入控制器将拒绝任何试图设置某些升级的SecurityContext字段的pod 。
    ServiceAccount:此准入控制器实现serviceAccounts的自动化。
    ResourceQuota:此准入控制器将观察传入请求并确保它不违反命名空间的ResourceQuota对象中列举的任何约束。
    NodeRestriction:该准入控制器限制了 kubelet 可以修改的Node和Pod对象。
    NamespaceExists:此许可控制器检查除 Namespace 其自身之外的命名空间资源上的所有请求。如果请求引用的命名空间不存在,则拒绝该请求。
    NamespaceLifecycle:此准入控制器强制执行正在终止的命令空间中不能创建新对象,并确保Namespace拒绝不存在的请求。此准入控制器还防止缺失三个系统保留的命名空间default、kube-system、kube-public。

  • 相关阅读:
    字符串指针与字符数组的区别
    为什么stc15的单片机,运行了几秒后就蹦了
    判断一个数是否是2的整数次幂
    Ubuntu下使用gcc编译c文件,未识别cos,sin
    数字图像基本处理算法
    开发板启动时,内核打印出"can't access tty,job control turned off"
    c语言里如何调用汇编里的变量?
    leetcode516 Longest Palindromic Subsequence
    leetcode523 Continuous Subarray Sum
    leetcode650 2 Keys Keyboard
  • 原文地址:https://www.cnblogs.com/Dev0ps/p/10778328.html
Copyright © 2011-2022 走看看