Kubernetes 支持在一个物理集群中创建多个虚拟集群以支持跨团队跨项目的使用场景,这种虚拟集群被称为命名空间。更多详细介绍参见:Kubernetes 官网文档。
按照创建方式,可以将集群中的命名空间分为两类,包括:系统命名空间、用户自建命名空间。
命名空间名称 | 说明 |
---|---|
default | 所有未指定 Namespace 的对象都会被分配在 default 命名空间。 |
kube-public | 此命名空间下的资源可以被所有人访问(包括未认证用户),用来部署公共插件、容器模板等。 |
kube-system | 所有由 Kubernetes 系统创建的资源都处于这个命名空间。 |
kube-node-lease | 用于与各个节点相关的租约(Lease)对象。 节点租期允许 kubelet 发送心跳,由此控制平面能够检测到节点故障。 |
配置项 | 说明 |
---|---|
名称 | 自定义命名空间名称,同一个集群中不允许重名。命名规则:长度 1-63 个字符;由小写字母、连字符、数字组成并以字母、数字开头和结尾;不能以kube- 开头。 |
标签 | 对应 Kubernetes 中的 Lable,用于识别命名空间的键值对,配合选择器,帮助 Kubernetes 快速筛选目标命名空间。 |
注解 | 对应 Kubernetes 中的 Annotation,主要记录用于应用部署、安全策略、调度策略的附加信息,不用于标识和区分资源。 |
对应 Kubernetes 中的 ResourceQuota,用于多团队或多用户的共享集群资源场景下,限制团队、用户可以使用的资源总量,包括限制命名空间下创建某一类型对象(容器、服务)的数量以及消耗计算资源(CPU、内存)的总量。
说明
若您通过 kubectl 或者 Kubernetes 原生 API 方式设置资源配额(即不通过上述控制台配置方法)时,请确保 ResourceQuota 名称和 NameSpace 名称相同,否则控制台上的 查看详情 处无法正常显示资源配额详情。
...
中的 设置资源配额,按需配置该命名空间的资源配额,完成后单击 确定。名称 | 描述 |
---|---|
CPU 请求 | 指定本命名空间所有 running 或 waiting 状态 Pod 的 CPU 请求总和的上限。 |
内存请求 | 指定本命名空间所有 running 或 waiting 状态 Pod 的内存请求总和的上限。 |
CPU 上限 | 指定本命名空间所有 running 或 waiting 状态 Pod 的 CPU 总和的上限。 |
内存上限 | 指定本命名空间所有 running 或 waiting 状态 Pod 的内存总和的上限。 |
存储请求总量 | 指定本命名空间中所有 PVC 的存储资源需求总量的上限。 |
存储卷声明数量 | 指定本命名空间所允许的 PVC 总数的上限。 |
容器组数量 | 指定本命名空间所允许的 running 或 waiting 状态 Pod 总数上限。 |
保密字典数量 | 指定本命名空间所允许的 Secret 总数上限。 |
配置项数量 | 指定本命名空间允许的 ConfigMap 总数的上限。 |
服务数量 | 指定本命名空间所允许的 Service 总数上限。 |
对应 Kubernetes 中的 LimitRange,资源使用限制有利于资源的合理分配和管理,提高集群资源的利用率和可用性。
...
中的 设置资源限制,按需配置该命名空间的资源限制,完成后单击 确定。说明
名称 | 描述 |
---|---|
默认 CPU 请求 | 容器没有声明 CPU 限制的情况下,本命名空间中每个容器执行请求占用 CPU 的最小值。 |
默认 CPU 上限 | 容器没有声明 CPU 限制的情况下,本命名空间中每个容器执行请求占用 CPU 的最大值。 |
默认内存请求 | 容器没有声明内存限制的情况下,本命名空间中每个容器执行请求占用内存的最小值。 |
默认内存上限 | 容器没有声明内存限制的情况下,本命名空间中每个容器执行请求占用内存的最大值。 |
最小 CPU | 设置容器最小 CPU 使用量。设置后,默认 CPU 请求、默认 CPU 上限需大于等于最小 CPU,且不可为空。 |
最大 CPU | 设置容器最大 CPU 使用量。设置后,默认 CPU 请求、默认 CPU 上限需小于等于最大 CPU,且不可为空。 |
最小内存 | 设置容器最小内存使用量。设置后,默认内存请求、默认内存上限需大于等于最小内存,且不可为空。 |
最大内存 | 设置容器最大内存使用量。设置后,默认内存请求、默认内存上限需小于等于最大内存,且不可为空。 |
最大 CPU | Pod 最大 CPU 使用量。 |
最大内存 | Pod 最大内存使用量。 |
最小存储请求 | PVC 最小存储使用量。 |
最大存储请求 | PVC 最大存储使用量。 |
命名空间创建完成后,将返回资源管理页面。单击资源列表顶部操作按钮或右侧操作列...
中的操作按钮,可执行对应管理操作。详细说明如下:
操作 | 说明 |
---|---|
使用 Yaml 创建 | 使用 Yaml 创建资源,推荐直接粘贴已经根据业务需求配置的 Yaml 内容。相较于使用控制台创建资源,使用 Yaml 方式支持的参数更全面。 |
更新 | 通过控制台方式更新命名空间配置。 |
编辑 Yaml | 编辑已经创建命名空间的文件,更新配置信息。 |
设置资源配额 | 自定义设置命名空间的资源配额,对应 Kubernetes 中的 ResourceQuota。资源配额用于多团队或多用户的共享集群资源场景下,限制团队、用户可以使用的资源总量,包括限制命名空间下创建某一类型对象(容器、服务)的数量以及消耗计算资源(CPU、内存)的总量。 |
设置资源限制 | 自定义设置命名空间的资源限制,对应 Kubernetes 中的 LimitRange。资源使用限制有利于资源的合理分配和管理,提高集群资源的利用率和可用性。 |
删除 | 删除目标工作负载。 注意 删除命名空间将会同步销毁该命名空间下的所有资源,操作不可逆,请谨慎操作。 |
创建命名空间的 Yaml 测试示例如下,具体参数和配置以实际使用场景中各云厂商的定义为准。
apiVersion: v1 kind: Namespace metadata: name: users-namespace # adjust name for your namepsace