理解pod标签与注解



我试图理解pod和annotation之间的区别。

标准文档说注释捕获"非标识信息"。在标签上,可以应用选择器。标签用于组织kubernetes集群中的对象。

如果是这样的话,为什么我们在不同的设置中使用pod注解而不是标签呢? https://istio.io/latest/docs/reference/config/annotations/

标签不是一个好方法吗?

如果istio开发人员选择使用注释,我只是想了解注释提供了什么优势。

作为Burak答案的延伸,

Kubernetes标签和注释都是添加元数据的方式Kubernetes对象。然而,相似之处就到此为止了。Kubernetes标签允许你识别、选择和操作Kubernetes对象。注释是非标识性的元数据,不做上述任何一项的东西。

标签主要用于附加诸如POD、Replica set等资源,也用于路由流量和路由部署到服务等。

标签被存储在ETCD数据库中,因此您可以使用它进行搜索。

注释主要用于存储元数据和配置。

元数据,如:车主详细信息,最后一个头盔释放如果使用头盔,侧车注入

您可以在标签中存储所有者的详细信息,K8s使用标签用于从服务到部署的流量路由和标签应该是相同的在这两个资源(部署和;服务)路由流量。

在这种情况下如何匹配资源的标签?在所有部署中使用相同的服务所有者名称服务吗?当您运行由diff团队和服务所有者管理的多个分布式服务时。

如果你注意到istio的一些注释只是为了存储元数据,如:install.operator.istio.io/chart-owner,install.operator.istio.io/owner-generation

阅读更多:https://istio.io/latest/docs/reference/config/annotations/

你还应该检查一次标签和注释的语法。

最新更新