AI 助教问 AI 助教
东方瑞通 · CKA

Label与标签选择器

Label 是附加在对象上的键值对元数据,Label Selector 依据标签筛选对象,是控制器与 Service 关联 Pod 的核心机制。

考点精讲

  1. Label 是附加在 Kubernetes 对象上的键值对(key: value),用于标识和归类对象;Label Selector 则依据标签来筛选对象,是控制器与 Service 关联后端 Pod 的核心机制。选择器分两种:等值选择器(=、==、!=)和集合选择器(in、notin、exists)。Service 通过 selector 匹配后端 Pod,Deployment 通过 selector 关联 ReplicaSet,ReplicaSet 再通过 selector 管理 Pod。日常筛选可用 kubectl get pods -l app=nginx。理解了「标签是贴纸、选择器是按贴纸找人」这个比喻,就能明白为什么 Service 的 selector 和 Pod 的 label 必须严格匹配,否则服务无法访问。

记忆技巧

标签是贴纸,选择器是按贴纸找人
等值用 =,集合用 in

常见误区

  • Service 的 selector 与 Pod 的 label 不匹配导致无法访问
  • 用错选择器语法(= 与 == 可混用但建议统一)
  • 标签不唯一导致选择器误选多个对象

真题思路

  • 【示例】本页题目为教学模拟题,非真题,仅用于讲解答题思路 Service 的 selector 与后端 Pod 的 label 不匹配时,最可能出现的现象是?
    Service 仍能正常访问但延迟变高 Service 的 endpoints 为空,无法转发流量 Pod 无法被创建 节点自动重启
    答案:B
    解析:selector 匹配不到任何 Pod 时,Service 的 endpoints 为空,流量无法转发到后端;Pod 创建与节点重启与此无关。

常见问题

Q:等值选择器和集合选择器怎么用

A:等值用 =、==、!=,集合用 in、notin、exists。

Q:Service 访问不通先查什么

A:先查 Service 的 selector 与后端 Pod 的 label 是否匹配,以及 endpoints 是否为空。

Q:怎么按标签筛选 Pod

A:kubectl get pods -l 标签键=标签值。

相关知识

教材出处:第7章 Label与标签选择器 Label与标签选择器

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑