ValidatingWebhookConfiguration namespaceselector MatchExpressions示例
时间: 2023-07-07 22:37:06 浏览: 35
以下是一个示例,演示了如何在 ValidatingWebhookConfiguration 中使用 namespaceSelector 的 MatchExpressions 字段。
假设我们有三个命名空间:namespace1、namespace2 和 namespace3。我们希望验证 Webhook 只处理具有标签 app=example 的命名空间。我们可以使用以下 YAML 配置文件:
```
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
metadata:
name: example-webhook
webhooks:
- name: example.validator.com
namespaceSelector:
matchExpressions:
- key: app
operator: In
values:
- example
rules:
- apiGroups: [""]
apiVersions: ["v1"]
operations: ["CREATE", "UPDATE"]
resources: ["pods"]
failurePolicy: Fail
```
在这个示例中,我们使用 `namespaceSelector` 指定了 `MatchExpressions` 字段,表示我们将使用标签选择器来选择要处理的命名空间。`key` 指定了我们要选择的标签名称,`operator` 指定了匹配模式,`values` 指定了我们要匹配的标签值。在这个示例中,我们使用了 `In` 操作符,表示只要命名空间中的 `app` 标签的值为 `example` 中的任何一个,就会被选择。
当 `namespaceSelector` 中的 `MatchExpressions` 字段定义为上述示例中的方式时,只有具有标签 app=example 的命名空间中的资源才会被 ValidatingWebhookConfiguration 处理。