# io.k8s.api.core.v1.NodeSelectorRequirement

From **Kubernetes**.

A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

- Type: `object`

## Properties

### `key`

- Required: true
- Type: `string`

The label key that the selector applies to.

### `operator`

- Required: true
- Type: `string`

Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.

### `values`

- Required: false
- Type: `array`

An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.

## JSON Schema

```json
{"description":"A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.","properties":{"key":{"default":"","description":"The label key that the selector applies to.","type":"string"},"operator":{"default":"","description":"Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.","type":"string"},"values":{"description":"An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch.","items":{"type":"string"},"type":"array","x-kubernetes-list-type":"atomic"}},"required":["key","operator"],"type":"object"}
```
