Kubernetes 官方文档
  • 前言
  • 词汇表
  • 概念
    • 概述
      • 组件
      • 对象
        • 理解 Kubernetes 对象
        • 管理 Kubernetes 对象
        • 对象名称和 ID
        • 标签(Label)和选择算符(Selector)
        • 命名空间(Namespace)
        • 注解(Annotation)
        • 字段选择器
        • Finalizers
        • 属主与附属
    • 架构
      • 节点
    • 工作负载
      • 工作负载资源
        • Job
    • 服务、负载均衡和网络
      • 服务
        • 服务定义
        • 无头服务(Headless Service)
        • 发布服务
    • 配置
      • 配置最佳实践
    • 策略
      • 资源配额
    • 调度、抢占和驱逐
      • Kubernetes 调度器
    • 集群管理
      • 证书
      • 管理资源
        • 组织资源配置
        • kubectl 中的批量操作
        • 有效地使用标签
        • 金丝雀部署
        • 更新标签
      • 集群网络系统
  • 任务
    • 管理集群
      • 手动生成证书
    • 运行应用
      • Pod 水平自动扩缩容
        • HPA 是如何工作的?
      • HPA 演练
        • 创建 HPA
        • 附录
    • TLS
      • 管理集群中的 TLS 认证
  • 参考
    • API 访问控制
      • 使用 RBAC 鉴权
        • API 对象
        • 默认 Roles 和 Role Bindings
        • 初始化与预防权限提升
        • 命令行工具
        • ServiceAccount 权限
        • EndpointSlices 和 Endpoints 写权限
        • 从 ABAC 升级
    • 组件工具
      • kube-scheduler
    • 调度
      • 调度器配置
      • 调度策略
    • 网络参数
      • Service 所用的协议
      • 虚拟 IP 和服务代理
    • 命令行工具 (kubectl)
  • 博客
    • 移除 Dockershim 的常见问题
由 GitBook 提供支持
在本页
  • 名称
  • DNS 子域名
  • RFC 1123 标签名
  • RFC 1035 标签名
  • 路径分段名称
  • UIDs

这有帮助吗?

在GitHub上编辑
  1. 概念
  2. 概述
  3. 对象

对象名称和 ID

上一页管理 Kubernetes 对象下一页标签(Label)和选择算符(Selector)

最后更新于2年前

这有帮助吗?

集群中每一个对象都有一个 名称 来标识在同类资源中的唯一性。

每个 Kubernetes 对象也有一个 UID 来标识在整个集群中的唯一性。

例如:

在同一个命名空间中只能一个名为 myapp-1234 的 Pod,但是却仍可以创建一个同样名为 myapp-1234 的 Deployment。

对于用户提供的非唯一性的属性,Kubernetes 提供了 标签(Lables) 和 注解(Annotation) 机制。

名称

客户端提供的字符串,引用资源 url 中的对象,如 /api/v1/pods/some name。

某一时刻,只能有一个给定类型的对象具有给定的名称。但是,删除对象后则可以创建同名的新对象。

说明:

当对象所代表的是一个物理实体(例如,代表一台物理主机的 Node)时,如果在 Node 对象未被删除并重建的条件下,重新创建了同名的物理主机,则 Kubernetes 会将新的主机看做老的主机,可能会带来某种不一致性。

以下是四种常见的资源命名约束。

DNS 子域名

大多数资源类型需要可以 用作 DNS 子域名的名称。DNS 子域名定义可参考 。命名必须满足如下规则:

  • 不能超过 253 个字符

  • 只能包含小写字母、数字,以及 "-" 和 "."

  • 必须以字母或数字开头

  • 必须以字母或数字结尾

RFC 1123 标签名

  • 最多 63 个字符

  • 只能包含小写字母、数字,以及 "-" 和 "."

  • 必须以字母或数字开头

  • 必须以字母或数字结尾

RFC 1035 标签名

  • 最多 63 个字符

  • 只能包含小写字母、数字,以及 "-" 和 "."

  • 必须以字母开头

  • 必须以字母或数字结尾

路径分段名称

某些资源类型要求名称能被安全地用作路径中的片段。换句话说,其名称不能是 .、..,也不能包含 / 或 % 字符。

下面是一个 Pod 配置清单示例:

apiVersion: v1
kind: Pod
metadata:
  name: nginx-demo
spec:
  containers:
  - name: nginx
    image: nginx:1.20.1
    ports:
    - containerPort: 80

说明:某些资源类型可能具有额外的命名约束

UIDs

Kubernetes 系统生成的字符串,唯一标识对象。

在 Kubernetes 集群的整个生命周期中创建的每个对象都有一个不同的 uid,它旨在区分类似实体的历史事件。

Kubernetes UIDs 是全局唯一标识符(也叫 UUID)。UUID 是标准化的,见 ISO/IEC 9834-8 和 ITU-T X.667 。

某些资源类型需要其名称遵循 所定义的 DNS 标签标准。命名必须满足如下规则:

某些资源类型需要其名称遵循 所定义的 DNS 标签标准。命名必须满足如下规则:

RFC 1123
RFC 1123
RFC 1035