Annotation 和 Label 很像,初学者会经常混淆。两者的相似之处包括,都使用了 KV 键值对的形式来定义。不同之处在于 Label 是有严格的命名规则的,Label 也定义了 Kubernetes 对象的元数据 Metadata,并且可以用于 Label Selector。而 Annotation 则是用户任意定义的附加信息,可以方便外部工具进行查找。
一般上 Annotation 会记录?的这些信息:
- build/release/Docker image 信息,比如时间戳,release id,PR number,image hash value,docker registry site 等。
- 日志/监控/分析库等资源库的地址信息。
- 程序调试工具信息等等。
总而言之,Annotation 比较宽松,用户可以自定义的添加。