k8s basis
k8s-basis
这里记录一些基础的, 个人容易遗忘的零散知识点:
label&annotation的区别:
- label: 可以用于表达式等匹配(selector)
- annotation: 只能作为一个附加的标签.
annotations没有像labels那样的大小限制,因此可以存储更长的数据,包括多行文本。
实际样例:
- Labels 示例:
- 将一个
labelenvironment: production添加到生产环境的所有资源上,以便可以通过该label查询所有生产环境资源。 - 使用
labels来表示一个 Pod 是属于前端还是后端分层,比如tier: frontend或tier: backend。
- 将一个
- Annotations 示例:
- 存储描述性信息,如说明、发布信息或联系信息,例如
kubernetes.io/description: "This service routes traffic to front-end pods." - 在构建或部署流程中,使用
annotations存储版本控制系统的提交信息,构建服务器的信息,或者跟踪工具的信息。
- 存储描述性信息,如说明、发布信息或联系信息,例如
总结来说,labels 是用于快速、有效地组织和选择资源的,而 annotations 是用来存储额外的、可能被客户端工具使用的信息。在设计 Kubernetes 资源时,应根据实际需要恰当地使用这两种机制。