--- title: 注解 content_template: templates/concept weight: 50 --- {{% capture overview %}} 你可以使用 Kubernetes 注解为对象附加任意的非标识的元数据。客户端程序(例如工具和库)能够获取这些元数据信息。 {{% /capture %}} {{% capture body %}} ## 为对象附加元数据 您可以使用标签或注解将元数据附加到 Kubernetes 对象。标签可以用来选择对象和查找满足某些条件的对象集合。 相反,注解不用于标识和选择对象。 注解中的元数据,可以很小,也可以很大,可以是结构化的,也可以是非结构化的,能够包含标签不允许的字符。 注解和标签一样,是键/值对: ```json "metadata": { "annotations": { "key1" : "value1", "key2" : "value2" } } ``` 以下是一些例子,用来说明哪些信息可以使用注解来记录: * 由声明性配置所管理的字段。 将这些字段附加为注解,能够将它们与客户端或服务端设置的默认值、自动生成的字段以及通过自动调整大小或自动伸缩系统设置的字段区分开来。 * 构建、发布或镜像信息(如时间戳、发布 ID、Git 分支、PR 数量、镜像哈希、仓库地址)。 * 指向日志记录、监控、分析或审计仓库的指针。 * 可用于调试目的的客户端库或工具信息:例如,名称、版本和构建信息。 * 用户或者工具/系统的来源信息,例如来自其他生态系统组件的相关对象的 URL。 * 推出的轻量级工具的元数据信息:例如,配置或检查点。 * 负责人员的电话或呼机号码,或指定在何处可以找到该信息的目录条目,如团队网站。 您可以将这类信息存储在外部数据库或目录中而不使用注解,但这样做就使得开发人员很难生成用于部署、管理、自检的客户端共享库和工具。 {{% /capture %}} {{% capture whatsnext %}} 进一步了解[标签和选择器](/docs/concepts/overview/working-with-objects/labels/)。 {{% /capture %}}