Kubernetes对象-推荐使用的标签
Kubernetes 推荐使用的标签
除了 kubectl 和 dashboard,还可以使用其他更多的工具来可视化和管理 Kubernetes 对象。一组通用的标签能够提高工具间的互操作性,所有工具都能以可理解的通用方式描述对象。
除了支持工具之外,推荐的标签还以可查询的方式描述应用程序。
元数据是围绕应用程序的概念组织的。Kubernetes 不是平台即服务 (PaaS),没有或强制执行应用程序的正式概念。相反,应用程序是非正式的,使用元数据进行描述。应用程序包含的内容的定义是松散的。
这些是推荐的标签。它们使管理应用程序变得更加容易,但对于任何核心工具都不是必需的。
共享标签和注释共享一个通用前缀:app.kubernetes.io
。没有前缀的标签是用户专用的。shared 前缀可确保共享标签不会干扰自定义用户标签。
标签
为了充分利用这些标签,应在每个资源对象上都使用它们。
Key | 描述 | 示例 | 类型 |
---|---|---|---|
app.kubernetes.io/name | 应用程序的名称 | mysql | string |
app.kubernetes.io/instance | 标识应用程序实例的唯一名称 | mysql-abcxyz | string |
app.kubernetes.io/version | 应用程序的当前版本(例如,SemVer 1.0、修订哈希等) | 5.7.21 | string |
app.kubernetes.io/component | 架构中的组件 | database | string |
app.kubernetes.io/part-of | 此应用程序所属的更高级别应用程序的名称 | mysql | wordpress |
app.kubernetes.io/managed-by | 用于管理应用程序操作的工具 | Helm | string |
为了在实际应用中说明这些标签,可参考以下 StatefulSet 对象:
# This is an excerpt
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels