kubernetes deployment标签选择

参考 http://kubernetes.io/docs/api-reference/extensions/v1beta1/definitions/#_v1beta1_labelselector

  Deployment LabelSelector分为两种,matchLabelsmatchExpressions

matchLabels

  一组{key,pair}的map形式,如

1
2
3
matchLabels:
a: b
c: d

  就是代表有两个标签,a和c,值分别是b和d

matchExpressions

  一组label selector,如

1
2
matchExpressions:
- {key: a, operator: In, values: [b]}

  代表标签为a,值为b,操作符是In代表“或”运算,operator共有四种In,NotIn(不属于), Exists (存在一个条件)andDoesNotExist(不存在).


  值得注意的是,在deployment的yaml文件中,matchLabels和matchExpressions可以同时存在,并且是AND的关系