EndpointSlice

An EndpointSlice represents a subset of the endpoints that implement a Service. For a given Service, multiple EndpointSlices may exist, and together they represent all the pods selected by the Service. The kubernetes.io/service-name label links slices to their Service.

Container OrchestrationKubernetesLoad BalancingNetworkingService Discovery

Properties

Name Type Description
apiVersion string
kind string
metadata object
addressType string Address type of endpoints in this slice. All endpoints in a single slice must share the same address type.
endpoints array List of unique endpoints in this slice. Up to 1000 endpoints per slice.
ports array Network ports exposed by each endpoint in the slice.
View JSON Schema on GitHub

JSON Schema

kubernetes-services-endpointslice-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/EndpointSlice",
  "title": "EndpointSlice",
  "type": "object",
  "description": "An EndpointSlice represents a subset of the endpoints that implement a Service. For a given Service, multiple EndpointSlices may exist, and together they represent all the pods selected by the Service. The kubernetes.io/service-name label links slices to their Service.",
  "required": [
    "addressType",
    "endpoints"
  ],
  "properties": {
    "apiVersion": {
      "type": "string",
      "const": "discovery.k8s.io/v1"
    },
    "kind": {
      "type": "string",
      "const": "EndpointSlice"
    },
    "metadata": {
      "$ref": "#/components/schemas/ObjectMeta"
    },
    "addressType": {
      "type": "string",
      "enum": [
        "IPv4",
        "IPv6"
      ],
      "description": "Address type of endpoints in this slice. All endpoints in a single slice must share the same address type."
    },
    "endpoints": {
      "type": "array",
      "description": "List of unique endpoints in this slice. Up to 1000 endpoints per slice.",
      "maxItems": 1000,
      "items": {
        "$ref": "#/components/schemas/Endpoint"
      }
    },
    "ports": {
      "type": "array",
      "description": "Network ports exposed by each endpoint in the slice.",
      "maxItems": 100,
      "items": {
        "$ref": "#/components/schemas/EndpointPort"
      }
    }
  }
}