Kubernetes 中的标签选择器、注解与服务发现
1. 标签选择器在 API 对象中的使用
当 Kubernetes 对象引用一组其他 Kubernetes 对象时,会使用标签选择器。它不是上一节中描述的简单字符串,而是使用解析后的结构。由于历史原因(Kubernetes 不破坏 API 兼容性),标签选择器有两种形式,大多数对象支持更新、更强大的选择器操作符集合。
例如,选择器 app=alpaca,ver in (1, 2) 会转换为以下形式:
selector:
matchLabels:
app: alpaca
matchExpressions:
- {key: ver, operator: In, values: [1, 2]}
这是紧凑的 YAML 语法, matchExpressions 列表中的一个项是一个包含三个条目的映射,最后一个条目 values 的值是一个包含两个项的列表。所有项按逻辑与进行计算, != 操作符需转换为包含单个值的 NotIn 表达式来表示。
较旧的选择器指定形式(用于 ReplicationControllers 和服务)仅支持 = 操作符,是一组简单的键值对,目标对象必须全部匹配这些键值对才能被选中。例如,选择器 app=alpaca,ver=1 表示如下:
超级会员免费看
订阅专栏 解锁全文
51

被折叠的 条评论
为什么被折叠?



