Kubernetes 对象标识详解:Name、UID、Label

Kubernetes 对象标识详解:Name、UID、Label

📌 前言

在 Kubernetes 中,每个对象都需要被唯一标识。Kubernetes REST API 使用 NameUID 来明确标识对象,同时提供 LabelsAnnotations 用于非唯一的用户自定义属性。

本文将帮你理清这三者的区别与用法。


一、三种标识方式对比

标识方式 特点 谁生成 主要用途
Name 同一时间唯一,可重复使用 用户定义 API URL 中引用对象
UID 整个集群生命周期内全局唯一 K8s 自动生成 区分不同时间创建的同名对象
Labels 非唯一,键值对 用户定义 筛选、分组、选择器
Annotations 非唯一,键值对 用户定义 附加元数据(非筛选用途)

二、Name(名称)

定义

Name 是用户在创建对象时赋予的唯一标识符

特性

  • 唯一性约束:同一类型对象中,同一时间只能有一个相同的 Name
  • 可复用:对象被删除后,可以用相同的 Name 创建新对象
  • 用途:在 API URL 中引用对象

URL 示例

/api/v1/pods/some-name

text

命名规则

  • 最长 253 个字符
  • 允许字符:数字、-.
  • ⚠️ 某些资源可能有更具体的限制

示例

yaml 复制代码
metadata:
  name: nginx-pod  # 这就是 Name

速记口诀

  • Name 用户起,同一时间不能重
  • 删了还能再用上,URL 里面显神通
  • UID 自动生,一生一次永不同
  • Label 和 Annotation,筛选标记随便用
相关推荐
milo.qu3 小时前
RockyLinux9.7 docker部署Jisti Meet
linux·docker·容器
梦想与想象-广州大智汇5 小时前
自建docker加速镜像,使用 Cloudflare Workers/Pages 部署加速教程
运维·docker·容器
AI攻城狮8 小时前
为什么主流大厂 LLM 必须亲自下场做 Harness CLI:从 DeepSeek TUI 说开去
云原生
阿里云云原生9 小时前
阿里云 AI 网关支持 DeepSeek V4
云原生
阿里云云原生9 小时前
从可观测到可理解:用 UModel 构建 Agent 原生的代码知识图谱
云原生
阿里云云原生10 小时前
OpenClaw、Hermes合用?来自500+社区互动的真实看法
云原生
AI攻城狮13 小时前
开源工具也有山寨陷阱:一个假 Hermes Agent 网站如何收割不明真相的用户
云原生
阿里云云原生13 小时前
人机共跑半马,赛场之外的具身智能规模化运维大考
云原生
宁静@星空14 小时前
007-Docker构建 jar 包成镜像
docker·容器·jar
A-刘晨阳15 小时前
K8s之负载均衡
linux·运维·容器·kubernetes·负载均衡