Kubernetes标签推荐写法示例参考

运维有笔谈 2024-04-04 06:16:34

在 Kubernetes 中,标签(Labels)是用于组织和筛选集群资源的标准键值对。它们可以帮助用户按类别和特性对Pods、Deployments、Services、Nodes等资源进行分类和筛选。

标签可以是一种可以查询的方式描述了应用程序。所以建议有一个比较通用的标签命名规范,以下标签推荐是来自官网。

https://kubernetes.io/zh-cn/docs/concepts/overview/working-with-objects/common-labels/

# 官方推荐标签示例apiVersion: apps/v1kind: StatefulSetmetadata: labels: app.kubernetes.io/name: mysql app.kubernetes.io/instance: mysql-abcxzy app.kubernetes.io/version: "5.7.21" app.kubernetes.io/component: database app.kubernetes.io/part-of: wordpress app.kubernetes.io/managed-by: helm

以下是一些标签的示例参考,抛砖引玉。

1.应用的基本信息

labels: app.kubernetes.io/name: <应用名> app.kubernetes.io/instance: <应用实例名> app.kubernetes.io/version: <应用版本>

2 应用所在的项目

labels: app.kubernetes.io/part-of: <项目名> app.kubernetes.io/component: <组件名或者模块如backend>

3 环境和阶段信息

labels: environment: <开发|测试|预发布|生产> stage: <dev|test|staging|production>

4 节点

labels: tier: <应用架构位置> node.kubernetes.io/role: <比如web节点,还是后台服务节点> nodepool: <节点池名> failure-domain.beta.kubernetes.io/zone: <可用区或故障域> topology.kubernetes.io/region: <地理区域>

5 自定义标签来表达额外的业务含义

labels: owner: <团队或负责人> cost-center: <成本中心>

在实际应用中,我们可以结合实际的业务需求,灵活运用这些标签组合。同时,为了更好的维护和理解资源,建议在创建资源时遵循一定的标签命名规范。

0 阅读:6

运维有笔谈

简介:感谢大家的关注