--- api_metadata: apiVersion: "" import: "k8s.io/apimachinery/pkg/apis/meta/v1" kind: "LabelSelector" content_type: "api_reference" description: "标签选择器是对一组资源的标签查询。" title: "LabelSelector" weight: 2 --- `import "k8s.io/apimachinery/pkg/apis/meta/v1"` 标签选择器是对一组资源的标签查询。 `matchLabels` 和 `matchExpressions` 的结果按逻辑与的关系组合。 一个 `empty` 标签选择器匹配所有对象。一个 `null` 标签选择器不匹配任何对象。
- **matchExpressions** ([]LabelSelectorRequirement) `matchExpressions` 是标签选择器要求的列表,这些要求的结果按逻辑与的关系来计算。 **标签选择器要求是包含值、键和关联键和值的运算符的选择器。** - **matchExpressions.key** (string),必需 `key` 是选择器应用的标签键。 - **matchExpressions.operator** (string),必需 `operator` 表示键与一组值的关系。有效的运算符包括 `In`、`NotIn`、`Exists` 和 `DoesNotExist`。 - **matchExpressions.values** ([]string) `values` 是一个字符串值数组。如果运算符为 `In` 或 `NotIn`,则 `values` 数组必须为非空。 如果运算符是 `Exists` 或 `DoesNotExist`,则 `values` 数组必须为空。 该数组在策略性合并补丁(Strategic Merge Patch)期间被替换。 - **matchLabels** (map[string]string) `matchLabels` 是 {`key`,`value`} 键值对的映射。 `matchLabels` 映射中的单个 {`key`,`value`} 键值对相当于 `matchExpressions` 的一个元素, 其键字段为 `key`,运算符为 `In`,`values` 数组仅包含 `value`。 所表达的需求最终要按逻辑与的关系组合。