更新时间:2024-11-08 GMT+08:00

使用模板时的API资源限制

资源

限制项

说明

推荐替代方案

namespaces

-

支持

为安全起见,Autopilot 不允许在系统管理的命名空间(如 kube-system)中部署工作负载,不可进行任何资源的创建、修改、删除、exec等。

nodes

-

支持

只支持查询,不支持增删改功能

persistentvolumeclaims

-

支持

-

persistentvolumes

-

支持

-

pods

HostPath

限制挂载本地宿主机文件到容器中

使用emptyDir或云存储

HostNetwork

限制将宿主机端口映射到容器上

使用type=LoadBalancer的负载均衡

HostPID

限制容器可见宿主机PID空间

用户不感知节点,无需使用

HostIPC

限制容器进程和宿主机进程间通信

用户不感知节点,无需使用

NodeName

限制Pod调度到特定节点

用户不感知节点,无需使用

特权容器

不支持

-

Linux capabilities

支持"SETPCAP", "MKNOD", "AUDIT_WRITE", "CHOWN", "DAC_OVERRIDE", "FOWNER", "FSETID", "KILL", "SETGID", "SETUID", "NET_BIND_SERVICE", "SYS_CHROOT", "SETFCAP", "SYS_PTRACE"

可以通过SecurityContext设置开启NET_RAW 、SYS_PTRACE 、NET_ADMIN

使用允许值

调度的节点亲和与打散规则

限制将Pod调度到指定节点或者具有某些标签的节点上,或者将一批Pod打散到具有某些标签的节点上。

Autopilot集群中应用指定节点亲和性或nodeSelector字段不生效。

  • 无需指定节点调度,但可以指定Pod到某一个可用区
  • 可以将一批Pod打散到多个可用区

Pod间亲和与反亲和配置

不生效

无需配置

allowPrivilegeEscalation是否允许特权升级

不支持

使用默认配置

RuntimeClassName

无需配置,上层应用(Pod除外)指定RuntimeClassName时后端将自动修改为系统默认支持的runc

无需配置

时区同步(会挂载主机/etc/localtime)

不支持

使用默认配置

serviceaccounts

-

不支持修改系统配置、不允许绑定系统角色

使用默认配置

services

-

限制nodeport,ELB只支持独享型

使用type=LoadBalancer的负载均衡

daemonsets

apps

限制使用Daemonset类workload

通过Sidecar形式在Pod中部署多个镜像

deployments

apps

支持,其中限制使用的字段与Pod一致

使用允许值

replicasets

apps

支持,其中限制使用的字段与Pod一致

使用允许值

statefulsets

apps

支持,其中限制使用的字段与Pod一致

使用允许值

cronjobs

batch

支持,其中限制使用的字段与Pod一致

使用允许值

jobs

batch

支持,其中限制使用的字段与Pod一致

使用允许值

clusterrolebindings

rbac.authorization.k8s.io

支持,限制绑定系统组与系统用户,cce-service组

使用允许值

rolebindings

rbac.authorization.k8s.io

支持,限制绑定系统组与系统用户,cce-service组

使用允许值

storageclasses

storage.k8s.io

不支持创建obs、evs类型的storageclass;其他功能支持

使用允许值