Kubernetes Annotation(注解)

原创
半兽人 发表于: 2018-11-20   最后更新时间: 2021-11-18 16:05:02  
{{totalSubscript}} 订阅, 10,365 游览

你可以使用 Kubernetes Annotation(注解)为对象附加任意的非标识的元数据自定义信息。

Annotation与Label类似,也使用key/value键值对的形式进行定义。不同的是Label具有严格的命名规则,Label定义的是Kubernetes对象的元数据(Metadata),并且用于Label Selector(标签选择器)。而Annotation(注解)则是用户任意定义的“附加”信息,便于用户自行的一些查找行为。

注解和标签一样,是键/值对的:

"metadata": {
  "annotations": {
    "key1" : "value1",
    "key2" : "value2"
  }
}

说明:
Map 中的键和值必须是字符串。也就是说,你不能使用数字、布尔值、列表或其他类型的键或值。

以下是一些例子,用来说明哪些信息可以使用注解来记录:

  • build信息、release信息、Docker镜像信息等,例如时间戳、release id号、PR号、镜像hash值、docker registry地址等。
  • 日志库、监控库、分析库等资源库的地址信息。
  • 程序调试工具信息,例如工具、版本号等。
  • 团队等联系信息,例如电话号码、负责人名称、网址等。

例如,下面是一个 Pod 的配置文件,其注解中包含 imageregistry: https://www.orchome.com/

apiVersion: v1
kind: Pod
metadata:
  name: annotations-demo
  annotations:
    imageregistry: "https://www.orchome.com/"
spec:
  containers:
  - name: nginx
    image: nginx:1.7.9
    ports:
    - containerPort: 80
更新于 2021-11-18

查看kubernetes更多相关的文章或提一个关于kubernetes的问题,也可以与我们一起分享文章