Kubernetes - 标签和选择器

标签

标签是附加到 pod、复制控制器和服务的键值对。 它们被用作识别对象的属性,例如 pod 和复制控制器。 它们可以在创建时添加到对象中,也可以在运行时添加或修改。


选择器

标签不提供唯一性。 一般来说,我们可以说许多对象可以带有相同的标签。 标签选择器是 Kubernetes 中的核心分组原语。 用户使用它们来选择一组对象。

Kubernetes API 目前支持两种类型的选择器 −

  • 基于等式的选择器
  • 基于集合的选择器

基于等式的选择器

它们允许按键和值进行过滤。 匹配对象应满足所有指定的标签。

基于集合的选择器

基于集合的选择器允许根据一组值过滤键。

apiVersion: v1
kind: Service
metadata:
   name: sp-neo4j-standalone
spec:
   ports:
      - port: 7474
      name: neo4j
   type: NodePort
   selector:
      app: salesplatform ---------> 1
      component: neo4j -----------> 2

在上面的代码中,我们使用标签选择器作为app: salesplatform,组件作为component: neo4j

一旦我们使用 kubectl 命令运行该文件,它将创建一个名为 sp-neo4j-standalone 的服务,该服务将在端口 7474 上进行通信。类型是 NodePort 新标签选择器为 app: salesplatformcomponent: neo4j